Задать вопрос
  • Что можно сделать с большим весом "Новых точечных рисунков"?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот эту штуку еще можно посмотреть https://www.acdsee.com в качестве конвертера.

    Мда. bmp - это "толстяк" в мире графических форматов. Попробуй пересохрани в формате png. Станет чуть лучше.
    Ответ написан
  • Как фильтровать нецензурную лексику в telegram боте?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Опыт модерирования форумов рунета подсказывает что это все бесполезно.
    В русском языке очень много способом ругаться завуалированно. Посылать стихотворные формы.
    Метафоры. Можно печатать через пробел. Заменять кириллицу на похожие по начертанию
    Unicode символы. Печатать псевдографикой.

    Вобщем фильтрацией мата обычно занимаются админы канала. Более того. Если вы вводите
    интеллект который видоизменяет сообщения - то часть пользователей уйдут с канала. Эти
    либералы будут считать что у них есть свобода печати текста а вы - цензурите в авто-режиме.
    И есть мамкины хакеры которые будут день и ночь хачить ваш фильр мата и они его будут в конце
    побеждать. Потому что это борьба снаряда и брони - бесконечна. А вы - устанете вводить новые
    правила.
    Ответ написан
    Комментировать
  • Как присвоить мусорным описаниям книг дефолтную рубрику в датасете?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Непонятна проблема. Ты пишешь
    а есть такие по которым точно нельзя


    Ну если нельзя точно - тогда делай нечетко. Ввведи метрику близости. Пускай это будет дистанция
    по Левенштейну или по bi-gram, tri-gram. И раскладывай книжки по дистанции.

    Вообще я-бы ввел рубрику "Прочее" и спокойно бы туда положил весь остаток.

    Это знаешь как в зоологии. Когда открыли Австралию и узнали что среди животных есть утконос
    - то пришлось всю классификацию зверей переделать. И ни у кого не было желания
    впихивать бедного утконоса к утками или к барсукам.
    Ответ написан
    Комментировать
  • Как сделать нормальные глобальные переменные?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Можно в базе завести табличку типа properties и хранить там эту переменную.
    Судя по внешнему виду это счетчик событий. Вот пускай там и считает.

    Делать это переменной application неудобно потому что приложение может рестартовать.
    Из-за балансера, подниматься в двух экземплярах или перегружаться. Вот. А база
    в этом мире это некая... ну констатна чтоли.
    Ответ написан
    Комментировать
  • Почему проект ruby on rails создаётся только в конкретной папке?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В ruby все нормально работает. Я только что попробовал

    $ rails new blog

    Все нормально! Полет проходит нормально. Гарантия.
    Ответ написан
    Комментировать
  • Server 2019 на стационарный пк. возможно ли это?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Обычный декстоп не расчитан на круглосуточную эксплуатацию. Если серверам вы делали
    профилактику раз в квартал - то здесь надо будет пылесосить каждый месяц (вместо 8 часов - 24 часа
    эксплуатации). Пыль, выбрации и температура это все факторы которые ушатывают любое железо.
    Поэтому этот псевдо-сервер может стать вашей головной болью. И именно потому что сервер - это
    не операционка а это роль этого ПК в сети. К серверам - всегда пристальное внимание и требования.

    Вы в пятницу вечером запустили важный джоб. И ушли на выходные. А потом зашла уборщица
    и так яростно шуровала тряпкой что выдернула все шнуры. Был сервер - и вышел весь. И стоять
    он должен не у вас под столом. А в особом помещении.

    В наше время есть глобальный тренд на вынос серверов в облаки. Я его обычно не поддерживаю.
    Считаю что предприятие вполне может держать серверную. Но если вы пошли таким путем - то
    вам реально лучше оплатить нечто в облаке.
    Ответ написан
  • Как начать учить программированию детей начальной школы?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Поищите книги Scratch Programming. Там был язык какой-то и среда для детей.
    Ответ написан
    1 комментарий
  • Почему в С++ не работают 2 цикла for?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ты наверное новичек?

    Переменную не рекомендуется дважды использовать в разных ролях в одном блоке кода.
    Ты-же не в ассемблере пишешь? Верно? Зачем тебе эта экономия. Создание новой переменной -
    безопаснее и надежнее. Хороший компиллятор уже сам разебертся где оптимизировать а ты
    - просто напиши чортов правильный код.

    И не забывай инициализировать. И не забывай про scopes.

    for(int i = 0; i < n; i++) {...}

    Иногда профессионалы могут использовать переменную дважды для достижения какой-то другой
    цели. Тут надо смотреть use-case.

    Но Quod licet Iovi, non licet bovi. Тебе пока не позволено. Научись сначала просто
    писать код без ошибок а потом уже делай трюки.
    Ответ написан
    2 комментария
  • Кормен или Кнут?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Кнут описывает много устаревшего материала. Большую часть из этого никогда не спросят на собеседованиях.
    Поэтому цена вопроса - к чему готовиться. Если с собеседованию то тут Кнут вообще не помошник.
    Он удивительно многословен и нуден. Кроме того если хотите читать код - то Кнут пишет его для своей
    виртуалки с очень "странной" системой регистров и с накопителями (!) ленточного типа.
    Трехтомник очень академичен и красиво смотрится на полке. Для меня Кнут будет чтивом для "долгих
    зимних вечеров". Когда некуда торопиться.

    Насчет Кормена - ничего не могу сказать. Купил но еще не читал. Судя по содержанию
    - очень солидная вешь. В качестве описателей алгоритмов там кажется используется алгоритмический
    язык на английском. Не всем такое заходит. Не всем понятно.

    Есть двухтомник Седжвика. Мне он кажется более практичным. У него есть издания для C/C++/Java
    с примерами. Там 1-й том - базовые алгоритмы на коллекциях и 2-й том - алгоритмы на графах.

    Есть Вирт - Алгоритмы. Достаточно сжато описан базис. Примеры - на Pascal.

    Есть Бхаргава - Грокаем Алгоримы. Все хвалят за практичность и примеры. Но я еще не читал.
    Ответ написан
    9 комментариев
  • Смысл в JWT, если любой его может распарсить?

    mayton2019
    @mayton2019
    Bigdata Engineer
    JWT токен содержит внутри своего тела digital signature или HMAC (я не помню точно что из них)
    и это позволяет серверу очень быстро проверить валидность токена. Подпись закрепляет
    все параметры токена в том числе дату валидности.

    То-есть сценарий фальсификации, который ты придумал скорее всего не сработает. Атакующий
    должен иметь ключи для шифровки "шмяком" или ключи для подписи.
    Ответ написан
    Комментировать
  • Как отобразить байт в двоичном виде?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Программист С++ должен уметь работать с битами. Сдвигать влево-вправо. Делать булевы операции.
    Тем более что ты там сериал-порты собрался крутить.

    Вот сам алгорим
    https://stackoverflow.com/questions/111928/is-ther...

    От него уже можно и форматировать массив и перегружать "птичку влево".

    Qt - хорошее корбочное решение. Но твой вопрос должен был пойти не от Qt.
    Ответ написан
    Комментировать
  • Как быстро записать на диск в одном потоке?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я могу распараллелить процесс на несколько файлов

    Разпараллеливание записи на несколько файлов не имеет смысла для обычных десктопных дисков.
    Это только в серверных системах хранения где RAID - такая оптимизация имела-бы смысл.

    Чтоб оптимизировать запись (развязать ожидания рабочих потоков от потока записи) можно
    создать кольцевой буфер записи и поручить его сброс отдельному потоку. Размер этого
    кольца можно выбрать экспериментально. Я не очень понимаю зачем тебе нужен набор
    буферов (больших и малых) это возможно часть алгоритма. Но я-бы избавился от ненужных
    копирований внутри памяти если есть возможность.

    Можно еще посмотреть какие возможности в Rust есть в части асинхронного I/O но я здесь не специалист
    в расте насколько глубоко чтоб знать где это и как называется.
    Ответ написан
  • Как установить Python 3.9.6 на Ubuntu 20.04 LTS?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Для установки специфичных версий Python можно использовать conda https://docs.conda.io/en/latest/
    Это удобно особенно, для понижения версий софта. И вообще можно иметь бесконечное
    число конфигураций Питона под разный софт.
    Ответ написан
    Комментировать
  • Как нарисовать кривую Серпинского (см. ниже), не используя графические библиотеки, а '*' или слешы?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Самый простой путь - рисовать эту картинку внутри матрицы (растр).
    А потом перевести элементы этой матрицы в псевдографику https://en.wikipedia.org/wiki/Box-drawing_character

    Но я тебе это не советую, потому что выглядит как сильно грубое разрешение.

    Рисование слешами или зведочками возможно. Но это ASCII art. Иногда выглядит красиво
    а иногда вообще нечитабельно.
    Ответ написан
    4 комментария
  • Как влияют инфракрасные обогреватели на ПК и оргтехнику?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Эти обогреватели греют в прямом направлении освещения. Тоесть если у вас техника стоит допустим
    под столом (системники) то ничего они не почувствуют.

    Вообще UFO обогреватели это очень временное решение и их ставят чтоб согреть людям спины.
    Ставить их стационарно в офис нет смысла. Маслянные оборгеватели будут эффективнее.
    Ответ написан
    2 комментария
  • Решил сделать свой пет-проект - игру, с использованием вебсоккетов, как лучше организовать неткод?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ты поднял очень трудную задачу. Ее многие игровые серверы фиксят годами. А потом еще борются с читерами.

    Можно на сервер передавать твои клавиатурные нажатия. С высоким приоритетом. Сервер будет интерполировать
    и создавать свою модель мира попутно проверяя тебя чтоб ты там не сильно телепортировался далеко.

    И все игроки тоже должны получать координаты всех. Как-бы рассылкой.

    Кстати подумай над UDP. Понятное дело что в рамках websocket у тебя диапазон возможностей будет
    ограничен тем что дано. Но мне кажется что производительный игровой сервак должен делать TCP
    как-бы обязательной частью протокола. И далее если клиент поддерживает (провайдер пускает)
    то можно договориться (negotiation) на уровне софта о дополнительной рассылке по UDP каких
    то не шибко важных событий игрового мира.
    Ответ написан
    2 комментария
  • Почему после ассемблера учить Си легче?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Есть две трудности с которыми сталкиваются студенты изучая С. Это адресная арифметика и работа со строками.
    Эти две темы зайдут легко если вы до этого уже знали Ассемблер.

    Но мне в общем кажется странным такая хронология изучения. Какой ВУЗ такое дает? Если вы до этого
    случайно знали Ассемблер - то это удивительный и исключительный факт. Насколько я знаю даже
    безопасники и системотехники не очень изучают asm. Я-бы сказал факультативно.
    Ответ написан
    Комментировать
  • Как подключать внешний SSD?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Есть USB 3.0 хабы с блоком питания. Купи такой и используй.
    Ответ написан
    Комментировать
  • Возможен ли доступ в интернет без провайдера?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если с другом хочестся "шпилить в контру" - то для этого ничего не нужно. Только кросс-овер ethernet кабель.

    А если строить сеть по правилам строительства сетей - то надо получить в свое распоряжение блок IP
    адресов. Выделить их своим клиентам. И подключиться в мировой стек мирового интернета.

    И вот для этого и нужны провайдеры которые делают кучу организационно-технической работы.
    И список этой работы - ойой. Читать не перечитать.
    Ответ написан
    Комментировать
  • Я усложняю или так правильно?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если ты начинающий - то лучше написать работающее приложение. А архитектура должна быть мотивированной.
    Вот в книжках по шаблонам проектирования так и пишут дескыть motivation.

    А если на пустом hello world делать архитектуру - то оно выглядит как-то странно. И принцип KISS/Yagni
    никто не отменял. И бритву Оккама.
    Ответ написан
    2 комментария