KnigaRead.com/

Александр Морозов - Программист

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Александр Морозов, "Программист" бесплатно, без регистрации.
Перейти на страницу:

До этого пункта такая реконструкция кажется мне бесспорной. Подобные пасьянсы я наблюдал, к сожалению, не раз. А иногда, как и в данном случае, их раскладывают прямо-таки у вас под носом.

Итак, разложен весьма нехитрый пасьянс. (Хотя охотно допускаю, что нехитрым он является только для искушенных знатоков этого занятия вроде меня.) И когда остается замкнуть орнамент одной-двумя картами, выплывает безобразная, путающая всю картину ошибка в основании. И ясно только одно, что ошибка действительно допущена.

Но как, где, что? От подкожного ощущения до весьма четких, рациональных и ответственных решений, определяющих поведение людей в современном научно-исследовательском институте — дистанция все-таки огромного размера. Эта-то дистанция и не позволяет обеим сторонам проникнуть в истинные намерения друг друга. Они чувствуют только взаимную напряженность и невозможность ее радикального устранения. Они не собираются перевоспитывать друг друга. Это настолько разные люди, настолько… что даже до взаимной непонятности, до взаимного безразличия. Но старая истина ни в коей случае не устарела: коль карты сданы, остается только одно — играть.

И вот… Телешову достался Геннадий Александрович, а Геннадию Александровичу достался Телешов. Оба только чувствуют какое-то неудобство, чувствуют, вот что-то идет не так. Но пусть уж их чувствуют, мы же вполне можем воспользоваться преимуществами, которые предоставляет сравнительно более широкий обзор узкой тропы войны. Что же показывает этот сканирующий обзор с площадки, вынесенной в нейтральное пространство? А показывает он разные, может, и небезынтересные, но не такие уж оригинальные вещи. Телешову, например, никак не удается «дожать», «поставить на место», чтобы исчезла проклятая неуверенность, неизвестно что и сулящая, а Геннадию никак не удается «отжать», удержать на дистанции, безопасной для чувства собственного достоинства и не мешающей работать. А может быть, и так: Гена подозревает, что раньше или позже, но его тактика «держать противника на дистанции» окажется гибельной для него самого. В этом случае он может интуитивно склоняться к простому, как все гениальное, девизу Наполеона: главное — ввязаться в бой, а там будет видно. Затруднение состоит в том, что не в экстремальных, не в пограничных, а просто в неблагоприятных условиях он не может (просто не умеет, а поэтому н но может) даже ввязаться в серьезный бой.

Ну что ж, оставаясь на берегу, не научишься плавать. Пожалуй, только этой сентенцией (согласимся, весьма и весьма отдающей цинизмом) и можно в настоящий момент утешить Геннадия Александровича. А добрая порция жестковатого цинизма в иных случаях куда благотворнее, чем ни к чему не обязывающие сочувствие и понимание. Я имею в виду именно те случаи, когда речь идет о лицах с эластичной нервной системой, умеющих, как говорят боксеры, «держать удар». Характерные особенности Геннадия Александровича, которые свидетельствуют обычно о наличии или отсутствии такого умения, носят в значительной степени противоречивый характер. Если Телешов настолько психолог, что чувствует эту противоречивость, то ему очень и очень затруднительно просчитать дилемму «бить или не бить». А как ему хочется, надо полагать, чтобы дело свелось именно к просчету. Без ясной арифметики приходится идти на риск, который хоть дело и благородное, но от которого мы — что уж там греха таить — шарахаемся по большей части, яко бесы от крестного знамения.

10. Геннадий Александрович

Витя Лаврентьев… Я отлично помню, как я привел его первый раз к Комолову… Прошло два месяца после моей демобилизации, два месяца, заполненных встречами, излияниями, возлияниями, воспоминаниями. Но, встретившись несколько раз, наша армейская компания вступила в период распада. Лучших повыбивали из обоймы жены, настойчиво требовавшие внимания к семейным очагам. Остальные вяло перезванивались, все более отходя к своим доармейским и послеармейским заботам. Витя Лаврентьев участвовал в сходках весьма активно. Активный он был человек, холостой и к тому же не обремененный выбором жизненного пути, то есть вопросами трудоустройства. После демобилизации Вятя сразу же стал вовсю демонстрировать в одном на московскмх НИИ свой непобедимый, интуитивный стиль программирования. Я окончил университет по специальности «математическая лингвистика», поэтому навыки формально-логического мышления были мне отнюдь не чужды. Лаврентьев склонил меня к программированию, указав на явную перспективность этого занятия как в финансовом, так и в престижном отношении. Он же представлял меня и на первую работу, где я учился хорошим манерам в обращении с машиной под благотворной опекой Сережи Акимова. Уже в течение двух лет я программирую не хуже Акимова. А Акимов делает это хорошо, с этим никто не спорит. Но куда нам обоим до Лаврентьева!

