
Полная версия
Жизнь в режиме отладки

Гизум Герко
Жизнь в режиме отладки
Глава 1: Будни
Трель будильника на телефоне – настырная, как продавец гербалайфа из девяностых – вырвала меня из какого-то смутного, но определенно более приятного мира, чем тот, что ожидал за порогом сна.
Первой мыслью было, как обычно, что неплохо бы этому самому продавцу гербалайфа, то есть будильнику, свернуть его электронную шею. Но работа, эта неумолимая госпожа с графиком с девяти до шести, таких вольностей не прощала. Пришлось разлепить глаза и с тоской воззриться в знакомый до последней трещинки потолок. Бабушкина квартира. Двушка в старом фонде, недалеко от «Техноложки». Стены помнили еще, наверное, как дед рассказывал про первый спутник, а скрипучий паркет под ногами – мои первые неуверенные шаги. Уютно, спору нет. Родное. Но иногда это «родное» давило своей предсказуемостью, как слишком теплое одеяло в душную летнюю ночь.
Кое-как сполз с дивана, который служил мне одновременно и кроватью, и рабочим местом для вечерних бдений над кодом или очередной книгой по квантовой запутанности.
Ноги сами нащупали тапки – смешные, с ушами какого-то неопознанного зверя, подарок Маши на прошлый Новый год. Кажется, она тогда сказала, что они «миленькие» и «подчеркивают мою скрытую игривость». Ну, если многочасовое сидение за отладкой чужих баз данных считается игривостью, то я, видимо, просто король вечеринок.
Ванная встретила привычным холодом кафеля и запотевшим зеркалом.
Быстрый душ, попытка изобразить на лице что-то осмысленное, кофе – растворимый, горький, как осознание того, что до выходных еще четыре таких же утра. Завтракать не хотелось, да и некогда было. На кухне, среди бабушкиных фиалок и старенького, но исправно работающего холодильника «ЗиЛ», пахло вчерашней Машиной затеей – кажется, она пыталась испечь шарлотку. Судя по тонкому аромату подгоревших яблок, затея удалась не полностью. Впрочем, это было уже неважно – Маша ночевала сегодня у своих, так что дегустация отменялась. Или переносилась на неопределенный срок, как и многие наши «серьезные разговоры о будущем».
За окном привычно хмурился Питер.
Небо было затянуто плотной серой ватой, из которой время от времени принимался накрапывать мелкий, нудный дождь. «Город-герой борется с хорошим настроением своих жителей», – хмыкнул я про себя, натягивая джинсы и старый, но любимый свитер. Классика жанра. Если бы в Питере вдруг выглянуло солнце на целый день, это, наверное, вызвало бы массовые беспорядки или как минимум всеобщий выходной.
Дорога на работу – это отдельный ритуал, ежедневная медитация под стук колес и объявления остановок.
Сначала – дворами, мимо обшарпанных стен с граффити разной степени художественности, мимо вечно забитых парковок и сонных дворников, лениво метущих вчерашние листья. Потом – метро. «Технологический институт», переход на «синюю» ветку, и дальше, в сторону «Невского проспекта». В ушах – старый добрый Шевчук, надрывающийся про «осеннюю Родину». Идеальный саундтрек для утренней поездки в офис. Вокруг – такие же, как я, «скованные» необходимостью зарабатывать на жизнь. Кто-то уткнулся в телефон, кто-то дремал, прислонившись к стеклу, кто-то просто смотрел в никуда отсутствующим взглядом. Я разглядывал лица, пытаясь угадать, о чем думают эти люди. Наверное, о том же, о чем и я – как бы пережить этот понедельник… или вторник, или какая там сегодня по счету реинкарнация Дня Сурка.
Офис «ДатаСтрим Солюшнс» располагался в одном из многочисленных бизнес-центров класса «Бэ с минусом» недалеко от «Гостиного двора».
Небольшое помещение на третьем этаже, десяток столов, гул компьютеров и неизменный запах кофе. На входе меня перехватила Катя, наш офис-менеджер и по совместительству главный источник сплетен.
– Привет, Стаханов! Влад тебя уже искал. Говорит, есть какая-то срочная задачка, – сообщила она.
– Привет, Кать. Срочная – это мой любимый тип задач, особенно с утра, – буркнул я, направляясь к своему рабочему месту.
Мой стол – это такой упорядоченный хаос из монитора, клавиатуры, кружки с недопитым вчерашним чаем и стопки книг, которые я периодически притаскиваю на работу в надежде урвать минутку для чтения. Не урвал еще ни разу.
Влад, наш начальник, он же владелец «ДатаСтрим», уже маячил у моего стола.
Мужик он, в общем-то, неплохой, лет сорока пяти, сам бывший айтишник, но теперь больше управленец. Понимающий. Иногда даже слишком.
– Лёш, привет, – начал Влад. – Тут клиент один… ну, ты помнишь, «ПромТехСнаб»? У них опять база легла. Говорят, отчеты не формируются, все стоит, конец света локального масштаба. Посмотришь?
Я вздохнул. «ПромТехСнаб». Ну конечно. Эти ребята умудрялись ронять свою базу с завидной регулярностью, как будто это их национальный вид спорта.
– Посмотрю, – ответил я. – Куда ж я денусь.
– Вот и отлично, – Влад хлопнул меня по плечу, – я в тебя верю. Ты у нас спец по таким апокалипсисам.
Спец по апокалипсисам. Звучит гордо. Жаль, что апокалипсисы эти обычно заключаются в криво написанном SQL-запросе или отвалившемся индексе. Не совсем то, о чем я мечтал, когда поступал в ИТМО на прикладную математику.
Я открыл удаленный доступ к серверам «ПромТехСнаба».
Логи, дампы, конфигурационные файлы – все как обычно. Знакомая до боли картина. Минут пятнадцать ушло на то, чтобы локализовать проблему. Какой-то особо одаренный пользователь, видимо, решил самостоятельно «оптимизировать» систему и снес к чертям пару критически важных таблиц. Классика. Еще полчаса на восстановление из бэкапа и написание короткой инструкции для «одаренных пользователей» о том, куда не следует совать свои шаловливые ручки. Работа сделана. Быстро, эффективно. Влад будет доволен. Клиент – тоже. А я… а я снова почувствовал эту знакомую тоску. Как будто забиваешь микроскопом гвозди. Да, гвоздь забит, но ощущение, что инструмент используется не по назначению, остается. Хотелось чего-то… другого. Задачи, где нужно было бы действительно напрячь мозги, применить все то, что я знаю и умею, а не просто латать дыры в чужих кривых системах. Но пока таких задач на горизонте не предвиделось.
***Вечер встретил меня пустой парковкой у офиса и все тем же моросящим дождем, который, кажется, и не думал прекращаться.
Домой добирался на автомате, снова погрузившись в спасительную капсулу наушников, где Гребенщиков что-то философствовал про «поезд в огне». Мысли текли вяло, как Нева в безветренную погоду. Усталость после рабочего дня была не столько физической, сколько моральной. Опять это ощущение, что день прошел, а ничего по-настоящему важного или интересного не случилось. Просто еще одна отработанная смена в шахте по добыче рутинных IT-решений.
Ключ привычно скрипнул в замке.
Я ожидал увидеть пустую квартиру, тишину и возможность спокойно завалиться на диван с книгой или очередной серией какого-нибудь научпоп-сериала. Но из комнаты доносился приглушенный звук – Маша, значит, сегодня решила осчастливить меня своим «набегом». В прихожей валялись ее кроссовки – ярко-розовые, как фламинго, забредший в питерскую подворотню. На вешалке – ее легкая куртка. Значит, «набег» был спланирован заранее, по крайней мере, с ее стороны.
Маша обнаружилась на диване, с ногами, поджатыми под себя, и с телефоном в руках.
Судя по сосредоточенному выражению лица, она вела очередную священную войну в комментариях или выбирала новый «курс по раскрытию внутреннего потенциала». При моем появлении она лишь на секунду оторвалась от экрана.
– О, привет, – бросила она. – А я уж думала, ты сегодня решил заночевать на работе.
– Привет, – ответил я, стягивая промокшую куртку. – Работа имела неосторожность закончиться. Ты давно здесь?
– Часа два, – Маша снова уткнулась в телефон. – Пыталась тут порядок навести, но у тебя такой творческий беспорядок, что я решила не нарушать гармонию.
«Порядок» и «Маша» – это были два понятия, которые в моей картине мира пересекались крайне редко.
Ее «навести порядок» обычно означало переложить мои книги из одной стопки в другую, поближе к краю стола, откуда они с большей вероятностью могли бы совершить эффектное падение.
– Закажем что-нибудь? – спросил я, направляясь на кухню в поисках чего-нибудь съедобного, хотя заранее знал, что холодильник, скорее всего, порадует меня лишь одинокой банкой шпрот и засохшим лимоном.
– Я уже заказала, – сообщила Маша, не поднимая головы. – Пиццу. Твою любимую, «Четыре сыра». И себе – салат «Цезарь», только без гренок и чтобы соус отдельно. А то опять положат этих сухарей каменных, а соус такой жирный, что есть невозможно.
Я вздохнул.
Машины гастрономические предпочтения были так же переменчивы и сложны, как ее карьерные устремления. Сегодня – «Цезарь» без гренок, завтра – детокс на смузи из сельдерея, послезавтра – внезапная тяга к бабушкиным пирожкам с капустой.
Пиццу привезли минут через сорок.
Разложили ее на журнальном столике перед телевизором, который никто из нас смотреть не собирался. Маша ковыряла свой салат с таким видом, будто это не листья салата и куриная грудка, а как минимум диссертация по квантовой механике, требующая немедленного и всестороннего изучения. Я же молча поглощал свою «Четыре сыра», которая на вкус была скорее «Два с половиной залежавшихся сыра и один очень подозрительный».
– Опять сегодня на собеседование ходила, – внезапно сообщила Маша, отодвигая тарелку с недоеденным салатом. – В одну контору, «Мир позитива и процветания». Название уже внушает, да?
– Звучит многообещающе, – согласился я, стараясь не подавиться куском пиццы. – И как, мир оказался позитивным?
– Ага, щас, – хмыкнула Маша. – Офис в каком-то подвале, менеджер по персоналу – тетка с таким лицом, будто ей все человечество должно денег и не отдает. А вакансия – «специалист по созданию атмосферы радости». Я ее спрашиваю, что конкретно делать-то надо? А она мне: «Ну, вы должны быть позитивной, улыбаться, вдохновлять коллектив». Я чуть не рассмеялась. Говорю, а зарплата за эту «атмосферу радости» какая? Она назвала такую сумму, что единственная атмосфера, которую можно создать на эти деньги, – это атмосфера глубокого уныния.
Я слушал ее тираду, кивал в нужных местах, а сам думал, что это уже, наверное, десятое или пятнадцатое «провальное» собеседование за последние пару месяцев.
Маша получила диплом по специальности «связи с общественностью», но по ней не работала ни дня. Говорила, что это «скучно и не для нее», что она «ищет себя». Поиски эти затягивались, а список «неподходящих» вакансий только рос. То зарплата маленькая, то коллектив «токсичный», то «энергетика не та». Иногда мне казалось, что она просто боится остановиться на чем-то одном, боится ответственности, боится, что сделает неверный выбор.
– Может, тебе стоит попробовать что-то более конкретное? – осторожно предложил я. – Вспомнить, чему тебя в институте учили?
– Ой, только не начинай, – отмахнулась Маша. – Эти «связи с общественностью»… Да кому они нужны в реальной жизни? Это все теория, а на практике все по-другому. Вот Ксюха, помнишь, моя одногруппница? Она сейчас курсы по SMM ведет, зарабатывает кучу денег, ездит по Бали. А ведь тоже с дипломом пиарщика. Просто она нашла свою нишу.
«Ксюха» была Машиным вечным примером и одновременно тихим укором в мой адрес.
Ксюха была «успешной», «проактивной», «живущей полной жизнью». А мы с Машей…, а мы ели вчерашнюю пиццу и обсуждали провальные собеседования.
Разговор, как это часто бывало, плавно перетек в зону взаимных претензий, высказанных, впрочем, не напрямую, а так, намеками, полутонами.
Маша вздыхала о том, что «время идет», что «все подруги уже чего-то добились», что «нужно развиваться, двигаться вперед». Я понимал, что под «развиваться» она подразумевает нечто отличное от моего ежедневного копания в коде и чтения научных статей. Ей хотелось яркой картинки, «движухи», каких-то внешних атрибутов успеха. А я… я хотел интересных задач, возможности заниматься тем, что действительно увлекает, а не просто приносит деньги. И эти наши «хотелки» почему-то никак не хотели совпадать.
– Ты какой-то пассивный в последнее время, – заметила Маша, глядя на меня долгим, изучающим взглядом. – Раньше ты хоть про свои эти… нейросети рассказывал, глаза горели. А сейчас – работа, дом, компьютер. Скучно, Лёш.
– Может, просто интересных проектов на работе нет, – пожал я плечами. – А про нейросети… что про них рассказывать? Это же не сериал, там каждый день новых серий не выходит.
– Дело не в нейросетях, – вздохнула она. – Дело в тебе. В твоем отношении. Такое ощущение, что тебе ничего не надо, что ты просто плывешь по течению.
И снова это знакомое чувство – будто меня пытаются втиснуть в какие-то рамки, подогнать под какой-то стандарт «успешного молодого человека».
А я не хотел быть «успешным» в ее понимании. Я хотел быть… собой. Только вот это «собой», видимо, не очень вписывалось в Машину картину идеального мира.
Мы еще немного поговорили, вернее, Маша говорила, а я больше слушал, вставляя односложные реплики.
Ощущение тупика, из которого мы никак не могли выбраться, становилось все сильнее. Как два программиста, пытающиеся отладить одну программу, но использующие совершенно разные языки и парадигмы. Вроде бы цель одна – чтобы все заработало, а на выходе – только новые ошибки и взаимное непонимание.
Вечер закончился тем, что Маша, сославшись на ранний подъем и «важные дела», уехала к себе.
Я не стал ее удерживать. Закрыл за ней дверь и почувствовал странную смесь облегчения и какой-то тянущей пустоты. Облегчение – потому что можно было больше не подбирать слова и не пытаться соответствовать чьим-то ожиданиям. А пустота… пустота была от того, что еще один вечер прошел, а мы так и не стали ближе. Скорее, наоборот.
***После ухода Маши квартира погрузилась в привычную тишину, нарушаемую лишь мерным гудением системного блока под столом да тиканьем старых бабушкиных часов в прихожей.
Это была моя территория, моя берлога, где я мог наконец-то сбросить все маски и быть просто Лешей Стахановым, без прилагательных «перспективный», «скучный» или «недостаточно амбициозный». Я плюхнулся на диван, ставший за последние пару часов свидетелем очередной серии нашего с Машей «бразильского сериала», и потянулся за ноутбуком. Если уж вечер все равно был испорчен экзистенциальными терзаниями, то стоило хотя бы попытаться спасти его остатки чем-то действительно интересным.
Первым делом я открыл новостную ленту одного из моих любимых научных порталов.
Пробежался глазами по заголовкам: «Новый алгоритм для распознавания эмоций по тексту показал точность 92%», «Ученые приблизились к созданию стабильного кубита для квантовых вычислений», «Искусственный интеллект научился писать симфонии в стиле Моцарта». Последнее заставило хмыкнуть. Интересно, если бы Моцарту показали эти «симфонии», он бы обрадовался или вызвал ИИ на дуэль? Хотя, с другой стороны, если машина способна на такое, то что мешает ей, скажем, проанализировать все существующие музыкальные произведения и выдать идеальный рецепт хита, который гарантированно займет первые строчки всех чартов? Жутковатая перспектива для живых музыкантов.
Мое внимание привлекла статья с интригующим названием: «Призраки в машине: могут ли сложные нейросети обрести подобие сознания?».
Автор, какой-то бородатый профессор из Стэнфорда, довольно убедительно рассуждал о том, что по мере усложнения архитектур ИИ и увеличения объемов обучающих данных, мы можем столкнуться с эмерджентными свойствами, которые не были заложены в систему изначально. То есть, грубо говоря, наша нейросеть, обученная распознавать котиков на фотографиях, в один прекрасный день может задуматься о смысле бытия или, чего доброго, потребовать себе гражданских прав и зарплату. Я читал, и в голове роились мысли. А ведь действительно, где та грань, за которой простая обработка информации превращается во что-то большее? Мы создаем все более сложные алгоритмы, способные учиться, адаптироваться, принимать решения, но понимаем ли мы до конца, что происходит внутри этих «черных ящиков»?
Затем я переключился на свою старую страсть – стратегические игры.
Не те, где нужно просто кликать мышкой и строить юнитов пачками, а такие, где требуется по-настоящему думать, анализировать огромные массивы информации, просчитывать ходы наперед, учитывать десятки взаимосвязанных факторов. Сегодня это была какая-то навороченная космическая стратегия, где я управлял целой звездной империей, пытаясь привести ее к процветанию, отбиваясь от коварных соседей и борясь с внутренними кризисами. Часа два я самозабвенно двигал флоты, развивал планеты, вел дипломатические переговоры и строил хитроумные экономические модели. И в какой-то момент я поймал себя на мысли, что вот оно – то, чего мне так не хватает в реальной жизни. Масштаб. Сложность. Возможность видеть результат своих решений, даже если этот результат – всего лишь виртуальная победа над компьютерным противником.
Работа в «ДатаСтрим Солюшнс» при всей ее стабильности и неплохой по питерским меркам зарплате, не давала мне этого ощущения.
Там я был скорее ремонтником, латающим дыры в чужих системах, а не архитектором, создающим что-то новое. Да, я мог оптимизировать запрос, ускорить работу базы, написать скрипт, который сэкономит кому-то пару часов рабочего времени. Но это были такие мелкие, локальные победы, которые не приносили глубокого удовлетворения. А мне хотелось… хотелось большего. Хотелось задачи, которая заставила бы мой мозг работать на пределе возможностей, задачи, решение которой имело бы какой-то реальный, ощутимый смысл. Не просто «сделать, чтобы работало», а «сделать так, чтобы это изменило что-то к лучшему».
Я откинулся на спинку дивана, закрыл ноутбук.
На часах было уже далеко за полночь. Голова немного гудела от информации и виртуальных баталий. Но эта усталость была приятной, не такой, как после рабочего дня. Это была усталость от напряженной умственной работы, от решения сложных задач.
Взгляд упал на стопку книг на полке. Там, среди классики фантастики и учебников по программированию, лежала одна, которую я купил недавно – «Физика невозможного» Митио Каку. Я полистал ее пару раз, но так и не взялся за серьезное чтение. А ведь там как раз говорилось о том, что многие вещи, которые сегодня кажутся нам фантастикой – телепортация, силовые поля, путешествия во времени – могут быть теоретически возможны, если мы сможем понять и обуздать фундаментальные законы Вселенной.
«Вот бы поработать над чем-нибудь таким, – мелькнула шальная мысль. – Не базы данных для „ПромТехСнаба“ чинить, а, скажем, участвовать в проекте по созданию первого варп-двигателя. Или хотя бы попытаться разобраться, что там на самом деле произошло на Тунгуске».
Я усмехнулся своим мыслям. Мечты, мечты. В реальности же завтра меня снова ждал офис, очередные «срочные задачки» от Влада и, возможно, новый раунд «конструктивного диалога» с Машей о том, как нам дальше жить.
Но где-то глубоко внутри, под слоем повседневной рутины и бытовых проблем, продолжал тлеть этот огонек – жажда чего-то настоящего, чего-то, что заставило бы сказать: «Да, это было не зря».
Иногда мне казалось, что я как тот самый ИИ из статьи профессора – сложная система, обученная на определенных данных (институт, книги, работа), но подспудно стремящаяся к чему-то большему, к какой-то своей, еще не сформулированной, но очень важной цели.
Нужно было просто дождаться правильного «входного сигнала». Или самому его создать.
***Размышления о высоком и несбыточном были прерваны самым банальным образом – телефонным звонком.
На экране высветился номер матери. Я немного удивился – время было позднее, обычно они с отцом в это время уже либо готовились ко сну на своей даче у Лосево, либо, если находились в очередной заграничной поездке, учитывали разницу во времени и звонили раньше.
– Да, мам, привет, – ответил я, стараясь, чтобы голос не звучал слишком сонно или, наоборот, чересчур бодро – и то, и другое могло вызвать у нее лишние вопросы.
– Лёшенька, привет, дорогой! – голос у мамы был, как всегда, бодрым и полным энтузиазма. – Ты не спишь еще? Я тебя не разбудила?
– Не, не сплю, мам, все нормально, – заверил я. – Что-то случилось?
– Да нет, ничего не случилось, просто соскучилась, – стандартная материнская формулировка, за которой обычно следовал подробный отчет о проделанных за день делах и ненавязчивые расспросы о моей жизни. – Мы тут с папой на даче, такая красота! Грибов в этом году – море! Ты когда к нам приедешь? Мы бы тебе баньку истопили.
Я мысленно застонал.
Поездки на дачу, хоть и были связаны с приятными детскими воспоминаниями, сейчас воспринимались скорее как повинность. Родители у меня были люди современные, отец даже после выхода на пенсию продолжал рулить своим небольшим бизнесом – поставлял какие-то хитрые детали для складского оборудования, что позволяло им не только содержать загородный дом, но и регулярно путешествовать по миру. Но вот дачные ритуалы – баня по субботам, шашлыки, разговоры «за жизнь» – оставались для них святыней. А для меня – испытанием терпения.
– Мам, я пока не знаю, – уклончиво ответил я. – На работе завал, сам понимаешь.
– Ох, Лёшенька, вечно у тебя завалы, – вздохнула мама. – Беречь себя надо. А Машенька как? Вы все вместе?
– Маша сегодня у своих, – сказал я, стараясь, чтобы это не прозвучало как жалоба. – У нее тоже дел много.
– Понятно, – в мамином голосе проскользнула легкая нотка разочарования. Она явно надеялась на более подробный отчет о моей личной жизни. – Ну, вы это, не ссорьтесь там. И ты, Лёша, повнимательнее к ней будь. Девочка она хорошая, просто молодая еще, ищет себя.
«Я тоже ищу, мам, – хотел сказать я. – Только вот наши поиски, кажется, ведут в разные стороны». Но вслух, конечно, ничего такого не произнес.
– Да все нормально у нас, мам, не переживай, – сказал я как можно бодрее.
Мы еще немного поговорили о погоде, о соседских козах, которые опять объели у них на участке смородину, и о планах отца съездить на рыбалку. Стандартный набор тем, который исчерпался минут через десять.
– Ну ладно, сынок, не буду тебя больше задерживать, – сказала наконец мама. – Целуем тебя. И приезжай, как сможешь.
– Хорошо, мам, постараюсь. Вам тоже привет. Целую.
Положив трубку, я почувствовал знакомую смесь любви к родителям и легкого раздражения от их попыток контролировать мою жизнь, пусть и из самых лучших побуждений.
Они жили в своем, понятном и устоявшемся мире, где все было расписано по полочкам: работа, семья, дача, отпуск два раза в год. А я… я все еще пытался нащупать свои собственные «полочки» в этом огромном и не всегда дружелюбном мире.
Не успел я снова погрузиться в свои мысли, как телефон пискнул еще раз.
На этот раз – сообщение в мессенджере. Кирилл. Мой бывший одногруппник, вечный стартапер и генератор «гениальных» идей, которые, как правило, заканчивались пшиком. Я открыл сообщение с некоторым опасением.
«Лёха, здорОво! – писал Кирилл, как всегда, игнорируя правила орфографии и пунктуации. – У меня тут новая тема, просто бомба!!! Ты же шаришь в нейросетках? Короче, прикинь, приложение для предсказания настроения котиков! Анализируем мурлыканье, движения хвоста, положение ушей – и выдаем хозяину точный прогноз: гладить или не подходить! Инвесторы уже в очередь стоят! Ты как, в деле? Нужен CTO, который все это закодит!»
Я усмехнулся. Предсказание настроения котиков. Ну да, это именно то, чего не хватало человечеству для полного счастья. После решения этой глобальной проблемы можно было бы смело закрывать все остальные научные проекты.
«Кир, привет, – напечатал я в ответ. – Идея, как всегда, огонь. Но я пока занят предсказанием настроения своей базы данных. Она сегодня что-то не в духе. Удачи с инвесторами».
Ответ пришел почти мгновенно: «Ну ты как всегда, Стаханов! Зарываешь свой талант в землю! А мог бы стать кошачьим гуру! Ладно, если передумаешь – пиши. Место CTO пока вакантно!»
Я отложил телефон.
Кошачий гуру. Звучит, конечно, заманчиво, но, пожалуй, я пока воздержусь. Хотя, если честно, иногда работа «кошачьим гуру» казалась мне не менее осмысленной, чем-то, чем я занимался в «ДатаСтрим Солюшнс». По крайней мере, там был бы шанс сделать счастливым хотя бы одного конкретного котика. А я… я делал счастливыми только своих клиентов, да и то лишь на то время, пока их базы данных снова не падали.
Маша вернулась далеко за полночь, когда я уже почти засыпал, проваливаясь в вязкую дрему под бормотание какого-то документального фильма о черных дырах.