Посвящается Е.Г.
Дневник программиста (отрывки)
Командировка
День 1. Приезда не помню, потому что в самолете нажрался до overload'а,
пользуясь отсутствием надзора - нас с менеджером поместили в разные концы
салона. Очень стараясь, чтобы меня не приняли за труп, коллега дотащил
мое тело до гостиницы. Он же попросил у встречающей стороны "на акклиматизацию"
полдня, в течение которых приводил меня в чувство. Как ни странно, это ему
удалось. Правда, чувство на поверку оказалось обидой, что меня вывели из
состояния offline. Но контрастный душ и литр горячего кофе кое-как запустили
во мне режим эмуляции рабочей версии сознания. В этом режиме я и продержался
оставшиеся полдня, пока нас знакомили с предприятием, которое угораздило
с нами связаться, и его доблестным коллективом. Менеджер неестественно широко
улыбался и неустанно молол языком, раздавая такие фантастические обещания,
что мне даже в моем состоянии становилось стыдно (за настоящее) и страшно
(за будущее). Но я держался как мог и делал вид, что согласно киваю, на самом
деле постоянно пытаясь вернуться в offline. Этому мешали только своевременные
толчки в бок острого локтя коллеги. Благодаря ему же произошло возвращение в гостиницу.
День 2. Утром при перезапуске сознания тестирование выявило жестокую алкогольную
интоксикацию организма, в просторечии пошло именуемую похмельем. Экспертная система
выдала рекомендацию снять интоксикацию N-ной долей того, что ее вызвало, но spy-agent
в лице менеджера пресек на корню саму мысль о подобном лечении. Вместо этого он
накачал меня аспирином, анальгином и Гейтс знает еще какой дрянью, в результате
чего боль заняла дальние сектора и сегменты сознания, ограничившись минимумом
интеллектуальных ресурсов. Остались мрачное настроение, темный взгляд исподлобья
и хриплый голос - короче, образ вполне демонический. Имея некоторый опыт, демонстрацию
нашей программы местному руководству я устроил максимально эффектно, не показав по сути
ничего. Как обычно, руководство осталось довольно, отметив в своих блокнотах, что
модный ныне и якобы жизненно необходимый процесс автоматизации на их предприятии
проходит вполне успешно.
Приятно порадовал обед в местной столовой, которая разнообразием блюд
соперничала со средним столичным рестораном, а уровень цен вызвал ностальгию
по старым добрым студенческим временам. Не отказался бы я каждый день так трапезничать...
За обедом удалось утолить жажду и вернуть себе человеческий голос.
Пользуясь этим обстоятельством, поспешил познакомиться с местными IT-шниками.
Как это часто и бывает (на мое счастье), они оказались ребятами вполне свойскими
и общительными. Поболтав на житейские темы, я убедился, что настроены они достаточно
дружелюбно и вовсе не точат на меня зубы за то, что я отбираю у них законный хлеб -
"нам работы всегда хватит". Когда же я, понизив голос, с заговорщицким видом сообщил,
что не очень секу в проблемной области, а на отправку постановщика наша контора
пожмотилась, они ответили, что, конечно, постараются помочь, но, собственно, и сами-то...
По окончании рабочего дня, установив полное взаимопонимание, мы залакировали
его парой кружечек пива.
День 3-5. Начали опытную эксплуатацию. Как всегда, больше всего хлопот доставляли
не специалисты, а операторы. Они умудрялись вводить ТАКИЕ данные и ТАКИМ образом,
что волосы у меня вставали дыбом во всех местах (даже там, где я и не подозревал
об их существовании). Кляня ретивых работничков на чем switch стоит, я латал дурацкие
прорехи. Рутина. Пока еще можно было курить каждый час, пить кофе и даже флиртовать
с хорошенькими незамужними сотрудницами.
День 6-9. Дурацкие ошибки ввода наконец перестали беспокоить. Теперь в дело
включились спецы. Естественно, полезли ошибки логические. Наступила любимая фаза
работы - творческая. Проверяя и исправляя алгоритмы, я забыл и про девушек, и про
сигареты, лишь автоматически прихлебывая кофе... но с таким же успехом на его месте
мог быть чай, сок или даже вода - я не чувствовал ни запаха, ни вкуса. Так же незаметно
я съедал шикарный обед, который выбирал для меня менеджер. Пищеварительная система словно
работала сама по себе. По сути, от меня остались мозги, глаза и руки. Время перестало
существовать. В таком состоянии я мог бы сидеть перед монитором круглые сутки. В конце
долгого рабочего дня менеджеру приходилось буквально отдирать меня от компа, как матери
ребенка - от любимой игрушки. Все оставшееся свободное время я прокручивал в голове куски
программного текста, облагораживая его. Функции и процедуры стали мне сниться...
День 10. Возвращение к действительности напоминало shutdown системы при спаде
напряжения в электросети. Вместо IT-отдела я обнаружил себя в кабинете главбуха,
а в руке у себя вместо мышки - его пухлую руку. Мои судорожные клики указательным
и средним пальцами он принял за попытку рукопожатия и радостно затряс мою ладонь
в ответ, рассыпаясь при этом в благодарностях. Менеджер молча умилялся трогательной
сцене и лишь разводил руками - мол, я же вам говорил!
Когда мы вышли в коридор, менеджер был готов обнять и расцеловать меня, если бы
я его не остановил. Его реплику "Старик, я всегда говорил, что ты гений..." я пропустил
мимо ушей. Опыт подсказывал, что нас ждут еще несколько подводных камней, о которые
придется больно стукнуться.
Вечером местные барышни, соскучившиеся по моему к ним вниманию, сводили меня
в кино, потом в кафе, потом... ну, короче, все как положено.
День 11. Мелкие поправки надоели через полдня, и я решил заняться оптимизацией.
Почистил базу с разных сторон. Система стала работать заметно быстрее. Вдохновленный
успехами, я лепил запросы один за другим... и слегка утратил бдительность.
Ближе к концу дня с дикими воплями прибежал главбух, на бегу вырывая поседевшие
волосы. Транслировав его закодированную матом эмоциональную речь, я понял, что "куда-то"
ухнули все итоги за прошлый год, включая налоговую отчетность. Мысленно обозвав себя
последним ламером, я успокоил бедного главбуха и выпроводил его. А вслед за ним - и всех
остальных. Предварительно строго наказав всем выйти из системы. Все вопросы пресекались,
как запретные прерывания. Не признаваться же в собственном головотяпстве?!
Оставшись наконец в блаженном одиночестве, я налег на сервер. Господи, благослови
того, кто придумал backup! Ведь по его гениальной милости мы можем сделать restore! Аминь.
Вернув базу в нормальное состояние, я зарекся впредь (по крайней мере, до конца
нынешней командировки) заниматься чересчур творческой работой, которая может ненароком
привести к коллапсу. С гордостью могу сказать, что это обещание я выполнил - все дальнейшие
эксперименты с клиентской базой проводил, лишь посоветовавшись прежде со своим и с местным
админом и опробовав идею на тестовой базе.
День 12. Менеджер мягко и тактично стал намекать местному руководству: мы сделали
все, что могли (и даже больше)... так не пора ли нам закрыть очередной этап договора?
Руководство еще более ловко уходило от ответа. Как всегда, начальники хотели выбить из нас
как можно больше доработок, заплатив при этом как можно меньше. Будучи знаком с подобной
тактикой, я начал притворяться идиотом, не то что не смыслящим в программировании,
но и вообще мало интересующимся окружающим миром. Менеджер делал хорошую мину, но было
видно, что геймиться ему уже не в кайф.
День 13. Критические дни, как известно, бывают не только у женщин. Когда дело
доходит до финансовых вопросов, многие заказчики превращаются в такую... стерву, по
сравнению с которой Виндуза кажется Красной Шапочкой. Местный директор, к сожалению,
выставил себя именно такой противной натурой. Когда менеджер наконец поставил ребром
вопрос о подписании договора, начальник стал материться, брызгать слюной и тыкать нас
интерфейсом в текст контракта, находя между строк неизмеримые глубины наших обязанностей,
которые почему-то никак не отражались на величине их оплаты.
На последовавшем совещании по итогам нашего пребывания в стане вра... у заказчика
главбух, ранее всем довольный, начал мямлить о каких-то замечаниях, оставленных разработчиком
без внимания, а между тем... Бедный главбух быстро запутался в своих невнятных рассуждениях,
сослался на плохое самочувствие и позорно ретировался с поля боя. Трудно сказать, какая
из сторон выиграла от этого бегства, но менеджер все-таки почувствовал прилив энтузиазма.
Начальник транспорт... т.е. IT-отдела, судя по всему, следил взглядом за
несуществующей мухой, бесшумно и старательно облетавшей нас, числом исторгаемых звуков
подражая ей же. В его отвлеченно-мученическом виде явно читалось регулярное выражение:
"Вам-то что, вы уедете - и game over, а меня здесь еще долго будут юзать во все порты".
Я отлично понимал его положение, но войти в него не мог и не хотел. Дружба дружбой,
а сервис сервисом.
Менеджер упорно гнул линию, ведущую нас в желанном направлении - домой.
Причем линию пришлось гнуть не только в переносном, но и в прямом смысле. Телефонную.
Директор дошел до того, что позвонил нашему боссу, знавшего о перешедших в тяжелую
фазу переговорах и задержавшегося в офисе допоздна. По давней традиции босс посулил
хапуге-заказчику золотые горы, чтобы только усыпить его жадность и уломать подписать
контракт. Скаредность, на наше счастье, забивает голос рассудка и не дает жадюге понять,
что обещания не имеют никакой юридической силы... в отличие от уже подписанного документа.
Как это обычно и бывает с самодурами, задобренный щедрыми посулами директор резко
сменил гнев на милость и повез нас на прощальный банкет. По-настоящему победу лучше
праздновать дома, но мы с менеджером позволили себе в меру расслабиться. И даже
выпили на брудершафт почти со всеми хорошенькими дамочками...
День 14. Yes, yes, yes!!! Mission complete!!! Утром нас проводили чуть не до трапа
самолета, приглашая приезжать еще. Отлично зная цену этим приглашениям, мы скрылись
в чреве аэробуса, улыбаясь а-ля Никсон и делая ручкой а-ля Гагарин.
Теперь мы сидели вместе - очередное успешно выполненное боевое задание снова
нас сблизило. Мы выпили за наш прорыв, но я остановился, а менеджер установил запрет
на любые прерывания процесса поглощения алкоголя. И я не стал возражать - он это вполне
заслужил. Мне же предстояло по возвращении выполнить товарищеский долг и в свою очередь
доставить его бесчувственное тело домой. Как говорится, долг платежом красен.
09.2003 - 10.2004