Отголоски Средних веков
Insane › Глава 15
Книга находится в процессе редактирования. Пожалуйста, вернитесь к чтению позже. Оповещения будут публиковаться на https://t.me/toberg_books
Воздушный корабль пересёк долину, нырнул сквозь солнечную дымку и начал заходить на посадку, совершая крутой вираж. Второй пилот агрессивно работала штурвалом, корректируя курс.
– Лихачите, лейтенант! – сказал Боуман с отеческим укором.
– Извиняюсь, капитан. Меня бесит, что нас отправили нянчиться с этими умниками. Не нашлось другой работы для военных пилотов?
– Можете спросить у Пентагона.
– Так мне и ответят. "За примерную службу отправляем вас на пенсию куда подальше – с любовью, Важные Шишки".
– Не спешите расслабляться. А это ещё что?
Грег Боуман вопросительно поднял бровь. Немой вопрос застыл и на лицах разработчиков, вышедших наружу. Да и как тут не удивиться?
Белый плащ развевался на ветру, солнце скользило по серебристым граням, а изящные крылья венчали шлем – на улице стоял рыцарь в латных доспехах.
– Наш новый тренер? – прошептал Эрик.
Александра сняла шлем, поправила спутанные волосы и озарила всех лучистой улыбкой – момент, который наполнил сердце Тома радостным чувством.
– Друзья! – звонко сказала она. – Давайте споём песню!
"Бросив однажды, труднее найти
Великую миссию в сфере АйТи!
Будет нам больно, обидно и грустно,
Страшно, как змейке перед мангустом.
Пусть нас унизят, пускай осмеют,
Даром не нужен комфорт и уют!
Кодом мы пишем свой кодекс чести,
Каждая строчка – часть манифеста!
Мой алгоритм отбивает ритм,
Порядок условий неповторим,
Функции прочные, как скульптура!
Наше оружие – клавиатура!
Все переменные нам неизвестны,
Будут потери в этом бою,
Но что остаётся, скажите мне честно?
Сдаться на милость небытию?
Мы не сдаемся на полпути,
Пусть наши шансы и не ахти.
Кодом мы пишем свой кодекс чести,
Каждая строчка – часть манифеста!
Мой алгоритм отбивает ритм,
Порядок условий неповторим,
Функции прочные, как скульптура!
Наше оружие – клавиатура!
Нам не нужны ошибки и баги,
Успех от провала всего в полушаге.
Всё невозможное – нам не преграда,
О нашем безумии сложат баллады.
Одна неудача хуже другой,
Работаем, парни, хвост трубой!
Кодом мы пишем свой кодекс чести,
Каждая строчка – часть манифеста!
Мой алгоритм отбивает ритм,
Порядок условий неповторим,
Функции прочные, как скульптура!
Наше оружие – клавиатура!"
Музыка остановилась, роботы с клавиатурами закончили кружиться вокруг Александры, замершей перед остолбеневшими друзьями. За её спиной с непривычным грохотом приземлился корабль.
– Господа, – высказался Виктор, – у нас появилась песня для пробежки.
Все переглянулись, невольно улыбаясь.
– Бегом-марш! – Боуман усмехнулся. – Даю вам две минуты переодеться перед следующим выступлением.
Когда Саша возвращалась за кроссовками, она заметила незнакомую фигуру, стоящую возле корабля. Женщина в чёрном комбинезоне. Скрещенные на груди руки. Короткие светлые волосы. Скучающий ледяной взгляд. Они коротко переглянулись, и Александре захотелось поскорее убежать.
– Откуда эти доспехи? – спросил Ричард за завтраком.
– На одном сайте распродают всякую бутафорию и костюмы со съемок. Вам не нужен космический скафандр за двести долларов?
– Иногда я вам поражаюсь. Вырядиться средневековым мечником и устроить музыкальное представление – до такого ещё надо додуматься!
Стенфилд размазывала остатки каши по тарелке.
– Плохой из меня герой мюзикла.
– Но хороший товарищ. Ребята явно приободрились и начали работать сообща. После удара Джона Стивенса бывает нелегко подняться на ноги.
– Вы видели его в гневе?
– Нет, никогда. Гнев от общения с ним испытают другие. Некоторые люди прекрасно чувствуют наши слабые места и не стесняются туда бить.
– Я не против, если мне покажут мои слабости. – Александра надломила печеньку. – Быстрее от них избавлюсь. Но никакими ударами не выбить из меня того, что так ненавистно мистеру Стивенсу – веселья. Я не перестану веселиться, даже если придётся сменить клоунскую рубашку на смирительную. Я могу радоваться жизни, отмывая грязь из-под холодильника, так что меня трудно переделать. Думаю, лучше проиграть с улыбкой, чем победить в слезах.
Поскольку другие команды остались у разбитого корыта, все силы сосредоточили на модели братьев. Чангпу Шань, бывший студент Калифорнийского университета, помогал Александре с математической частью. Они быстро поладили, а в остальном коллективе то и дело вспыхивали споры и конфликты, грозившие расколом.
– Мы так не пишем! – возмущался Эрик, изучая репозиторий с кодом.
– А я всегда так писал, – огрызался Рудольф. – Будете истерить из-за одной дополнительной проверки?
– Не дополнительной, а бесполезной.
– Какой избирательный перфекционизм. Да идите вы в задницу!
– Только после вас!
– Остынь, Руд! – вмешался Виктор. – Подход "как всегда" сейчас не работает. Надо избавляться от всего лишнего.
– Как знаете, мудрецы...
Полной картины не видел никто, и каждый шаг приходилось делать без ясного понимания следующего. Как увязать воедино столько факторов и процессов?
Работа затягивала время, как чёрная дыра. Дни сливались воедино – неделя, как одни длинные сутки. Между ровными строками кода незаметно исчез август. В сизой сигаретной дымке развеялся сентябрь. Комната пропахла крепким кофе и напоминала военный штаб. Разработчики перестали бриться и превратились в лесных дикарей, а Александра стала носить лабораторный халат, чтобы как-то поддерживать иллюзию порядка.
Руководитель проекта ввёл практику коротких докладов, которые помогали всем держать руку на пульсе. Проговаривать некоторые вещи было полезно, и несколько часов, потраченные таким образом, себя окупали.
– Мы сожжем весь мир нашим кодом, – бредил Майк Риверс, с безумным видом набирая строчку за строчкой.
Рудольф похлопал его по плечу.
– Бороду себе не сожги, гений!
– А зачем нам резервный диск? – усмехнулся Эрик, почёсываясь. – Я готов поспорить, что выучил треть кода наизусть.
– Печально, – сказал Том. – Придётся избавиться от тебя после запуска.
– Не похоже на шутку.
– Сначала надо избавиться от лишнего кода, – вмешался Джейсон, отмечая что-то в файле. – Я вновь посмотрел, что вы пишите. Мы так получим не искусственный интеллект, а искусственного кретина. Майк!
– Что?
– Строки 4312-4356. Можешь объяснить, что это за крокодил?
– Корректирующий вектор. Нижний правый угол третьей доски.
– И как простейшая функция раздулась на 44 строки?
– Знаешь, как написать короче – напиши. Я ручаюсь за каждый символ, что добавил за последние два дня.
– Уверен?
Майк нахмурился, нажал несколько клавиш, и целое полотно кода пропало из общего файла.
– Стой, что ты творишь!
Встав из-за стола, Риверс схватил со стеллажа чью-то чёрную футболку.
– Сэм, завяжи!
Друг завязал ему глаза и затянул узел на затылке. Опустив пальцы на клавиатуру, Майк стал вслепую набирать код и за пару минут воссоздал пропавший участок.
– Хорошо, – сказал ошарашенный Джейсон. – Убедил.
– Нет, ты был прав. Я сократил функцию на четыре строки.
Подобные проверки и перекрёстные тесты вошли в обиход. Любой мог "случайно" стереть чужой код, начать придираться к каждой строчке или устроить состязание по написанию алгоритмов. Мало было программировать с завязанными глазами – друзья любезно орали в уши "Опечатка! Забыл пробел! Идиот!" и выплёскивали ледяную воду на клавиатуру. На занятиях капитана Боумана начинались настоящие драки из-за нюансов хранения данных – Саша пыталась этому помешать, заодно практикуясь в захватах. Работа спорилась, но ребята постепенно сходили с ума.
"Если безумие нельзя остановить, его надо возглавить", – так решила Стенфилд, уже подверженная тревожным симптомам. Однажды она заглянула в шкафчик, посмотрела на свои джинсы, рубашку, халат и сказала:
– Пора обновить гардероб.
Сказано – сделано! Роботы с отбойными молотками пробили новую шахту и создали там гардеробную комнату с длинными рядами вешалок.
– Спасибо, Альфа.
– Рада помочь. Обожаю бурить туннели, не делая предварительных расчётов!
Боуман ещё не отошёл от истории с паладином, когда очередным утром из форта выбежала свора оборотней.
– Р-а-ар! Ау-у!
Юноши были в костюмах волков, с животным рычанием догоняя Сашу в наряде Красной Шапочки.
– Бабушка, помоги!
– Вот дурные, – прошептал капитан.
Сумасшествие набирало обороты, открывая перед Боуманом страницу за страницей из коллективной истории болезни. Грязные орки и юный эльф. Дикие индейцы и несчастный колонист. Полицеские с дубинками и преступник с гирей. Астронавты в скафандрах и марсианин. Солдаты в касках и немецкий генерал. Люди-осьминоги и девочка в японской школьной форме. Имперские штурмовики, догоняющие джедая в робе – и сам капитан в шлеме Дарта Вейдера. Кто ещё скажет, что безумие не заразно?
Александра всегда бежала первой, стараясь оторваться от преследователей, что было весьма непросто. Несколько раз её ловили и связывали, возвращая в таком виде назад. Что тут скажешь? На утренних пробежках все отрывались, как умели. Только второй пилот корабля надувала щеки, укоризненно качала головой и бурчала что-то под нос.
Джон Стивенс больше не появлялся. Ричард не знал, чем это обусловлено – важные проекты Джон курировал лично и вникал в каждую деталь. Жизнь eVA шла своим чередом, и можно было предположить, что директор пытается создать иллюзию бурной деятельности. Любое его отсутствие на рабочем месте мигом привлекало внимание журналистов и конкурентов.
Программа обретала цельный вид, но её фрагменты напоминали бусы без нитки – не было связующего звена. Решить эту задачу предстояло Томасу Левенштайну, который и так занимался самой сложной частью. Вряд ли человек, привыкший к тяжёлому физическому труду, счёл бы эту работу сложной: Том подходил к доске, смотрел на формулы, замирал – и думал. Просто стоял и думал, по несколько часов не сдвигаясь с места. Иногда он переходил к соседней доске и аккуратно касался её пальцем, надолго погружаясь в свои размышления. Его словно не было здесь, в этой комнате, в этом теле, только и нужным для того, чтобы перемещать взгляд Томаса от одной формулы к другой. Система уравнений описывала стабильный процесс, но как адаптировать её к моменту запуска? В ходе "взрыва" каждая частица должна была оказаться на определённом векторе многомерного пространства и не помешать остальным. Примерно как бросить камень в банку с краской, чтобы брызги образовали ровную окружность.
Все думали, что Томас Левенштайн решает проблему начального сцепления, и никак не ожидали того, что произошло. Однажды вечером Том вплотную подошёл к доске, протянул руку – и стёр пальцем один символ.
– Что?
Ребята встали со своих мест и собрались полукругом. В основной формуле пропал знак равенства.
– Что это значит? – спросил Джейсон.
– Я не понимаю, – призналась Стенфилд. – Это наш аналог закона сохранения энергии. Если правая и левая части не равны, система рано или поздно развалится. – Она перевела взгляд на Тома, вновь глянула на формулы и тихо произнесла. – А ведь она развалится...
– Как? – взволновался Эрик. – Почему?
– Потому что закон сохранении энергии не работает.
– Вы рехнулись? – возмутился Рудольф. – Мы ведь знаем, что он работает! Не нужно быть профессором физики, чтобы понимать такие вещи.
– Этот закон, – размышляла вслух Александра, – справедлив только для изолированной системы. Мы заложили в основу принцип рождения Вселенной, но нельзя сказать наверняка, соблюдается ли во Вселенной второе начало термодинамики. В бесконечно далёкой перспективе закон сохранения энергии может не выполняться, а в нашей модели этот сбой произойдёт моментально. Если система не изолирована, равновесие невозможно.
Стенфилд посмотрела туда, где находился знак равенства.
– Весь вопрос в том, – произнесла она тихо. – Будет ли...
– А можно погромче? – отозвался Сэм. – Я плохо слышу, все ушли проорали.
– Извини. Вопрос в том, меньше или больше.
– И кто это должен решить?
Наступила тягостная тишина. Разделённая на две части, ключевая формула переставала иметь смысл. Эрик начал приводить аргументы в пользу того, почему должно быть "меньше", а Джейсон настаивал, что "больше". Разработчики разбились на два лагеря, наперебой доказывая правильность своей гипотезы. Когда "большевики" брали верх, забрасывая оппонентов неоспоримыми доводами, находилась какая-нибудь мелочь, которая подкрепляла позицию "меньшевиков". Александра Стенфилд продолжала смотреть на формулы, взвешивая все доводы.
– Может, бросим монетку? – не выдержал Рудольф.
– Проще, конечно, сохранить исходный код, – сказал Дэн. – Если не сработает, повторим опыт с другим знаком...
– Старая песня! – возмутился Эрик. – Это вам не приложение для знакомств. Мы должны понимать наши собственные теории, черт побери!
– Так больше или меньше? – вмешался Виктор. – Ваша теория, вам и принимать решение. Выбирай, Оттс!
– Я не знаю. Надо подумать... Не знаю! Что думаешь, Том?
Том пожал плечами и нарисовал новый знак равенства на месте старого.
– Мисс Стенфилд отвечает за теоретическую часть, – сказал он со спокойной уверенностью, протягивая маркер.
"Что это значит?" – пыталась понять Саша. Она сжала маркер в мокрой ладони, стиснула зубы и подошла к злополучному участку.
– Больше, – шептал Майк напряжённо, – точно должно быть больше!
Короткое движение маркером поставило точку в этом споре. По комнате прокатился возглас удивления.
Знак равенства был перечёркнут косой чертой, став знаком неравенства.
– Больше или меньше – не важно, – сказала Стенфилд. – Важно, что одно никогда не равно другому. Противостояние – это и есть равновесие.
– Логично! – воскликнули Джейсон и Эрик одновременно.
– Теперь понятно, почему мы не могли прийти к консенсусу.
– А никто не хочет переодеться?
Сегодня все вернулись с пробежки в одежде заводских рабочих, а на Александре был чёрный сюртук с серебряной цепочкой. Она извлекла из внутреннего кармана механические часы, хмыкнула:
– Так и быть. Отпущу вас на перекур.
– Хватит это терпеть! – возмутился Рудольф. – Долой капиталистов!
– Бейте её!
– Охрана, охрана! Помогите!
Пока Саша отбивалась от пролетариата, Том развернулся в кресле и принялся писать код. День сменился вечером, вечер перешёл в ночь. Оставшись один в кабинете, он продолжал печатать строчку за строчкой, понемногу ускоряясь – глоток воды, и снова за работу. Его пальцы играючи ходили по клавишам, и в какие-то моменты Томас откидывался в кресле с закрытыми глазами.
Капитан Боуман не заметил его отсутствия на утренней тренировке, в отличие от Саши, которая спешила вернуться назад и узнать, что случилось. По возвращении она сразу забежала в "логово" и застала друга на прежнем месте, за рабочим столом.
– Том?
– Это оказалось сложнее, чем программировать конструктор, – сказал он, поднимая ясный и весёлый взгляд.
Братья Оттс вошли следом.
– Давайте посмотрим, что появилось, – сказал Джейсон, глотнул воды и чуть не забрызгал экран. – Десять тысяч строк?!
– Около того.
– И что теперь?
– Хорошо бы проверить, – ответил Томас. – И можем запускать.
– Как, запускать?
– Мы закончили.
– И процедуру запуску? И балансировку ядра? – откровенно опешил Эрик. – Тогда... Все по местам! Начинаем последнюю проверку, коллеги!
Близость запуска открыла разработчикам второе дыхание, и ревизию кода провели до наступления ночи. Эрик написал на листе бумаги "Считаю модель завершенной" и первым надрезал палец, чтобы дать согласие кровью. Один за другим, одиннадцать красных овалов выстроились в ряд.
– Готово!
– Эти расчёты будут преследовать меня в кошмарах, – сказала Александра и пробежалась глазами по формулам. – Стирайте всё!
– Загружаем код в процедуру запуска! – командовал Джейсон. – Удаляем временные файлы, диски надо извлечь и уничтожить.
– Записи на бумаге тоже! Бросайте в пакет. Разведём костер снаружи.
Виктор призвал всех участвовать в сожжении ценной информации на посадочной площадке. В комнате остались Джейсон и Саша.
– Скажите любое слово, мисс Стенфилд.
– Зачем?
– Для нашей случайной величины. Я написал маленький алгоритм, который преобразует слова в цифровые коды произвольной длины.
– И код станет ключом для запуска ядра?
– Да, – флегматично ответил Джейсон. – Скорее всего, ничего не сработает, так что не сильно напрягайтесь с выбором.
– Как вы можете сохранять спокойствие, когда решается участь вашей теории? Нет, судьба всей нашей работы!
– Провалится одна теория – придумаем новую. Куда важнее, что мы стали одной командой и дошли до этого этапа. Приятно было работать с вами, мисс Стенфилд.
– И мне с вами, мистер Оттс.
– Итак, кодовое слово?
Александра сосредоточилась и произнесла первое, что пришло в голову:
– Инквизиция.
– Инквизиция? – переспросил Джейсон. – Кто бы мог подумать, что церковные гонения окажутся на острие прогресса. Надеюсь, это не испортит ей характер.
"Ей?"