• Хочу заменить кулер видеокарты родную без подсветки c подсветкой возможно ли это?

    @Akela_wolf
    Extreme Programmer
    Новый кулер в полтора раза больше потребляет. Так что тут вопрос - рассчитана ли подсистема питания видеокарты на такой ток? Если да - то ничего не произойдет, если нет - может сгореть. Выяснить это получится только экспериментально.
    Ответ написан
    Комментировать
  • Как перезапустить контейнер в докере с новыми параметрами?

    @Akela_wolf
    Extreme Programmer
    Это криво, но можно сделать docker commit, который запишет состояние контейнера в новый образ: https://docs.docker.com/engine/reference/commandli...

    Конкретно сейчас это вашу проблему решит, но вообще такая ситуация что после перезапуска контейнера данные пропадают - это использование контейнеров не по назначению. Контейнеры созданы чтобы быть stateless, то есть умирать и запускаться в любой момент (допустим оркестратор, такой как кубер, может запускать новые и останавливать существующие контейнеры в любой момент времени, в зависимости от множества условий). Поэтому лучше переделайте контейнер по фен-шую.
    Ответ написан
    Комментировать
  • Как хранить строку в виде байтов?

    @Akela_wolf
    Extreme Programmer
    Что-то я не понимаю чего вы хотите добиться. То что вы говорить - низкоуровневое программирование, для этого вам не нужен C#. Берите C/C++ и наслаждайтесь прямой работой с памятью.

    Вообще со строками есть два подхода. Первый использовал Pascal: в нулевом байте строки хранится её длина. Так как паскаль использовал однобайтную кодировку (ANSI), то этого было достаточно для хранения строк длиной до 255 байт. Вы, в принципе, можете использовать и 2 и 4 байта. И это неплохо работало.
    Второй подход - это подход из C++, когда строка заканчивается символом '\0' (zero-terminated string). Тут тоже есть свои тонкости, в основном связанные с тем, что при определении длины строки нужно помнить что '\0' не входит в её длину. Еще есть потенциальная ошибка, связанная с выходом за пределы строки и повреждением следующих за ней блоков памяти.

    Выбирайте - какой подход вам больше нравится.
    Ответ написан
    2 комментария
  • Можно ли как-то перенести MySql базу в Sql базу которая находится в Visual studio?

    @Akela_wolf
    Extreme Programmer
    Во-первых, MySQL можно встроить в приложение. Это, возможно, самый простой способ решения вашей проблемы.

    Во-вторых, mysqldump даст вам SQL вашей БД. Структуру таблиц и данные таким образом перенести вполне можно. Триггеры - вряд ли, там специфичный для MySQL диалект, их потребуется как минимум откорректировать.
    Ответ написан
    1 комментарий
  • Что и как изучать после React и Express?

    @Akela_wolf
    Extreme Programmer
    ИМХО, nginx/apache вам ничего особо сейчас не дадут.
    В принципе то что у вас есть во многом напоминает фуллстек. Не хватает, на мой взгляд, только SQL DB: MySQL, Postgres и т.п.
    Ну а дальше - углублять знания по этим темам, я бы сказал. Не вижу особого смысла разбрасываться на другие технологии/языки.
    Ответ написан
    Комментировать
  • Почему GitHub не предоставляет доставляет доступ к оболочке?

    @Akela_wolf
    Extreme Programmer
    А что вы хотите от шелла в гитхабе? Выполнять команды на его серверах? Зачем?
    SSH у гитхаба имеет простое назначение - аутентификация и туннель для доступа к репозиториям. Зачем там шелл?
    Ответ написан
    Комментировать
  • Какой язык выбрать для веб-приложения для работы с БД?

    @Akela_wolf
    Extreme Programmer
    Да в общем-то любой. Но если знаком с C# - бери платформу ASP.NET
    Опыт в этой технологии лишним не будет.
    Ответ написан
    Комментировать
  • Несколько рабочих пространств на одном ПК?

    @Akela_wolf
    Extreme Programmer
    Имею Windows на хосте и Linux в Vmware Player (бесплатен для некоммерческого использования). Производительность более чем достаточна чтобы в Linux заниматься разработкой (IDEA, docker и все такое прочее). Игры в Linux запускать не пробовал (да и скорее всего не заработают). Желателен SSD (ну он в 2022 году и так крайне желателен). На мой взгляд, если хочется максимальной изоляции, то это наилучший вариант.
    Ответ написан
    Комментировать
  • Компания просит уволиться из текущего места работы перед собеседованием, нормально ли?

    @Akela_wolf
    Extreme Programmer
    То есть вам они ничего не гарантируют, но хотят чтобы вы уже уволились? Скорее всего попытаются прогнуть на условия оплаты или (что вероятнее) на условия работы. Потому что вы уже уволились, работа вам нужна уже сейчас, а значит вы будете сговорчивее. Собственно это сразу показывает отношение к персоналу в данной конторе - нагибать и ставить ультиматумы. Поэтому, лично я бы после такого предложения не раздумывая сказал бы "до свидания. Хотя нет, прощайте"

    Нормальные компании не только не просят увольняться, но и, сделав официальный оффер (то есть пообещав заключить договор, а иногда даже уже заключив договор) согласны ждать 2 недели (а иногда и больше) пока сотрудник завершит дела на текущем месте работы и выйдет к ним. А не так: "вы увольняйтесь, а мы вас собеседуем. Может быть возьмем, может быть не возьмем, ничего не обещаем".
    Ответ написан
    2 комментария
  • Нужно ли перед установкой программ выполнять sudo apt update?

    @Akela_wolf
    Extreme Programmer
    1. Нет, не перед каждой. Достаточно делать это периодически (насколько я понял, apt systemd daily в том числе этим занимается).
    2. Да, она обновляет только базу данных. sudo apt upgrade обновляет собственно установленные программы (в соответствии с базой данных, то есть после sudo apt update)
    3. Подождать. Отключить или настроить apt systemd daily. https://andreyex.ru/linux/chto-takoe-apt-systemd-daily/
    Ответ написан
    1 комментарий
  • С помощью какой программы можно делать звонки, в течение которых будет бесперебойная связь 3-4 часа?

    @Akela_wolf
    Extreme Programmer
    Любой мессенджер, в том числе Skype. 3-4 часа не болтали, но двухчасовые конференции (на 5 человек) - вполне ОК.
    Ответ написан
    Комментировать
  • Как сделать время для postgresql?

    @Akela_wolf
    Extreme Programmer
    Записывайте в БД дату и время возврата кредита. А при выводе данных пользователю - вычисляйте остаток времени.
    Ответ написан
    Комментировать
  • Как посмотреть что отправляет форма?

    @Akela_wolf
    Extreme Programmer
    В любом современном браузере есть DevTools. Нажимаете F12, открываете вкладку "Сеть" и смотрите весь сетевой обмен с бэком. Незаменимо для отладки.
    Ответ написан
    2 комментария
  • Биос не видит SSD NVMe SSD Samsung 980 PRO на 500GB. Что делать?

    @Akela_wolf
    Extreme Programmer
    Насколько я знаю, загрузиться с накопителя в PCI-e слоте не получится. Потому что у вас старая материнка, которая не знает о том что загрузочное устройство может стоять в PCI-e слоте (да я не уверен что современные об этом хорошо знают. Но на современных есть M2, что решает проблему).

    У меня один вариант - это попробовать переходник M2 -> SATA. Но тоже без гарантии что все заработает (лично не пробовал). Но тут вы однозначно потеряете в производительности (так как SATA элементарно медленнее) и можете получить проблемы связанные со спецификой в разнице протоколов SATA и NVMe.

    Самое простое решение - верните этот SSD в магазин и поменяйте на SATA SSD (например Samsung 860 Pro или Samsung 870 Evo), который для системы будет виден как обычный жесткий диск.
    Ответ написан
    7 комментариев
  • Как называется подобная задача?

    @Akela_wolf
    Extreme Programmer
    Экстраполяция.

    В данном случае данных маловато, все что можно сделать - это линейную экстраполяцию. То есть на 25% приходится (2000-30) = 1970. А значит при 50% это будет -1940. Но это на уровне
    extrapolating.png
    Ответ написан
    1 комментарий
  • Как узнать чем зашифрована строка, зная ключ и что в ней зашифровано?

    @Akela_wolf
    Extreme Programmer
    Во-первых "расшифрованная строка" возвращает 404.
    Во-вторых - расшифрованная строка есть видеофайл? В таком случае я вас огорчу - это не шифрование, это хэширование. Но тогда я не понял при чем тут некий "ключ".
    Хэширование отличается от шифрования тем, что хэширование необратимо, то есть по хэшу невозможно получить изначальный файл.

    Определить алгоритм можно только перебором - взять известные алгоритмы хэширования, часть сразу можно отбросить как неподходящие (например MD5, SHA-128 - длина хэша слишком большая). А дальше перебирать.

    Но в вашем случае длина 106 символов, это 424 бита - что-то нестандартное, похоже. Или вы как-то не так объяснили проблему.
    Ответ написан
    7 комментариев
  • Большой размер приложений в докере норм?

    @Akela_wolf
    Extreme Programmer
    Вы не очень понимаете что такое образ докера. Образ докера содержит всё для запуска приложения, кроме ядра ОС (ядро используется из хост-системы). А в зависимости от того как собирали образ - может быть и что-то лишнее, нафиг не нужное для запуска приложения. Но автору образа было лень это выпиливать из него (или он на это забил). Собственно вот и вся разница. И те библиотеки, которые у вас уже есть в системе (и которые вы не учитываете при расчетах занимаемого им места) - докер притащит с собой (это наверняка будут другие версии библиотек, но факт в том что он их с собой притащит). Например, если вы говорите о Java-приложении, в системе наверняка есть JVM. И вы увидите только размер jar-файла и каких-то обвязок вокруг него. А в докере это будет плюс JVM, плюс библиотеки для JVM, плюс, плюс, плюс... Вот и набегает размер образа.

    Общий размер образов докера можно сократить, если все образы будут использовать одну и ту же базу (в терминах докера layer). Но это отдельная тема, в которую я сейчас углубляться не буду.
    Ответ написан
    6 комментариев
  • Как вызывать метод один раз а потом запоминать его значение?

    @Akela_wolf
    Extreme Programmer
    Статическая переменная в функции. И проверять - если не null - то возвращать её значение. Это один из самых простых вариантов кэширования. При наличии у функции аргументов - статический массив.

    Проблемы возникают, как всегда с кэшированием, когда кэш устаревает. То есть, у вас добавится запись в БД (или откуда get_users берет пользователей) - а кэш останется старым. В случае PHP это частично снимается тем, что он перезапускает скрипт на каждый запрос, то есть такой кэш будет жить в пределах одного запуска скрипта. Но тем не менее, это может привести к глюкам.

    Вообще, прежде чем добавлять такое кэширование нужно хорошо подумать:
    а) а что я тут выиграю? Даже если это запрос в БД - у БД есть свой кэш, так что второй раз запрос отработает очень быстро. Критично ли что их будет 2?
    б) можно ли переписать код, чтобы это работало не так?

    По второму случаю у вас в коде нарушение принципа единственности ответственности: функции method2 и method3 жестко связаны (coupled) с функцией method1 (а функция finish - с ними всеми). Собственно это и порождает проблему. Код можно переписать, например так:
    сlass Neptun(){
      private function method1(){
        $users_count = get_users();
        return $users_count;
      }
    
      private function method2($users){
        if($users > 10){
            return 'it more than 10';
         }
       }
    
      private function method3($users){
        if(in_array(10, $users)){
             return 'there are user with ID 10';
        }
      }
    
      public function finish(){
        $users = $this->method1();
         echo $this->method2($users) . ' ' . $this->method3($users);
      }
    }


    Все, функции method2 и method3 "расцеплены" (decoupled) с функцией method1. А "сборку" в общую конструкцию осуществляет публичный метод finish
    Ответ написан
    1 комментарий
  • Как исправить ошибки при переезде с PHP5 на PHP7?

    @Akela_wolf
    Extreme Programmer
    Ну так в массиве нет индекса 'set'
    Корректно будет так:
    if (isset($_GET['set']) && $_GET['set'] == 'search') ...
    Ответ написан
  • API это прослойка между интерфейсом и базой данных?

    @Akela_wolf
    Extreme Programmer
    Вообще говоря нет. API - это внешний интерфейс, предоставляемый какой-либо системой. Под словом "интерфейс" я здесь подразумеваю не пользовательский интерфейс, а технических интерфейс. В качестве такого интерфейса может выступать REST, SOAP, RPC и т.д. Также это может применяться к библиотекам и модулям программы. Вообще термин API имеет очень широкое значение и к базе данных имеет только то отношение, что у БД тоже есть API (например ODBC/JDBC).
    Ответ написан
    Комментировать