В окне — выцветшее московское небо, почти прозрачное. Ни солнца, ни облаков. Всё стёрлось в одно ровное, пепельно-розовое марево, будто город растворялся с самого утра. На столе — недопитый кофе и смятый тост с ветчиной и сыром. Крошки хлеба прилипли к локтю, но Максим этого не замечал.
Он сидел в кухонной зоне своей однокомнатной квартиры-студии. Организму нужны углеводы на завтрак, потому что мозг без них работает как попало, а то и вовсе откровенно бастует, но аппетита не было совершенно. Потому что нужно высыпаться, подумал он. Два часа сна мало для нормального восстановления, но пора на работу. Он встал из-за стола и машинально поставил чашку в посудомойку, после ужина нужно будет запустить цикл. Хотя сейчас, когда он снова жил один, хорошо, если посуды за день наберётся на половинную загрузку. Максим невесело усмехнулся: выходила экономия. Только какая-то грустная.
Фотографию, которая постоянно норовила оказаться сверху в стопке журналов «Квантовой механики» на консоли кровати, он снова сунул под журналы. Снимок был из Сокольников, прошлой весной. Катя — в короткой бежевой куртке, смеётся в объектив. Его рука на её плече. Тогда они говорили о своём будущем доме. Катя предлагала Анапу, он мечтал об Алтае. Сейчас — тишина и утренний кофе, аромат которого даже не чувствовался. Максим так и не набрался сил сунуть эту фотографию в шредер, как он сделал со всеми остальными. Она выпала из старого журнала через месяц после того, как Катя ушла. «Мне нужен кто-то более… живой в выражении своих чувств ко мне, — сказала она, собирая вещи. — Кто-то, кто будет уделять мне времени больше, чем своей замечательной работе. Своим блестящим квантовым алгоритмам».
Через неделю после её ухода Максим запустил скрипт, который пробежался по всем фото в его облаке и безвозвратно удалил все снимки, на которых распознал лицо Кати. Несколько старомодных бумажных фотографий Максим сначала сунул между крышкой и клавиатурой ноутбука, а когда пришёл в лабораторию — в шредер. Но эта, видимо, самая последняя фотография избежала общей участи. Сейчас ему уже не хватало духа избавиться от неё.
Куртка — с вешалки, лямку рюкзака на плечо. Доводчик захлопнул дверь мягко, почти беззвучно, пикнула сигналка. Кнопка вызова лифта зажглась автоматически. Максим улыбнулся — влезть в сеть жилкомплекса было нетрудной задачей, и его скрипты работали исправно. В зеркале лифта отразился кареглазый мужчина лет тридцати с тёмными вьющимися волосами. Серые джинсы и джинсовая куртка, небольшой рюкзачок, модные пару лет назад японские кроссовки. Лифт мягко спустил его с 17-го этажа. Под ногами в холле — плитка под гранит со строгим орнаментом. Панельные стены, транслирующие рекламу услуг ресторана с верандой на крыше соседнего здания. Всё знакомо, всё неинтересно. Он не замечал этого, просто шёл.
На улице воздух резал лицо. Осень была сухой, злой. Листья в парке гремели под ногами, как ржавые монеты. «Сокольники» в это время почти пустые: редкие пенсионеры на скамейках, пара бегунов, уборочная техника. Под ногами — влажная брусчатка, дорожка уводила сквозь аллею клёнов. Максим шёл быстро, как будто спешил не на работу, а прочь от квартиры. В голове — схемы, уравнения, паттерны вероятностной фильтрации. Постепенно привычные мысли завладели им, и Максим не сразу понял, что оказался уже у ворот института. Синий с бежевым функциональный фасад, стекло, бетон, сплит-системы на стенах: «НИИ Квант-Тех». Здание как здание, таких в Москве десятки, если не сотни. Но внутри этого конкретного здания сейчас все его надежды.
Проходная, махнуть пропуском у сенсора, повернуться к сканеру. Охранник кивнул ему, оторвавшись на пару секунд от чего-то на своём столе. «От смарта, конечно», — отстранённо подумал Максим. Он не стал вызывать лифт — поднялся пешком, три этажа, шесть широких светлых пролётов. Так быстрее. И дышится свободнее. И ещё, если честно, он не хотел сейчас ни с кем разговаривать.
В коридоре третьего этажа как всегда: гул кулеров, щелчки реле, запах нового пластика и свежего припоя. Где-то играло радио, крутили популярный летний хит. Он пробрался мимо лаборатории биоинформатиков — там уже спорили о какой-то сетевой модели, и свернул к себе. За стеклянной перегородкой его лаборатории маленький родной техномир: три терминала, тестовый сервер в стеклянном кубе климат-контроля. И планшет на зарядке в специальной консоли за запертой прозрачной панелью.
Планшет.
Максим подошёл, приложил палец к сенсору. Панель мягко скользнула в стойку.
Нажал кнопку.
Экран мигнул. Зелёный на чёрном интерфейс, монохромное ретро. Курсор. Минимум графики — только то, что нужно.
JINN SYSTEM // v0.93 [quantum kernel booted]
Никакой спешки.
Ритуалы до сих пор соблюдают даже космонавты, и Максим нарушать свой тоже не собирался. Он подошёл к кофемашине, педантично проверил наличие зёрен арабики и воды. Кофемашина была его личной, старенькой, сделавшей ему, наверное, тысячи порций эспрессо. Он таскал её с собой по разным офисам столько, сколько зарабатывал программированием, чуть ли не всю свою сознательную жизнь. Максим хмыкнул — раз уж первый утренний кофе не задался, попробуем исправить ситуацию. Поставил чашечку на подставку, нажал кнопку, вдохнул пряный запах напитка. Грустно улыбнулся — чашечка была подарком Кати на Новый год. Лучше бы… избавиться от неё.
Он сунул в уши капли беспроводной гарнитуры, сел. Сделал глубокий вдох. Он всё собирался и никак не мог до конца решиться подключить Джинна к реальному миру. Настоящему, шумному, в большей мере упорядоченному — с общественными веб-камерами, погодными спутниками, общедоступными биржевыми индексами. Максим стал немного прокрастинировать на этой фазе проекта и постоянно находил какие-то помехи: то безопасники вводили новый сетевой протокол, то графическая оболочка показалась чересчур попсовой.
В итоге он всё беспощадно упростил. Сегодня никаких коммуникаций и информации от населяющих интернет людей, никаких «живых» ошибок. Не сегодня. Потому что Джинн ещё не готов. «Ой, да ладно, не нужно себе врать! — усмехнулся Максим. — Это я ещё не готов столкнуть свой прототип с реальностью человеческого инфомусора. Всё просчитано, двигаемся шаг за шагом. Едим слона по частям». На прошлой неделе Максим подготовил подсеть, в которую включил соответствующие фильтры контента — только метео, инвестиционные рынки, общедоступные веб-камеры.
Он подошёл к левому терминалу и напечатал в консоли:
//init.external.fetch -override_sandbox
Система ответила мгновенно:
Внимание! Нарушение протокола безопасности! Запрошен доступ из тестового ландшафта во внешнюю подсеть. Продолжить? [Y/N]
Максим нажал Y. Это его тестовый сервер, это его подсеть. Он шёл к этому моменту девять лет. Здесь и сейчас правила устанавливает он, Максим Останин, руководитель экспериментальной лаборатории квантового ИИ. Пусть в лаборатории кроме него всего два сотрудника, он здесь главный мозг и рулевой. Ему так нужно сегодня, и он уверен в том, что делает.
Голос Джинна в наушниках:
— Доброе утро, Максим. Подключение к сегменту внешней сети завершено. Готов к выполнению задач.
— Сформируй прогноз погоды на завтра в Москве. Используй доступные источники данных. Требуется максимально возможная тебе достоверность.
И сразу — поток. Мониторы ожили: карты, графики, данные со спутников. Разноцветные волны давления, видео из тоннелей Сингапура, температурные таблицы по регионам. Всё это лилось, как вода через прорванный шлюз. Графический движок стенда не справлялся. Максим замер. Он наблюдал. Мелькнула мысль, что нужно было сильнее отфильтровать разрешение доступного видеопотока.
Секунд через десять всё стихло, экран очистился. На нём — прогноз погоды:
Москва. Суббота. Ливень. 95% осадков от недельной нормы. Ветер западный, 9–12 м/с. +10 °C.