Построение системы обнаружения спама с использованием Naive Bayes и Python: от теории к производству

Построение системы обнаружения спама с использованием Naive Bayes и Python: от теории к производству

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

15 декабря 2025 14:00 · 5 минут · 913 слов · Maxim Zhirnov
Волна профсоюзов приближается к технологиям: будут ли разработчики бастовать в 2026 году?

Волна профсоюзов приближается к технологиям: будут ли разработчики бастовать в 2026 году?

Кофемашина в вашем офисе уже не в лучшем состоянии. Снова заканчиваются бесплатные закуски. Кто-то опубликовал в канале Slack ещё один скриншот письма об увольнении, и вдруг все немного нервничают. Вы листаете ленту новостей и видите очередную статью об объединении технических работников в профсоюзы, и думаете: «Это действительно происходит? Буду ли я бастовать у штаб-квартиры в следующем году?» Добро пожаловать в 2025 год, где технологическая индустрия, когда-то бывшая Диким Западом трудовых отношений, наконец-то получает проверку реальности от собственных работников....

15 декабря 2025 06:00 · 6 минут · 1110 слов · Maxim Zhirnov
Освоение Канбана: От хаоса к потоку в разработке программного обеспечения

Освоение Канбана: От хаоса к потоку в разработке программного обеспечения

Повесть об организованном бедламе Представьте себе картину. Три часа дня, пятница. Ваша команда утопает в pull request. Кто-то работает над функцией X, кто-то исправляет ошибки в функции Y, выпущенной три недели назад, и никто не знает, что делает функция Z — вероятно, она находится в спящем режиме в какой-то ветке. В канале Slack царит какофония из вопросов: «Подождите, мы сегодня деплоим?» и «Я думал, что Jenkins должен автоматически собирать». Знакомо? Добро пожаловать в мир неструктурированной разработки программного обеспечения....

14 декабря 2025 14:00 · 6 минут · 1203 слова · Maxim Zhirnov
Почему Ваш код не так эффективен, как Вы думаете

Почему Ваш код не так эффективен, как Вы думаете

Помните, что «эффективный код» — это как «хороший вкус»: у каждого своё мнение, но код большинства людей менее эффективен, чем они думают. Мы все бывали в такой ситуации: мы что-то пишем, это работает, не выдаёт ошибок сразу, и мы думаем: «Миссия выполнена». Но между кодом, который просто работает, и кодом, который работает хорошо, существует огромная разница. Именно в этой пропасти умирают мечты о производительности. Правда в том, что неэффективность не всегда очевидна....

14 декабря 2025 06:00 · 5 минут · 1037 слов · Maxim Zhirnov
Внедрение CI-технологий с непрерывной интеграцией: от хаоса к гармонии кода

Внедрение CI-технологий с непрерывной интеграцией: от хаоса к гармонии кода

Ах, непрерывная интеграция. Эта практика, которая отличает команды, развертывающие код с уверенностью, от команд, которые делают это, нервно вцепившись в свои клавиатуры. Если вы когда-нибудь испытывали радость от слияния трёхнедельных противоречивых изменений в пятницу днём в 17:00 — что ж, пристегните ремни, потому что непрерывная интеграция вот-вот станет вашим новым лучшим другом. Проблема, которую мы решаем Позвольте мне описать вам ситуацию: вечер четверга. Ваша команда работала над отдельными функциями в течение двух недель....

13 декабря 2025 14:00 · 5 минут · 1 слово · Maxim Zhirnov