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