HTTP 419: Обман не прошёл

HTTP 419 Обман не прошёл

Часть 1: Принц и спам

Письмо упало в почтовый ящик Алексея Фильтрова точно в тот момент, когда его система машинного обучения в сто двадцать восьмой раз не смогла отличить рецепт борща от спама про увеличение различных частей тела. Антиспам-движок, над которым он работал последние три года, снова впал в глубокую депрессию.

— Дорогой друг! — сообщало письмо голосом Моргана Фримена в голове Алексея. — Я принц Олувафанкунми Адебайо из славного города Лагос. К несчастью, мой отец, король нигерийского спама…

Алексей машинально потянулся к кнопке “спам”, но его рука замерла на полпути. Что-то в этом письме было не так. Во-первых, оно было написано безупречным русским языком. Во-вторых, содержало корректные гиперссылки на Wikipedia об истории Нигерии. А в-третьих, и это окончательно выбило Алексея из колеи, письмо включало подробный код на Python, иллюстрирующий схему денежных переводов.

— Вот те на, — пробормотал себе под нос Алексей, — да это же паттерн “Строитель” в действии!

Следующие два часа он провел в увлекательной переписке с нигерийским принцем, который неожиданно оказался большим фанатом Clean Code и даже цитировал Мартина Фаулера. Они обсудили плюсы и минусы различных паттернов проектирования, поспорили о преимуществах функционального программирования и даже обменялись парой шуток про JavaScript.

— А вы знаете, — написал в какой-то момент принц, — что RegExp для валидации email может быть длиннее, чем конституция небольшой африканской страны?

Алексей хрюкнул от смеха, случайно опрокинув на клавиатуру свой любимый кофе с названием “Error 404: Coffee not found”. В этот момент его антиспам-система неожиданно ожила и выдала первый за день осмысленный результат: “Вероятность спама: 146%. Письмо слишком хорошо написано, чтобы быть настоящим”.

Часть 2: Собеседование с судьбой

Офис компании “КодЧистых” располагался на тринадцатом этаже бизнес-центра “Вавилонская Башня”. Охранник на входе, увидев высокого темнокожего мужчину в национальном нигерийском наряде и с ноутбуком под мышкой, только молча отсалютовал банкой энергетика.

— Я к Алексею Фильтрову на собеседование, — произнес посетитель с легким акцентом. — Меня зовут Олу… можно просто Олег.

В переговорной комнате Алексей теребил свой бейджик с надписью “Я не баг, я фича”. Перед ним лежало резюме, в котором среди прочего значилось: “Опыт работы: 5 лет разработки высоконагруженных систем рассылки персонализированных предложений (спам-технологии)”.

— Значит, решили сменить сферу деятельности? — спросил Алексей, разглядывая кандидата поверх очков.

— Да, знаете, — улыбнулся Олувафанкунми, — в какой-то момент я понял, что создавать защиту от спама намного интереснее, чем сам спам. Это как в шахматах — играть за белых или за черных. Суть одна, а подход разный.

— А как же наследные миллионы? — не удержался Алексей.

— Ах, это, — махнул рукой принц. — Я их вложил в биткоины. В 2009 году. — Он достал из портфеля потрепанный ноутбук с наклейкой “Keep calm and catch exceptions”. — Кстати, я тут набросал пару идей по улучшению вашего антиспам-движка. Как насчет использования трансформеров для анализа контекста?

Через час они все еще сидели в переговорной, увлеченно обсуждая архитектуру новой системы. На доске красовалась схема, больше похожая на карту метро в час пик, а в углу сиротливо остывал третий по счету кофе.

— Ну что ж, — подвел итог Алексей, — думаю, мы нашли нашего джуниор-разработчика. Добро пожаловать в команду!

— Кстати, — Олувафанкунми хитро прищурился, доставая из портфеля потрёпанную флешку, — я тут набросал эвристику для рецептов. Знаете, в чём главная проблема с борщом? У него же энтропия как у спама зашкаливает: свекла с чесноком, капуста с перцем… Идеальная маскировка для спам-рассылки выглядела бы точно так же.

Алексей уставился на строчки кода, где комментарии к функциям были написаны в виде кулинарного рецепта. Антиспам-система тихонько пискнула и выдала на экран: “Warning: слишком много капусты в исходном коде”.

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

Грамотеус – когда наука объясняет повседневность
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я соглашаюсь с политикой конфиденциальности