Задать вопрос
  • Какой язык или направление подойдет для программирования на компе с 4гб оперативы?

    2ord
    @2ord
    Языки почти любые компилируемые (кроме TypeScript, пожалуй).

    Во-первых, увеличь раздел SWAP. Будет сильно тормозить из-за обращения к медленному накопителю, но хотя бы работать.
    Во-вторых, установи программу мониторинга atop (консольная), затем запусти Firefox и проверь что происходит с подкачкой (SWP). Красным цветом будет наглядно помечено что не так. Если память забита под завязку, то SWP, MEM будут помечены красным.
    Попробуй использовать оптимизированные сборки Firefox и отключить расширения, кроме uBlock или других блокировщиков рекламы. Настрой плагины и прочие вещи для сохранения памяти. Открывай по малому количеству страниц.
    Иначе без гугления из тебя выйдет плохой специалист.
    Ещё попробуй GitHub Codespaces - когда решишь немного вопрос с браузером.

    После того как намучаешься, следуй советам Алексей 〒. и Кирилл Гусарев .
    Ответ написан
    Комментировать
  • Как вернуть русскоязычные результаты поиска вместо болгарских из-за VPN?

    2ord
    @2ord
    Может, надо попробовать добавление русского в настройках предпочтений языка?
    Тогда Хром будет отправлять в заголовках HTTP и это должно учитываться самим Гуглом, по идее.
    Ответ написан
  • Как правильно построить поиск на сайте(Laravel + elasticsearch)?

    2ord
    @2ord
    где-то поля указаны как name_ru\name_en
    почему не одно поле? Пользователь ищет на любом языке и Эластик просто находит по запросу.

    где-то просто title внутри которого либо json с {ru:} где-то просто текст, и необходимо искать в соответствии с нужной локалью на портале.
    ну так приведи к нужному виду поля, чтобы был просто текст, безо всяких JSON в теле поля.

    Эти болячки нужно решать в Ларавел, а не Эластиком.

    я не понимаю как сделать поиск сразу по всем типам
    https://www.elastic.co/guide/en/elasticsearch/refe...
    Ответ написан
    Комментировать
  • Ошибка импорта при сборке в docker alpine python приложения?

    2ord
    @2ord
    Пакет libev не установлен в Alpine.
    Если этого недостаточно, тогда пиши автору в https://github.com/jonashaag/bjoern/issues
    Ответ написан
    Комментировать
  • Как перевести изображения на разные языки?

    2ord
    @2ord
    Сделать экспорт в SVG (Tools > Scripts > Batch Export)
    и автоматизировать перевод скриптом: SVG - это XML, для которого есть парсеры на различных языках программирования.
    Так, извлекая текст, можно при помощи API для онлайн машинного перевода перевести на разные языки, используя SDK. Есть нюансы: длина слов может вызвать перевод на другую строку или выход за границы изображения. Это, возможно, тоже решается.
    Ответ написан
    9 комментариев
  • Если откыть exe файл в блокноте, то что мы увидем?

    2ord
    @2ord
    504b 0304 это сигнатура формата zip.
    У Exe (формат PE) сигнатура другая, 0x4D 0x5A . См. https://ru.wikipedia.org/wiki/Portable_Executable
    Многие форматы файлов представляют из себя набор байтов, которые обычные тестовые редакторы показывают как какие-то кракозябры - они не предназначены для этого. Файлы изображений, звука, видео и многих других. Чтобы посмотреть что внутри на уровне байтов, нужно открывать их в специальных hex-просмотрщиках. Но для большинства они будут выглядеть как зашифрованное послание.
    Ответ написан
    1 комментарий
  • Сохранение в память данных из таблицы с периодическим обновлением?

    2ord
    @2ord
    Кэширование как раз делается для экономии обращения к более дорогим/медленным ресурсам. Устанавливается срок действия ключа, по необходимости. Самые главные преимущества - независимость от хранения при перезагрузке программы (при крахе или просто выпуске новой версии) и масштабируемость архитектуры. В случае Redis весь список можно держать в одном ключе. Можно, запуская (под)программу в планировщике задач ежечасно, просто в цикле получить структуру, сериализовать в виде JSON, XML, Msgpack и записать байты как элемент списка в Redis.
    Затем, при получении нужного списка просто проверяешь есть ли данные по ключу и если есть, распаковываешь в свои структуры данных в памяти и используешь в логике программы.
    А мьютексы и локи вообще не нужны для этих целей.

    Добавлено
    Использовать СУБД - тоже нормальный вариант и не надо стесняться его использовать. Тем более, не нужно добавлять дополнительные единицы хранения типа Redis.
    Ответ написан
    Комментировать
  • Как восстановить базу данных имея только папку data?

    2ord
    @2ord
    В файле ibdata1 , похоже, находится какой-то мусор: начиная с некоторого смещения виден заголовок PE исполняемого файла:
    судя по некоторым мета-данным
    Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv11.0) like Gecko

    похоже на браузер IE, Windows 7

    mysql_error.log
    2023-08-18 18:36:21 0 [Note] InnoDB: The first innodb_system data file 'ibdata1' did not exist. A new tablespace will be created!
    2023-08-18 18:36:21 0 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
    2023-08-18 18:36:21 0 [Note] InnoDB: Uses event mutexes
    2023-08-18 18:36:21 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
    2023-08-18 18:36:21 0 [Note] InnoDB: Number of pools: 1
    2023-08-18 18:36:21 0 [Note] InnoDB: Using SSE2 crc32 instructions
    2023-08-18 18:36:21 0 [ERROR] InnoDB: Unable to create temporary file; errno: 2
    2023-08-18 18:36:21 0 [ERROR] InnoDB: Unable to create temporary file; errno: 2
    2023-08-18 18:36:21 0 [ERROR] InnoDB: Database creation was aborted with error Generic error. You may need to delete the ibdata1 file before trying to start up again.
    2023-08-18 18:36:21 0 [Note] InnoDB: Starting shutdown...
    2023-08-18 18:36:22 0 [ERROR] Plugin 'InnoDB' init function returned error.
    2023-08-18 18:36:22 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
    2023-08-18 18:36:22 0 [Note] Plugin 'FEEDBACK' is disabled.
    2023-08-18 18:36:22 0 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded
    2023-08-18 18:36:22 0 [ERROR] Unknown/unsupported storage engine: InnoDB
    2023-08-18 18:36:22 0 [ERROR] Aborting

    не особо оптимистично сообщается
    Ответ написан
    Комментировать
  • Изображения не загружаются если их слишком много?

    2ord
    @2ord
    Гугли: CSS sprites
    Ответ написан
    Комментировать
  • При запуске своей OS на cosmos OS в виртуалке пишет Waiting for debugger connection?

    2ord
    @2ord
    https://github.com/CosmosOS/Cosmos/issues/1195
    Debugger support only works with Bochs and VMWare currently. To use Virtual Box you will need to disable the debugging by setting <EnableDebug>false</EnableDebug>

    60398823-5643fb80-9b22-11e9-895a-5c09e3bacd01.png
    Ответ написан
    Комментировать
  • Как хранить условия в БД?

    2ord
    @2ord
    Попробуй формализовать в виде правил и записать их каждое в отдельную запись.

    Если сегодня суббота, то сделай скидку к моему товару на 5%, но не меньше себестоимости

    как определяется, что день является субботой?
    каков номинал скидки?
    как определить что является себестоимостью? Надо ли хранить в БД или вычисляется исходя из цены товара? Или, наоборот, цена хранится в виде себестоимости, а накрутка на себестоимость вычисляется по формуле.

    Пример записей:
    тип правила: день недели, скидка: 15, единицы: проценты, мета-данные: { день: 5 } (и проверять функцией SQL DAYOFWEEK)
    тип правила: день недели, скидка: 5, единицы: проценты, мета-данные: { день: 1 }
    тип правила: день трудяг, скидка: 10, единицы: абс. (тугрики), мета-данные: { }
    Ответ написан
    Комментировать
  • Как понять что грузит сеть?

    2ord
    @2ord
    В Хроме открой Dev Tools > Network
    подробнее от бота ИИ

    Open the Developer Tools by pressing Ctrl + Shift + I (Windows) or Cmd + Option + I (Mac) while in Chrome.
    Click on the Network tab.
    Reload the page to start capturing the network requests.
    Click on a specific request to view its details.
    Click on the Timing tab to view a breakdown of the network activity for that resource1.

    Там
    64d2617c15fdc526849744.png
    64d2619b0b41f257751986.png
    Тут видно, что почти 8 сек. занимает initial connection.
    Что на это говорит ИИ бот

    Some possible causes include network issues, problems with the server you are trying to connect to, or issues with your computer or device. Here are some steps you can try to fix the issue:

    Check your internet connection to make sure it is working properly.
    Clear your browser cache and cookies.
    Disable any browser extensions that may be interfering with the connection.
    Try resetting your network settings or restarting your router.
    If you are using a VPN or proxy, try disabling it temporarily to see if that resolves the issue.

    If none of these steps help, the issue may be outside of your control and could be related to the server you are trying to connect to or other external factors
    Ответ написан
  • Как тестировать горизонтальное масштабирование?

    2ord
    @2ord
    Напиши простую программу с имитацией нагрузки на CPU (необязательно большой) в течение заданного времени. Добавь в K8s конфигурацию с указанием порога, по превышении которого должны подниматься дополнительные экземпляры.
    Ответ написан
    Комментировать
  • Как сделать ромбообразную сетку?

    2ord
    @2ord
    Это ведь сетка, состоящая из квадратов под углом 45 градусов, не так ли?
    Ответ написан
    3 комментария
  • Как запустить горутину навечно?

    2ord
    @2ord
    я думаю, что весь секрет в строке
    //Working with DB
    То есть утекает память из-за того самого кода, который нам не показан.
    С "вечной" горутиной пролем вроде как нет.
    Ответ написан
    Комментировать
  • Можно ли реагировать на нагрузку mysql в реальном времени?

    2ord
    @2ord
    Да. "реагировать на нагрузку" можно по-разному:
    1. слать сообщения админу в 2 часа ночи: "ой, у вас что-то непонятное творится с вашей СУБД. Может, проверишь?". Можно и разработчикам ПО.
    2. можно и активно (программно). Например : "так, что тут количеством соединений? Ого! Надо грохнуть эти подозрительные процессы." или типа "давай остановим наше ПО и посмотрим что будет". Есть и более продвинутые средства, конечно. Искать по PMM mysql и другие.
    3. ничего не делать и молча наблюдать за происходящим через средства мониторинга СУБД.
    Ответ написан
    Комментировать
  • Что делать при повреждении файла index?

    2ord
    @2ord
    Начни с прочтения
    git help fsck
    Ответ написан
    Комментировать
  • Что делать если при включении ПК нет изображения?

    2ord
    @2ord
    Проверь, хорошо ли сидит память в слоте.
    Ответ написан
    Комментировать
  • Как читать книгу Вирт, Алгоритмы и Структуры данных школьнику?

    2ord
    @2ord
    Посмотри как работают алгоритмы сортировки:
    https://www.toptal.com/developers/sorting-algorithms

    Если тебе интересно узнать как оно устроено под капотом, то бери книгу по-проще и читай. А если не особо интересно, то возьмись за написание какой-то логической или аркадной игры. Сухую теорию неинтересно учить, поэтому найди себе что-то интересное, где могут найти применения разные алгоритмы.
    Ответ написан
    Комментировать
  • Работа с изображениям, как создать своё на C++?

    2ord
    @2ord
    Для старта: формат изображений QOI. Там же и спецификация формата.
    Или же BMP.

    Хочу написать код для работы с изображениями под свои задачи
    Весьма расплывчатая хотелка.

    научиться делать скрины экрана
    Захват экрана делается системными вызовами. В разных ОС по-разному. Надо читать их SDK. В дистрибутивах Линукса есть различные менеджеры окон и у них разные SDK.
    Захватив изображение и получив матрицу пикселей, возможно, необходимо проделать какие-то операции над изображением и сохранить в некотором формате изображения (BMP, QOI, PNG).

    может быть обрабатывать видео
    видео - это последовательность фреймов изображений определённым кодеком. Сжатие данных само по себе - обширная тема и нужно читать отдельно. Например, в compression.ru . Пока не поймёшь что можно делать с изображениями, к работе с видео лучше не переходить.
    Ответ написан
    Комментировать