Девчонка послушалась, и оба – Ленка с надеждой, а Стас с усмешкой – принялись рассматривать появляющиеся на экране строчки:
1
2
3
4
Время шло, а на мониторе светились только четыре цифры.
– И чего? – спросил Стас у компьютера, прервал выполнение программы и запустил ее снова.
1
2
3
И снова пусто.
– Иногда до пятнадцати доходит, – слабо пискнула Ленка. – Но чаще до трех-четырех…
– Так! Что мы знаем о детерминированности алгоритмов?
– Э… Ничего. – Девчонка покраснела.
– Понятно, – снисходительно улыбнулся Стас. – Применяя алгоритм к одним и тем же данным, мы должны получать одинаковый результат. Ясно? Алгоритм тут простейший. Значит, ошибка в коде.
– Но на симуляторе работало!
– Знаем мы ваше «работало»… Покажи код!
Изучая текст программы, Стас недоумевал. Программа была очень аккуратно написана – «лесенкой», с пробелами и комментариями. По-женски, фыркнул про себя Стас. И она, несомненно, была правильной.
Однако при следующем запуске программа успела досчитать только до шести.
– Так… – Стас почесал подбородок. – Давай-ка выведем число процессоров…
Забыв о планах, ради которых он сам остался в лаборатории на ночь, Стас принялся изучать программу.
Потом переписал ее.
Потом запустил с другого терминала.
Перезагрузил машину.
Ленка смотрела на него, раскрыв рот. Она так и лезла в экран своим веснушчатым носом, и Стас пару раз гонял ее за добавкой кофе – просто чтобы не мешалась. Наконец он перепробовал все, что можно.
– Впору шаманские пляски с бубном устраивать, – проворчал он, откидываясь на спинку.
– А говорят, – тихо встряла Ленка, свернувшаяся клубком в соседнем кресле, – вчера у самого Папы Карло не получилось прогу запустить…
– Врут! Папа Карло уже давно ничего не программирует… Но я с ребятами поговорю и с админами. О, смотри!
Ленка, уже совсем клевавшая носом, вскинулась и посмотрела в экран.
Стройный столбик цифр протянулся через весь экран шестнадцатью строчками, внизу приветливо высветилось приглашение ввести новую команду.
– Уф! – выдохнули оба, счастливо разглядывая желанный результат.
– Получилось! – взвизгнула Ленка и порывисто обняла Стаса. – Спасибо!
– Да ладно…
У Стаса забурчало в животе. Он смутился, достал из сумки бутерброд. Разломил пополам, протянул половину Ленке. Минуту они молча жевали, запивая хлеб с сыром остывшим кофе. Говорить не хотелось – их объединяли усталость и чувство удовлетворения от хорошо сделанной работы. Потом Ленка устроила гнездышко из трех стульев, постелила свой плащ и легла. Стас вспомнил про доклад и открыл страницу браузера.
– Стас, а почему не работало?
Он пожал плечами:
– Не знаю.
– Слушай, а может, – Ленка приподнялась со своей «постели», – может, это вирус?
– Быть такого не может! – отмахнулся Стас.
– Почему нет? Ты же говорил об этой… детерминированности. А результаты получались разные. Значит, дело не в коде, а в чем-то, что вмешивается в ход выполнения программы. Если не вирус, то… – Вдруг Ленка подпрыгнула, глаза ее блеснули озорным огоньком: – А вдруг там кто-то живет?
– Чего? Ты спи давай!
Ленка снова легла и сказала, глядя в потолок:
– А что? Вдруг какой-нибудь инопланетянин прилетел на Землю? И понимает ведь, что будущее в информационных технологиях, вот и вселился в кластер… И пытается общаться с нами, вмешиваясь в выполнение наших программ.
– Тебе бы фантастику писать, – усмехнулся Стас. – Только все равно у тебя не выйдет ничего.
– Это почему еще?
– Потому что с логикой проблемы. Ты головой подумай: зачем разуму, способному создать космический корабль и прилететь на Землю неизвестно откуда, твои идиотские задачки?
Ленка обиженно засопела:
– И вовсе они не идиотские! Я же только начинаю!
– Вот и я о том же. Уж если вмешиваться, то не в наш же детский сад соваться…
– А может, он сам пока маленький? Ему и нужно… – Ленка заразительно зевнула и, уже отвернувшись к стене, тихонько продолжила: – …в детский сад.
Конечно, Ленка говорила глупости. Ни в каких инопланетян Стас не верил. И все-таки раз за разом вспоминал этот разговор. Тем более что кластер стал барахлить, и разработка программ превратилась в те самые шаманские танцы. Сисадмины и приглашенные «железячники» только руками разводили – все должно работать! Правда, Стас заметил одну особенность: если начинались проблемы, стоило дюжину раз запустить простенькую Ленкину программу, и все становилось на место. Словно, тут Стас усмехался про себя, даже самому себе стыдно было признаваться в таких мыслях, какое-то существо ловило данные, будто мячик, а потом, наигравшись, засыпало.
– Ну, сейчас поиграем с тобой, – сказал Стас и ввел команду.
1
2
3
Воображение Стаса рисовало расплывчатую амебу, со скоростью электронов бегущую по проводам, к следующему процессору.
4
5
Поймал.
Кто придумал назвать его Кракеном? Кажется, Васька, которому клубки проводов, там и тут расположившиеся по всей лаборатории, напомнили спрута, запутавшегося в собственных щупальцах. Да и то верно: настоящий Кракен топил корабли, а этот – планы всей лаборатории. Словно принимал за мячик серьезные выкладки ученых, глотал куски данных, пуская под откос месяцы скрупулезного труда. Только у Стаса получалось более или менее ладить с этим существом. Поиграть в мячик – вот как сейчас, шепнуть пару слов. И запустить считаться задачу. И все, даже преподаватели, просили Стаса запускать программы, нервно хихикая, отшучиваясь и тихо матерясь, – всерьез никто так и не поверил в Кракена, кроме третьекурсницы Ленки.
Или боялись показать, что поверили.
Столбик цифр опять побежал, успев добраться до десяти.
– Что-то ты медленно сегодня, приятель, – улыбнулся Стас и порадовался, что его никто не видит и не слышит сейчас. Говорить с плодом собственной фантазии – что может быть глупее. – Устал? Ты давай веди себя хорошо, ладно? Слушайся Дэна и Папу Карло и не хулигань. А я приеду – привезу тебе что-нибудь. Какую-нибудь новую игру…
Командная строка приглашающе мигала, словно предлагала поговорить.
«А вдруг он и правда ждет моих слов? – мелькнула мысль. – Может, рассказать ему, куда я уезжаю и зачем?»
«Чушь! – тут же ответил сам себе Стас. – Если так пойдет и дальше, палата в психушке будет обеспечена…»
Он залпом допил ставшее теплым и оттого неприятно-маслянистым на вкус пиво, сунул бутылку в урну и выключил «Ангел». Хватит. Завтра он уедет, а к осени кластер починят.
«Ангел» проводил его мерцанием экрана и погас.
Карл Иванович сидел за столом, подперев кулаком подбородок, и пытался вникнуть в смысл письма. То ли зрение от постоянной работы за компьютером сдало так сильно, то ли шрифт отправитель выставил странный, но строчки были размыты, будто пятна грязи по ветровому стеклу. Карл Иванович протер очки, подув на них, смахнул непонятно откуда взявшуюся влагу с ресниц и снова вгляделся в экран. Строчки дрогнули последний раз, буквы неохотно выстроились ровными рядами.
«Отец, я все понимаю. Ты работаешь. Ты увлечен. Ты молод душой – это прекрасно! Но всему есть предел. В том числе и нашему терпению.
Сколько ты обещал маме взять отпуск и свозить ее к морю? Да ладно, к морю, хотя бы день дома побыть! Погулять просто по парку – сейчас вон соловьи вовсю поют! На следующей неделе мы идем в театр – тебя я не приглашаю, заранее знаю ответ.
Я не стану припоминать тебе свое детство, когда я не спал до полуночи, только чтобы увидеть, как папка возвращается с работы и тут же ложится спать, а с утра уходит еще до того, как я встану… Я вырос, пусть и почти без отца.
Но теперь я сам – отец! Ты знаешь (напоминаю, вдруг забыл?), твоей внучке вчера исполнилось шесть. И она ждала дедушку на свой день рождения. Да-да, как я ждал когда-то. И она, как я в детстве, плакала вечером, потому что ты даже не позвонил, чтобы ее поздравить. Неужели это так трудно – позвонить и порадовать ребенка?