Нельзя сказать, чтобы мы были слабее. «Мы слабее» — это просто не то слово. Мы несравнимы, вот в чем дело. Акимов и я делаем все как надо. Правильно, в меру быстро, грамотно — как и подобает классному программисту. Лаврентьев работает интуитивно. Он не записывает предварительно алгоритм, пишет громадные куски сразу в действительных адресах, вводит по ходу дела или даже после окончания множество улучшений и исправлений. И эти «заплаты» всегда ложатся точно на то место, где им и надлежит быть. Кажется, что все четыре с лишним тысячи ячеек оперативной памяти и все зовы всех магнитных лент десяти ЛПМов — это просто комнаты в его собственной квартире. Настолько уверенно и безошибочно он распоряжается этой площадью. Лаврентьев — это Гарлем-Глобтроттерс программирования. Об одном из его трюков прослышали аж в Минске.

Когда я приехал туда в командировку в одну фирму, ребята из отдела математического обеспечения спросили меня, точно ли есть в Москве некий Лаврентьев, у которого машина выдает все, что нужно, без исходной информации и без программы. Я ответил, что точно, есть такой человек, и зовут его Витя.

А дело было так, Лаврентьев со своей компанией сдавал на одном заводе автоматизированную спетому по учету кадров. Дело было, как говорится, сделано и подписано. Система крутилась и выдавала заводскому отделу кадров справки — любо-дорого смотреть. Оставалось собрать подписи о закрытии темы, об ожидаемом от внедрения экономическом эффекте и, соответственно, о справедливом вознаграждении героев-системщиков. Пока другие собирали многочисленные подписи и печати, Лаврентьев по обыкновению набросал «заплат», то есть улучшений к системе. Прямо в машинном зале завода он порезал всю систему, хранящуюся на одной перфоленте, на куски и повыбросил то, на чье место должны были встать его заплаты.

Совершенно неожиданно в машинный зал во главе торжественно настроенной процессии вошел чин на главного технического управления, которому подчинялся тот завод. Оказывается, чин, услышав о внедрения чудодейственной системы, решил сам взглянуть на сие порождение научно-технической революции. Чин подошел к машине и спросил, установлена ли система и действует ли она. Ему ответили, что да. Тогда он пожелал, чтобы машина выдала список всех начальников цехов данного завода.

Все смотрели выжидающе на Лаврентьева. Перфолента с системой, изрезанная на куски, валялась на подставке для фотоввода. И самое непоправимое заключалось в том, что вырезанные куски, безнадежно смятые, уже валялись в корзине. Так что и склеивать было нечего. Лаврентьев бросился в телетайпную, чтобы, извинившись за задержку, быстро набить исправления и уже с ними склеить всю ленту. Но завод — это не исследовательский институт. Рабочий день закончился, в телетайпная была надежно заперта и запломбирована. А инспектирующий уже проявлял нетерпение. Витя, не привлекая внимания, подошел к одному на заводских, с которым он контактировал, и попросил его написать на листочке список начальников цехов. Затем подошел к машине, поставил на фотоввод первую попавшуюся перфоленту, а на два первых ЛПМа навесил пустые магнитные лепты.

Комиссия умиленно смотрела на его лихорадочную деятельность, нимало не подозревая истинный ее смысл. Витя взял список начальников цехов и сел за пульт машины. Сначала он включил все устройства ввода и вывода — и ввел во второй блок оперативной памяти перфоленту, поставленную на фотоввод. Наблюдатели должны были убедиться, что «система» уже в машине. Затем он переключился на первый блок. А вот затем…

Кому бы я ни рассказывал эту историю, все слушали ее до этого места не перебивая. Но когда я начинал рассказывать, что началось потом, перебивали все, И смысл всех восклицаний сводился к одному: не может быть. Ну, даже если этого и не могло быть, это все-таки было. А было вот что.

Лаврентьев с пульта, без единой ошибки, с ходу, со страшной скоростью и т. д. занес в первый блок программу печати на АЦПУ нужной формы, с шапкой, заголовком, все как полагается. Затем в соответствующие, указанные им самим в программе адреса памяти занес информацию в виде списка начальников цехов (причем перекодировку букв в код АЦПУ он делал, разумеется, тоже в уме), зациклил печать на нужное количество раз и нажал пуск. И АЦПУ застучала, и пополз из-под нее широкий лист бумаги, прямо посредине которого машина отстучала: «Признак — начальник цеха». И далее был напечатан весь список из двенадцати командиров производства. И довольный чин во главе свиты, наперебой объясняющей ему что-то, укатил восвояси, и тема была закрыта, н премии были розданы. И приведенная через день в божеский вид система как ни в чем не бывало стала отстукивать то, что ей положено. Если бы виртуозность в разных областях деятельности можно было бы сравнивать по неким квадратным единицам, то в считанные минуты, когда Лаврентьев, как пианист, брал единственно правильные аккорды на клавиатуре пульта, аккорды, которые надо было перед этим мгновенно высчитать в уме, в эти минуты его виртуозность не уступала наверное, виртуозности Паганини.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*