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