Я хотел доказать жене, что нумерология — это Math.random(), и написал алгоритм на JS. А потом прогнал через него кейс Ларисы Долиной...
Как основатель IT-продакшна автоматизировал эзотерику, чтобы сэкономить семейный бюджет, а в итоге нашел баг в реальности на 100 миллионов рублей.
Дисклеймер
Я знаю, где я пишу. Я руковожу digital-интегратором Bustlers. В рабочее время мы автоматизируем процессы, внедряем ИИ, пишем парсеры банковских реестров для НКО и связываем облачные 1С с коробочными. Я верю в метрики, архитектуру и чистый код.
Этот пост — история одного пет-проекта, который начался как шутка скептика, а закончился странным совпадением.
Пролог: Когда жена — эзотерик, а ты — инженер
Моя жена увлекается «Матрицей Судьбы». Для тех, кто не в курсе: это система анализа личности по дате рождения. Раньше это выглядело так: жена сидит с калькулятором, считает, рисует диаграммы. Я смотрю на это и, как любой разработчик, испытываю боль. — Зачем считать руками, если есть код? — Зачем платить за расшифровки, если можно написать скрипт?
У меня родилась идея фикс: «Я сейчас накожу этот алгоритм, загоню туда базу данных и докажу ей на цифрах, что совпадений нет. Что всё это — ошибка выжившего и эффект Барнума».
Стек и реализация
Так как это пет-проект «по фану», я не стал тащить туда Highload-архитектуру, которую мы строим в Bustlers.
Взял простой стек:
Бэк на PHP (для математики 3-го класса хватает).
Фронт на JS.
Логика: парсим дату -> разбиваем на арканы -> мапим значения из JSON-базы.
Собрал MVP за пару вечеров. Задеплоил. Жена довольна — рутина ушла. Я доволен — жду момента, чтобы поймать систему на ошибке.
Unit-тест, который провалился (Кейс Долиной)
Относительно недавно прогремела история: Лариса Долина продала квартиру за 112 млн рублей и сама отдала деньги мошенникам. Я, как человек, который внедряет системы безопасности и антифрод-логику в бизнес-процессы, был в шоке. Взрослая, успешная женщина, штат юристов. Как она могла подписать документы?!
Решил прогнать её дату (10.09.1955) через свой свежий скрипт. Чисто посмотреть «логи» её судьбы.
Смотрю в выдачу и понимаю, что мой скепсис дал трещину. Алгоритм подсветил ровно те уязвимости, которыми воспользовались мошенники.
Вот сухие факты из разбора (цитирую описание из базы):
1. Финансовый канал — Аркан 8 («Справедливость») В «минусе» (в проблемной зоне) этот код означает: «Проблемы с законом, судами, официальными документами». Факт: Долину развели не в подворотне. Она официально, через реестры и нотариусов, подписала документы. Уязвимость сработала через бюрократию и закон — ровно по 8-му аркану.
2. Кармический хвост — 18-3-12 (Программа «Магическая жертва» / Иллюзии) Ключевой тут — 18 Аркан («Луна»). В базе знаний написано: «Человек живет в иллюзиях, страхах, легко поддается внушению. Риск ухода в выдуманную реальность». Факт: Мошенники создали для неё целую вселенную «спецоперации». Она месяцами жила в иллюзии, что спасает страну. Это чистая работа по 18-му коду.
3. Центр личности — 10 Аркан («Колесо Фортуны») Люди-потоки. Внушаемые, ведомые. Если перехватить управление их «потоком», они сделают всё сами.
Выводы разработчика
Я не стал фанатиком. В Bustlers мы продолжаем опираться на аналитику и факты, а не на карты Таро.
Но этот пет-проект arcflow.ru я решил оставить. Во-первых, это красивый тренажер для фронтенда (зацените дизайн, старались сделать не стыдно). Во-вторых... ну, согласитесь, вероятность того, что Math.random() выдаст именно комбинацию «Документы» + «Иллюзии» для человека, который потерял квартиру из-за иллюзий в документах — статистически ничтожна.
Сталкивались ли вы с тем, что иррациональные вещи вдруг подтверждались сухими цифрами? Или, может, найдете баг в моем алгоритме?
P.S. Ссылку на проект оставлю в комментариях. Денег не прошу, регистрации нет. Мне интересно собрать выборку: это баг в коде или баг в матрице реальности?