Вадим Кирпиков – Сбой в жизни (страница 5)
«И что ты напишешь своему железному дружку? – Сирена очнулась от оцепенения. Ее голос был полон презрения, но в нем слышалась и нотка тревоги. Она не понимала правил этой новой игры. – Пожалуешься ему на жизнь? Попросишь сгенерировать тебе план успеха? Он – калькулятор, Новиков. Сложный, но калькулятор. Он не даст тебе того, что тебе нужно».
Возможно. Но он дал мне то, чего я не ожидал: зеркало. Не кривое зеркало моего сознания, в котором я видел только урода, а плоское, идеальное зеркало логики, отражающее только факты.
Я проигнорировал ее. Мои руки легли на клавиатуру. Что я буду делать? Ответ был очевиден. То единственное, что я умел. То единственное, в чем был порядок и смысл. Создавать. Писать код. Но не тот, что раньше. Не учебные проекты, не тестовые задания, не попытки впечатлить безликих тимлидов. Что-то свое. С нуля.
Я открыл файловый менеджер. Папка «Projects». В ней – все мое прошлое. Репозитории моей никчемности. Тот самый «пет-проект», который так снисходительно оценил бородатый хмырь на собеседовании. Курсовые работы, которые казались мне когда-то вершиной сложности. Недоделанный клон какой-то игры. Каждый каталог, каждый файл был пропитан запахом неудачи, пах компромиссом и страхом. Это был архив моей слабости.
«Не трогай, – зашипела Сирена, почувствовав мою решимость. – Это все, что у тебя есть. Это доказательство, что ты хоть что-то пытался делать. Ты сотрешь это, и от тебя вообще ничего не останется. Пустое место».
«Я и есть пустое место, – подумал я. – И это моя главная сила. На пустом месте можно построить все, что угодно».
Мои пальцы замерли над клавишами. Shift+Delete. Комбинация, не оставляющая шансов. Никакой корзины. Никакой возможности восстановления. Прямой путь в небытие. Я выделил все папки. Они подсветились синим, как мишени в тире. И я нажал. Система запросила подтверждение. «Вы действительно хотите безвозвратно удалить эти объекты?» Я посмотрел на это окно. И впервые за долгое время улыбнулся. Криво, одними уголками губ. Да. Я действительно хотел. Я жаждал этого.
Enter.
Секундное шуршание жесткого диска. И все. Папка «Projects» стала пустой. Я стер все. Безвозвратно. Я только что сжег свой единственный дом дотла, стоя на пепелище в одной рваной одежде. И дышать стало легче.
Теперь – новый. Я создал новую папку. Нужно было имя. Имя – это идентификатор. Это декларация. Оно не могло быть случайным. Я думал о том, что хочу создать. О системе, которая меня отвергла. О ее правилах, ее API, которому я не соответствовал. О ее бесконечных требованиях к валидации, которые я не мог пройти. Мне нужна была своя система. Со своими правилами. Со своей точкой отсчета.
Аксиома.
Слово возникло в голове само. Четкое, твердое, как гранит. Аксиома – утверждение, принимаемое без доказательств. Фундамент. Истина, на которой строится все остальное. Это было оно. Не просто название проекта. Это был мой новый манифест. Я больше не буду никому ничего доказывать. Я сам стану точкой отсчета.
Я напечатал имя. «Axiom». Нажал Enter. Открыл пустую папку. Открыл терминал. Команды полились сами собой, как будто пальцы знали их наизусть, как будто они ждали этого момента всю жизнь. Создать виртуальное окружение. Активировать его. Установить зависимости. Создать структуру проекта. Файлы и папки появлялись в каталоге, как по волшебству. Скелет будущего организма. Позвоночник, на который я буду наращивать мясо кода.
Я открыл главный файл. app.py. Он был пуст. Белый лист. Бесконечное поле возможностей и будущих ошибок. Здесь должна была быть она. Первая строка. Фундаментальный камень.
«И что ты напишешь, творец? – Сирена вернулась, ее голос сочился сарказмом. – „Hello, World“? Очень символично. Привет, мир, который тебя ненавидит. Привет, мир, которому на тебя плевать. Гениальное начало для гениального проекта, который сдохнет на твоем жестком диске, так и не увидев продакшена».
Я снова проигнорировал ее. Я не слышал ее. Я слышал только щелчки клавиш под своими пальцами и гул системного блока. Я был в потоке. В том самом состоянии, которое раньше настигало меня лишь урывками, когда я забывался, решая сложную алгоритмическую задачу. Но сейчас это было другое. Это была не задача. Это была миссия.
Что я создавал? Финтех. Да. Самая циничная, самая жестокая и самая честная сфера. Мир денег не терпит соплей. Он оперирует только цифрами. Ноль и единица. Прибыль и убыток. Ты либо эффективен, либо нет. Но даже там все было построено на человеческом факторе. На предвзятости. На субъективной оценке. Кредитный скоринг, который учитывает твою профессию, семейное положение, твою гребаную репутацию. Инвесторы, которые вкладывают деньги не в идею, а в харизму основателя. Система, где правильная улыбка важнее правильного кода.
Моя «Аксиома» будет другой. Она будет системой, основанной на чистых данных. Алгоритмический анализ финансовых потоков, предсказание рисков на основе математики, а не психологии. Система, которая даст шанс таким, как я. Тем, кто не умеет «продавать себя», но умеет делать дело. Система, для которой мой проваленный собес – просто шум, нерелевантная информация. Система, которая будет смотреть не на лицо, а на код. На результат.
Пальцы замерли над клавиатурой. Первая строка. Она должна была задать тон всему.
from core.logic import AxiomEngine
Еще не было ни папки «core», ни файла «logic», ни класса «AxiomEngine». Это было объявление о намерениях. Программирование через интерфейс. Я сначала создавал абстракцию, идею, и только потом собирался наполнять ее содержанием. Я говорил своему будущему коду: здесь, в самом сердце системы, будет биться твое ядро. Движок, основанный на моей логике.
«Движок твоей гениальности? – не унималась Сирена. – Ты написал одну строчку, которая даже не работает. Ты объявил переменную, под которой нет никаких данных. Пустой указатель, Новиков. Как и ты сам. Ты – ходячий NullPointerException».
Я не стал с ней спорить. Я просто нажал Enter и написал вторую строку. И третью. Я создавал базовый каркас приложения, настраивал конфигурацию. Каждая точка, каждая скобка, каждая переменная были актом творения. Я брал хаос пустого файла и навязывал ему свою волю, свою структуру. Здесь будет логгер. Здесь будет подключение к базе данных. Здесь – обработчик API-запросов. Я строил свой мир. Маленький, пока еще состоящий из нескольких десятков строк, но мой. Мир, где все подчинялось правилам, которые установил я. И в этом мире не было места для нее. Для Сирены. Она могла кричать с той стороны монитора, но здесь, в коде, ее не существовало. Здесь была только логика.
Часы исчезли. Время сжалось в одну точку, в мигающий курсор на экране. Комната погрузилась в полную темноту, и единственным светом был прямоугольник монитора, исписанный моими командами. Я не чувствовал голода, не чувствовал усталости. Я был чистой функцией, принимающей на вход кофеин и выдающей на выходе строки кода.
Я очнулся, когда глаза начало жечь от сухости. Я моргнул, и мир на секунду расплылся. Я посмотрел на часы в углу экрана. 05:17. Я просидел почти всю ночь. Передо мной был уже не пустой файл, а несколько модулей. Скелет обретал первые сухожилия. Ничего не работало, но все было на своих местах. Был план. Была архитектура. Была первая строка.
Я откинулся на спинку кресла. Тело затекло и гудело. Но внутри, под слоем умственной усталости, бурлило что-то еще. Энергия. Неиспользованная, злая, физическая энергия. Та самая, что родилась вчера в баре из ледяной пустоты. Мой мозг был выжат, как лимон, но мое тело было наэлектризовано. Оно требовало выхода. Сидеть на месте было невыносимо. Я чувствовал себя так, будто внутри меня заперли разъяренного зверя. Он метался в клетке моих ребер, царапал легкие, требовал движения.
«И куда ты пойдешь? – спросила Сирена. Ее голос был тише. Она была сбита с толку. Моя многочасовая концентрация вытеснила ее на периферию сознания. – В три часа ночи ты был на грани. А теперь готов горы свернуть? Жалкая эйфория. Она пройдет. Утром ты посмотришь на свой „гениальный“ код и поймешь, какое это убожество. И все начнется сначала».
Может быть. Но сейчас было не утро. Сейчас было сейчас. И зверь внутри требовал вырваться.
Я встал. Ноги были ватными. Подошел к шкафу, наощупь вытащил какие-то старые спортивные штаны и футболку. Нашел кроссовки, у которых почти стерлась подошва. Я не занимался спортом никогда. Физкультура в школе и в универе была пыткой, унизительным ритуалом, где я всегда был последним, самым неуклюжим, самым слабым. Но сейчас речь шла не о спорте. Речь шла об изгнании.
Я вышел на лестничную клетку. Воздух был холодным, пах пылью и старостью. Спустился по лестнице, толкнул тяжелую входную дверь.
И предрассветная прохлада ударила в лицо. Небо на востоке только начинало светлеть, приобретая больной, сизо-фиолетовый оттенок. Улицы были пусты. Ни машин, ни людей. Только оранжевые фонари, выхватывающие из темноты мокрый асфальт и голые, черные ветви деревьев. Город спал. И в этой тишине я чувствовал себя единственным живым существом во вселенной.
Я не знал, что делать. Я просто пошел вперед. Потом быстрее. И побежал.
Первые десять шагов были ошибкой. Я споткнулся, чуть не упал. Движения были рваными, неловкими. Я никогда не бегал просто так. Я бегал только за автобусом.