• Есть ли ресурсы по общему изучению теории бэкэнда?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Во-первых, начните вот отсюда: https://roadmap.sh/backend А во вторых: без практики теория бесполезна - поэтому найдите себе проект и начните применять полученные знания на практике.
    Ответ написан
    2 комментария
  • Как восстановить конкретную папку на btrfs если нет снапшотов?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    восстановить конкретную папку на btrfs ... нет снэпшотов ... Сижу из под другой системы, которая даже о btrfs ничего не знает.

    Если Windows (оптимальный выбор для вашей задачи), то пробуйте Klennet Recovery и UFS Explorer (последний есть и под другие ОС, но лучше Винда). Вряд ли какие-либо другие инструменты найдут больше.

    Понятно, что если Виндоус предложит инициализацию, форматирование, и т.п. диска-пациента, то надо отказываться - записывать на него ничего нельзя, станет хуже.

    Дамп всего nvme тоже сделал

    Но если успел отработать TRIM, то беда - почти наверняка с данными надо прощаться. Можно пробовать обращение к специалистам, но вероятность успеха низкая, особенно с учётом специфики БТРФС.
    Ответ написан
    3 комментария
  • Как исправить "лагание" 3ds Max при удалённой работе на виртуальной машине?

    @rPman
    Не лагающие протоколы передачи экрана (для работы с графикой), требуют минимум гигабитные сети и алгоритмы, кодирующие изображение видеокодеками.

    Простейший vnc не подойдет.

    Хорошую скорость могут дать к примеру майкрософтовский rdpx (только с серверными ревизиями windows, только с прямым доступом к серверным видеокартам), или что то типа teamviewer/anydesk, попробуй parsec, так же мне очень понравилась работа steam link remote play (бесплатно, win/linux, заточена на realtime игры, и клиенты могут работать на очень старом железе, например планшетниках android, т.е. поддержка очень качественная, хотя что то я не уверен что какая-нибудь малинка тут справится).

    Открытые решения - например sunshine+moonlight (говорят лучшая замена steam link), rustdesk

    Но главное, виртуальные машины практически все не умеют предоставлять полноценный доступ к графическому ускорителю, за исключением специализированных серверных nvidia ускорителей и серверных ОС. Это сделано искусственно, на уровне драйверов (для linux есть попытки типа протокола spice). Это значит, что сами приложения будут медленно работать, используя только генерацию изображения на процессоре, либо использовать gpu не полностью (например для старых windows с virtualbox шли экспериментальные драйвера, позволяющие в некоторых пределах запускать в т.ч. cad приложения достаточно быстро, но уже начиная с windows 10 что то сломалось, и поддержка 3d ускорения прекратилась)

    p.s. ваша видеокарта кажется серверная, а значит если установить windows server то с помощью протокола rdpx можно работать достаточно эффективно (клиенты должны быть тоже windows, вроде бы linux remmina поддерживает rdpx но мне негде было проверить)

    p.p.s. если вам нужно в пределах одного помещения (десятки метров, в крайнем случае сотня, но за расстояние придется доплачивать за железо 10-20т.р. на рабочее место) вместо передачи по сети, рекомендую прямое подключение, т.е. к одной машине подключаете нужное количество мониторов (можно на одной видеокарте можно на нескольких), клавиатур и мышек, собрав несколько рабочих мест, устанавливаете на машину windows 10 (не серверную) и приложение ibik aster (лицензия на одно рабочее место примерно в 30 раз дешевле windows) и пользуетесь компьютером нативно, без тормозов и лагов сетевой передачи (один раз попробовав, никогда ни на какие rdp/vnc/anydesk/.. не вернетесь), единственная проблема - софт, многие просто не готовы одновременно быть запущенным на одной машине. Чаще всего проблем в принципе нет (каждое рабочее место свой аккаунт windows), во многих случаях приходится слегка по шаманить (например пару телодвижений для запуска steam, или к примеру некоторые игры требуют установку приложения для каждого рабочего места в разные места на диске и т.п.) и очень редко приложения не работают (например запрещено лицензионным соглашением, т.е. проверка сколько экземпляров приложения запущено), в каких то случаях решается кряками, а где то хватает той же песочницы sandbox.
    Ответ написан
    Комментировать
  • Как написать програму чтобы проверить простоту числа на виртуальной машине на С?

    wataru
    @wataru
    Разработчик на С++, экс-олимпиадник.
    Цикл делается через условное ветвление.

    Сначала напишите программу на тупо с, потом замените циклы на условия и goto. Потом каждый if распишите через if/goto:
    if (a) {
    B
    } else {
    C
    }
    
    if (a) goto labelB;
    C
    goto end;
    labelB: B
    end:


    Потом уже это все можно в машинные коды строчка за строчкой перевести.
    Ответ написан
    Комментировать
  • Как изменить переменную (массив) из другого модуля в javascript?

    @scooby_doe
    Попробуй в геттеры и сеттеры, например как тут: https://stackoverflow.com/questions/60712238/how-t...
    Ответ написан
    Комментировать
  • Как сверстать нестандартный грид блок?

    sergski
    @sergski
    web-developer
    Самый очевидный и надёжный способ -- 3 колонки с контентом сверху-вниз. Или вот. Или гуглите Masonry
    Ответ написан
    Комментировать
  • Как выполнить шифровку при помощи шифра Вижинера?

    Vindicar
    @Vindicar
    RTFM!
    Делишь задачу на под-задачи. Допустим, у тебя есть строка-исходный текст text и строка-ключ key, а также список строк, содержащий алфавит языка alpha.
    Определяешь функцию, заменяющую символ по шифру:
    # принимает символ открытого текста, его позицию в тексте, строку-ключ и алфавит
    # возвращаем символ шифротекста
    def viginere_encode(text_char: str, i: int, key: str, alpha: list[str]) -> str:
      if text_char not in alpha:  # незнакомый символ?
        return text_char  # оставляем его как есть
      text_char_code = alpha.index(text_char)  # номер символа открытого текста в алфавите
      key_char = key[i % len(key)]  # символ ключа, соответствующего i-му символу открытого текста 
      key_char_code = alpha.index(key_char)   # номер символа ключа в алфавите
      cypher_char_code = (text_char_code + key_char_code) % len(alpha)  # номер символа шифротекста
      return alpha[cypher_char_code]  # возвращаем символ шифротекста

    А дальше применяем эту функцию к строке:
    cipher_text = ''
    for i in range(len(text)):
      cipher_text += viginere_encode(text[i], i, key, alpha)

    Вот и всё. Да, тут много чего можно оптимизировать, но я старался писать как можно проще.

    Полный пример
    alpha = list('ABCDEFGHIJKLMNOPQRSTUVWXYZ')
    text = 'A SMOKE OF MOTHERLAND IS SWEET FOR US AND PLEASANT'
    key = 'SECRET'
    
    # принимает символ открытого текста, его позицию в тексте, строку-ключ и алфавит
    # возвращаем символ шифротекста
    def viginere_encode(text_char: str, i: int, key: str, alpha: list[str]) -> str:
      if text_char not in alpha:  # незнакомый символ?
        return text_char  # оставляем его как есть
      text_char_code = alpha.index(text_char)  # номер символа открытого текста в алфавите
      key_char = key[i % len(key)]  # символ ключа, соответствующего i-му символу открытого текста 
      key_char_code = alpha.index(key_char)   # номер символа ключа в алфавите
      cypher_char_code = (text_char_code + key_char_code) % len(alpha)  # номер символа шифротекста
      return alpha[cypher_char_code]  # возвращаем символ шифротекста
    
    # принимает символ шифротекста, его позицию в тексте, строку-ключ и алфавит
    # возвращаем символ открытого текста
    def viginere_decode(cipher_char: str, i: int, key: str, alpha: list[str]) -> str:
      if cipher_char not in alpha:  # незнакомый символ?
        return cipher_char  # оставляем его как есть
      cipher_char_code = alpha.index(cipher_char)  # номер символа шифротекста в алфавите
      key_char = key[i % len(key)]  # символ ключа, соответствующего i-му символу шифротекста 
      key_char_code = alpha.index(key_char)   # номер символа ключа в алфавите
      text_char_code = (cipher_char_code + len(alpha) - key_char_code) % len(alpha)  # номер символа открытого текста
      return alpha[text_char_code]  # возвращаем символ открытого текста
    
    
    cipher_text = ''
    for i in range(len(text)):
      cipher_text += viginere_encode(text[i], i, key, alpha)
    
    decoded_text = ''
    for i in range(len(cipher_text)):
      decoded_text += viginere_decode(cipher_text[i], i, key, alpha)
    
    print(text)
    print(cipher_text)
    print(decoded_text)
    Ответ написан
    1 комментарий
  • Выбор одноплатника/роутера для домашнего http сервера?

    xenon
    @xenon
    Too drunk to fsck
    Раз вам нужен HTTP сервер (а еще, видимо, рядом потребуется и СУБД запустить и какие-нибудь приложения), да еще и обход блокировок (а для этого требуются разные средства, не факт, что то, что работает сегодня, будет подходить через год), то вам нужен не роутер, а компьютер. Можно не слишком быстрый, но все-таки компьютер. Какие бы сложные блокировки ни были, если для них будет возможность обхода - она наверняка будет работать на Linux, а вот будет ли работать на роутерах - это под вопросом.

    Одноплатники - стоят конские деньги для своей мощности, я бы их отмел. Я советую - мини-пк, которых сейчас много. Это все-таки настоящий компьютер, который можно как угодно конфигурировать, с полноценным обычным Linux внутри.

    У меня c Озона (с Китая) - "Findarling Мини-ПК T9 Plus (Intel Processor N100, RAM 16 ГБ, SSD 512 ГБ, Intel HD Graphics, Windows 11 Pro), черный"
    Я брал за 14 тыров, сейчас он 16 стоит. (есть варианты с SSD 256 и 1024).

    Чем нравится: Вы видите характеристики, вполне себе достойная машинка даже для работы. На ней даже по приколу WoT можно запустить. Внутри обычный дебиан поставил. Проц N100 - довольно-таки мощный.

    Бенчмарки:
    geekbench: 1138 / 2795
    UnixBench: 1706 / 4881

    Для сравнения мой Core i5-4570 по unixbench дает 5753. На 20% быстрее всего (ну так то i5, а там N100)

    И еще одна очень приятная фишечка именно этого вот мини-пк - ДВА ethernet порта! То есть, вполне пригоден в качестве файрвола, роутера.
    Большой диск - можно использовать как файлопомойку и медиа-сервер (чтобы крутить фильмы с него на ТВ или через DLNA или сразу через HDMI).

    Минусы - ЛГБТ-подсветка, но в сети написано, как ее выключить. Охлаждение активное, но он не греется при обычной работе, да и вентилятор в самом деле практически бесшумный.

    Может быть вам какой-то другой мини-ПК подойдет, или вообще обычный в каком-нибудь micro-ATX корпусе (тогда вопрос ремонта-апгрейда еще проще будет). Но мой совет - смотреть в сторону более-менее современных, "настоящий" компьютеров, а не одноплатников. Чуть-чуть дороже, но гораздо-гораздо мощнее.
    Ответ написан
    Комментировать
  • Как редактировать документ Excel на сетевом диске Nextcloud несколькими пользователями?

    @q2digger
    никого не трогаю, починяю примус
    Установить в NC приложение Nextcloud Office , и редактировать документы через web-интерфейс приложения.
    Ответ написан
    Комментировать
  • Как редактировать документ Excel на сетевом диске Nextcloud несколькими пользователями?

    Adler_lug
    @Adler_lug
    Collabora Office вам в помощь
    Ответ написан
    Комментировать
  • Я хочу разделить хостинг который я буду арендовать между мной и другим человеком. Это нормально?

    на кого оформлен договор и хостинг у хостера - тот и рулит, и отвечает
    Ответ написан
    Комментировать
  • Как лучше поступить при создании сайта?

    dmitriylanets
    @dmitriylanets
    веб-разработчик
    Как человек имеющий опыт 15 лет, в разработке интернет-магазинов автозапчастей, скажу одно, вероятность успешной сдачи пректа близка к 0.
    Интернет-магазин автозапчастей это:
    Клиентская часть
    1. Поиск автозапчастей с использованием аналогов, синонимов производителей
    2. Динамическое ценообразование
    3. Каталоги запчастей оригинал и не оригинал, визуальное представление агрегатов для удобства поиска
    4. Личный кабинет, с возможностью отправки вин-запросов, истории заказов, добавлением машин, выставлением счетов
    5. Корзина с онлайн оплатами и отложенными заказами
    Админка
    1. Работа с заказами, клиентами
    2. Работа с поставщиками
    3. Загрузка прайс-листов поставщиков с различных источников
    4. Настройка ценообразования
    5. Управление логистикой
    6. Работа с каталогами товаров
    7. Работа со складом, складскими ячейками, приходы, отгрузки
    8. Выставление счетов, актов

    По сути это базовый функционал который требуется в 90% случаях. Как правило делаются на специализированных CMS
    Ответ написан
    2 комментария
  • Подходит для светодиода ребристый радиатор?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Если он подходит по размерам и ТТХ - то вполне можно, почему нет-то?
    Ответ написан
    Комментировать
  • Есть ли способ для быстрого перевода готового html сайта в мобильную версию?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Да, есть: пачка денег плюс задача на фрилансе.
    Ответ написан
    1 комментарий
  • Инструмент для создания любого типа файла?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Теми инструментами, которые и предназначены для создания файла необходимого формата.
    Ответ написан
    Комментировать
  • Проблема с подключением к интернету после настройки DNS сервера?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Нужно добавить DNS forwarder на любой публичный DNS сервер.
    Ответ написан
    3 комментария
  • Почему не удается установить веб сокет соединение через телефон?

    Vindicar
    @Vindicar
    RTFM!
    ws://127.0.0.1:8000/
    Как по-твоему, что означает адрес 127.0.0.1?
    Ответ написан
    Комментировать
  • Совместимы ли блок питания и ноут?

    xez
    @xez
    TL Junior Roo
    Вот у вас сзади написано: 19V 9.23A
    А на БП написано: 19V 6.32A
    6.32 < 9.23
    Ответ написан
    5 комментариев
  • Какие есть простые бесплатные системы мониторинга веб сервера с рабочего ПК?

    borisdenis
    @borisdenis
    Ленив и вреден...
    Zabbix, описана процедура установки пошагово, мониторится куча всего из коробки.
    https://www.zabbix.com/ru/download
    Ответ написан
    Комментировать