Задать вопрос
  • Что за "ключи шифрования" которые требуют у администрации Телеграм?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У Дурова нет выбора на самом деле. Ему сделают предложение от которого нельзя отказаться.
    Либо он создает инфрастурктуру глобального наблюдения, как у Facebook, Whatsup e.t.c.
    мессенджеров "в законе". Либо его, как гражданина Франции упекут на 20 лет.

    Как вообще это повлияет на текущее управление сервисом Телеграм - мы не знаем. Я думаю,
    что на этот счет были созданы соотв. инструкции. Но будущее - туманно.

    Если по чесноку - то да. Была порнушка. Был Кракен с Гидрой. Постоянно реклама прыгала в глаза
    во многих каналах. Гемблинг, скам и крипта. И с точки зрения Франции Телега
    является площадкой для сбыта веществ.
    Франция не имеет такого покрытия тематических каналов. Может быть в этом проблема.
    Иначе французы сказали-бы ... ну слушайте Телега конечно ох и ах и наркоты много. Но есть
    и хороший контент. Но... видимо мало было развития Телеги во франции. Надо было Паше этот
    сегмент развивать сильнее. Не успел.
    Ответ написан
    Комментировать
  • Как написать терминал на Assembler?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В github есть игрушечные проекты загрузчиков с консолью. Можно там посмотреть.
    Еще - статьи про 512-k boot loaders. Видел с вшитым интерпретатором Forth.
    Ответ написан
    Комментировать
  • Какие есть книги/руководства по разработке "простого языка программирования" для новичка?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я отметил совет Нестерова как решение. Но добавлю.

    Тебе нужно подойти к преподавателю и задать ему макимальное число вопросов
    по поводу того что он хочет на самом деле видеть. Желательно сузить постановку
    до такого уровня чтоб ты успела за семестр это сделать. Например делать
    транслятор сразу без файлов и сетевого I/O. Пускай это будет просто REPL
    консоль как в ранних версиях Haskell.

    Есть софистические языки наподобие Brainfuck и Нормальных алгоритмов Маркова.
    Они тоже являются языками но скорее экспериментом доведенным до крайности
    чем практически полезным. Их можно реализовать за пару дней на любой другом
    императивном языке.

    Разработка Форт-подобного языка мне тоже кажется набиолее выгодной с точки
    зрения цена/производительность но Форт это достаточно нишевый язык и препод
    может быть недоволен. Возможно он хотел какие-то более развитые грамматики
    а не токько words and spacers.

    Можно разработать простейший Лисп но я не уверен что тут в семестр уложишся. Тем
    более что у тебя только базовый уровень всего остального. Но Лисп транслятор
    на минималках
    был бы самой красивой курсовой работой на потоке.
    Ответ написан
    Комментировать
  • Как исправить баги в коде?

    mayton2019
    @mayton2019
    Bigdata Engineer
    И есть ли тут ещё какие-либо баги которые я сразу не заметил?

    Это очень интересный вопрос. На мильон я-бы сказал.

    Вообще если на программу не написана спецификация или тесты то тогда совершенно
    невозможно точно утверждать является ли поведение багом или так задумал автор.
    Я вот к стыду не помню всех правил морского боя. Что там с кораблем. Когда он затонет?
    Как мы узнаем что поражены все части корабля?

    Глядя на код трудно сказать где там ошибка. Надо его запускать. А запуск связан с вводом
    выводом. Тоесть нужно потратить много человеко-часов вводя буквы и цифры и симулируя
    разные игровые кейсы. Сам понимаешь нет такого энтузиаста который бы осилил за ништяк
    тестировать.

    Поэтому по возможности напиши тестовый код (в соотношении хотя-бы 1:10) чтобы он тестировал
    автоматически основной код. Есть такая практика. Модульное тестирование.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Локации можно брать в расчет на глазок как приблизительную оценку. Как OSINT. И то с поправкой
    на диапазоны IP проксей и ВПН и с учетом совершенно сбитого или отключенного GPS приемника.
    Тоесть рассматривать это как рандомный шумящий фактор.

    В совокупности допустим если совмещаять данные GPS( country + region) и накладывать их
    на язык человека и на фактический язык которым он пишет месседжи - только тогда
    можно как-то обучать систему детектированию гео-информации на уровне например страны.

    Я сильно сомневаюсь что результаты такого голосования будут иметь какой-то смысл. Да и зачем
    вам делить локации?
    Ответ написан
    Комментировать
  • Допустим у меня есть массив byte[] bytes и этот массив символизирует машинныый код программы, могу ли я запустить эту програму из своего кода?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Можно скопировать в TMP и загрузить оттуда assembly вот как тут пишут

    https://stackoverflow.com/questions/465488/can-i-l...
    Ответ написан
    Комментировать
  • Как узнать, что диапазон находится в пределах нормы отклонений?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В науке и мат-статистике это называется процентиль (percentile).
    Многие математические пакеты и SQL диалекты имеют встроенную функцию
    для расчета П. Медиана и квартиль - это просто частные случаи процентиля.

    В твоем случае 60-й процентиль не более чем какая-то величина. Но тебе надо мерять
    не сверху а сверху и снизу. И тут надо немного подумать.

    По поводу колебаний. Если я правильно понимаю то 20 сек, 22 сек, 19 сек, 18 сек, 23 сек, 24 сек
    это выборка, а колебания - это разности между соседями. Тоесть

    2, -3, -1, 5, 1

    ?
    Ответ написан
  • Какой файловый менеджер с веб интерфейсом использовать для производства?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Очень сумбурно изложено. Но мне кажется что автору нужно
    - система версионного контроля (git)
    - индекс для поиска по содержанию файлов (lucene, sphinx, elastic)
    - веб интерфейс (их наверное очень много и надо искать отдельно)
    Ответ написан
    Комментировать
  • Как отслеживать изменения на сайте?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это сложный вопрос и вобщем на 99% он зависит от дизайна самого сайта.
    Сайт вам вобщем -то ничего не должен предоставлять для трекинга информации.
    Но согласно HTTP-протколу например GET/HEAD может вернуть заголовок документа
    где будет много интересного.

    Например артифакт gravitee-am-repository-api-4.4.4.jar внутри maven repository
    хранит много метаинформации о себе. Например etag (контрольная сумма md5)
    и last-modified метка времени которая показывает как давно обновлялся
    документ.

    $ curl --head https://repo1.maven.org/maven2/io/gravitee/am/repository/gravitee-am-repository-api/4.4.4/gravitee-am-repository-api-4.4.4.jar
    HTTP/2 200
    etag: "3f5e67c1a10ded796a27108ba3756823"
    content-type: application/java-archive
    last-modified: Mon, 19 Aug 2024 13:49:25 GMT
    x-checksum-md5: 3f5e67c1a10ded796a27108ba3756823
    x-checksum-sha1: 4ac91e2e6d1cfd393c505e6a8db6bf0031dcc517
    via: 1.1 varnish, 1.1 varnish
    accept-ranges: bytes
    age: 0
    date: Mon, 19 Aug 2024 22:52:11 GMT
    x-served-by: cache-iad-kcgs7200147-IAD, cache-fra-etou8220101-FRA
    x-cache: HIT, MISS
    x-cache-hits: 2, 0
    x-timer: S1724107932.544121,VS0,VE90
    content-length: 71040


    Если вам повезет - то можете использовать эти атрибуты как метод трекинга обновлений.
    Ответ написан
    Комментировать
  • Как организовать умное кеширование MYSQL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Можно попробовать материализовать какие-то срезы главной таблицы для
    быстрого извлечения информации. Классифицировать
    оперативные типы запросов и для каждого класса создать материализованную view читать оттуда.
    Структура mat-view может быть денормализованной например
    CREATE TABLE mview1 (id varchar primary key, doc JSON);

    Формат документа может быть произвольным но главное что он должен
    собирать ровно те сведенья которые нужны для responce ни больше ни меньше.

    По поводу быстрого извлечения 100 тысяч datarows из 2 млн. Это вызывает у меня
    большое изумление. Для кого эта выборка? Человек-оператор не успеет прочитать
    эти строки
    за разумное время. А для фоновых задач типа jobs скорость отлика вообще
    не важна. Особенно если джобы работают ночью например и еще и объединяются в пакет.

    И если у вас идет неравномерный доступ к таблице то возможно имеет смысл разделить
    ее на union из двух таблиц типа hot_data + historical_data. Это потребует переписывания
    софта но зато у вас будет очень рациональное использование индексов. Они будут маленькие
    и соотв. не будел вытеснения индексных страниц из кеша страниц.

    Вот. Разделить можно по дате создания бизнес-факта или по другим вризнакам где есть date+time.
    Ответ написан
    6 комментариев
  • Чем подобрать кириллический пароль из словаря к rar архиву?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мне кажется что успех мероприятия очень сильно зависит от версии RAR.
    Начиная с 5.0 автор внедрил настоящий AES/128/256. Это очень сильный
    симметричный шифр. Он-же опционально работает в браузерах при
    соединении TLS/SSL. Тоесть я-бы первым делом наудачу чекнул по заголовкам
    чем был сжат оригинальный архив.

    Если hashcat работает с кириллицей то тебе не нужны программы. Тебе любой Python-программист
    или PHP сделает список txt всех кириллических паролей от ААААААА до ЯЯЯЯЯЯЯ.
    Это очень простая работа для учащегося 1 курса универа. На 1 story point.
    Ответ написан
  • Как происходит перехват трафика?

    mayton2019
    @mayton2019
    Bigdata Engineer
    wireshark - имеет параметры. И он слушает список сетевых интерфейсов которые ты указал в параметрах
    запуска.

    Usage: wireshark [options] ... [ <infile> ]
    
    Capture interface:
      -i <interface>, --interface <interface>


    Если какой-то IP-пакет попадает на интерфейс - то он будет зафиксирован.
    Ответ написан
    Комментировать
  • Решение для 3D симуляции физики?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот тут внизу список хороший есть https://en.wikipedia.org/wiki/Physics_engine
    Ответ написан
    Комментировать
  • Почему различаются картинки?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Возможно Discord при трансляции видео использует дешевые алгоритмы сжатия
    которые дают толи dithering, толи квантование. В любом случае это тебя не должно
    волновать.
    Ответ написан
  • Насколько целесообразно использовать ленточную схд для продакшена?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Главное преимущество ленточного хранения - это то что производитель кассет гарантирует срок хранения
    до 20 лет (кажется). При правильной температуре и влаге. Поэтому выбор кассет может быть обусловлен
    этим. Магнитные диски и SSD не гарантированы таким сроком.

    Насколько я себе понимаю storage classes для AmazonS3/Microsoft Blob (у них есть классы archive, iceberg)
    это и есть дисковые интерфейсы к ленточным устройствам. Если у вас есть подписка - то вам вобщем-то
    ничего не надо покупать а лишь переключить класс хранения для всех файловых объектов в скоупе
    хранения.
    Ответ написан
  • Как проверить, что строка содержит только цифры и символы?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    public static boolean isDotOrDigit(String s) {
            return s.chars().allMatch(c -> Character.isDigit(c) || c == '.');
    }
    Ответ написан
    2 комментария
  • Денвер сообщает о нехватке памяти?

    mayton2019
    @mayton2019
    Bigdata Engineer
    По поводу data44.csv и прочего.

    Обычно разработчики не прогружают файлы целиком в memory. Это опасно.
    Файл имеет право во много раз превышать оперативу по размеру. И даже если
    тебе кажется что файл (влезет) на глазок, то будучи сериализованным в PHP
    array он может иметь накладные расходы.

    Для альтернативы var_dump попробуй распечатать его по строкам

    while (($data = fgetcsv($file, 15, ";")) !== false) {
        print($data);
    }
    Ответ написан
    4 комментария
  • Какая ширина канала нужна для видеохостинга?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Скорее всего ширина канала видеохостинга - это метафора. Тоесть ее конечно можно
    посчитать если у нас есть 2 хоста в сети. Клиент и сервер. В случае с YouTube, Netflix
    у нас есть много клиентов и есть много S3/BlobStorage хостов которые децентрализованы
    географически и ваш софт выбирает то хранилище которое ближе к вам. Ну ближе не в смысле
    километров а в смысле througtput.
    Ответ написан
    Комментировать
  • Какие книги прочитать чтобы написать свою операционную систему?

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

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

    Написание своей уникальной ОС - это дорога длиной в жизнь.

    Если писать не свою ОС а клонировать имеющиеся проекты то надо тоже на этом акцентировать
    внимание.
    Ответ написан
    7 комментариев
  • Как замокать StringJoiner?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Тебе не нужно мокать StringJoiner. Это точно тестовый антипаттерн потому
    что сам по себе Стринг джойнер не является источником данных. Это все равно
    что мокать функцию синуса или квадратный корень. Это просто звучит как бред.

    А мокать тебе надо твою бизнес логику которая продуцирует данные для другой
    бизнес логики которая тестируется. Вот.
    Ответ написан
    Комментировать