10 августа 2010 г.

Playing Solo

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

Выходные начинаются обычно часов в 10 в субботу, ибо после недели на работе жутко хочется спать. Никогда еще она так не измытывала. Это странно, потому что не очень-то я там и напрягаюсь, если честно. Решение уйти из команды уже принято, поэтому проявлять особое рвение никакого смысла нет. Кэмерон предпринимает героические попытки меня оставить в команде, но это все уже бесполезно. В пятницу состоялся телефонный разговор, в котором он рассказал над какими проектами предстоит работать в ближайшее время. Вот они (далее следует большой кусок текста изобилующий компьютерными терминами, читать осторожно):

1. Оптимизация производительности системы Quantum. По сути: ковыряние в крайне мутном китайском коде десятилетней давности, отыскивание мест, где происходит задержка, исправление этого дела, копание в не менее старой базе данных, обнаружение блокировок и прочих источников задержек. Будь это хотя бы Oracle... А так - Sybase лохматой версии, в котором почти ничего нельзя сделать по-людски. Сама база спроектирована неверно, в университете нам бы оторвали все половые признаки, если бы мы пытались протащить такой дизайн в курсовую.
2. Адаптация Risk Reporting Console (это часть Quantum) для работы с американской частью бизнеса. Это та же самая работа, которую мы делали для Германии. Сие грозит затяжной командировкой в Нью-Йорк. Само по себе это, конечно, звучит круто, но, во-первых, зачем мне этот Нью-Йорк, если я там только и буду делать, что работать над все той же мутью? Во-вторых, я не могу бросить летать, это будет большой потерей времени. В-третьих, да куда он от меня денется? Рано или поздно доберусь до него, если захочу. А пока не хочу. Мне в Сиднее хорошо.
3. Интеграция Quantum и Calypso. Последняя система - это что-то купленное со стороны. Работает на Oracle, но нас до него не допустят. Поэтому вместо того, чтобы делать все быстро и качественно, придется корячиться и просовывать все данные через системы обмена сообщениями: JMS и MQ. Занятие, судя по всему, еще то.

В среднесрочной перспективе планируется заново переписать весь Quantum, пересадив его на новую базу данных Oracle и новые вычислительные мощности, основанные на Grid Computing. Только это будет через 2-5 лет. А жить хочется уже сейчас, как это ни странно.

В понедельник Кэмерон спросил мое мнение, на что я ответил, что это все мне неинтересно. Тем не менее, он настоял, чтобы я поговорил с Ником (это старший программист, он был одним из моих собеседников при приеме на работу), который мне сможет лучше объяснить суть работы. Меня планировалось направить в первую группу вместе с Ником и Ричардом. Потом Кэмерон, судя по всему, долго говорил с Ником, видимо, давая ему указания как со мной быть.

Сегодня поговорил с Ником. Он в самых ярких красках расписал все прелести будущей работы, пытаясь показать, что это есть некий новый уровень, объединяющий в себе администраторскую и программистскую деятельность, что в дальнейшем мне поможет выйти на уровень архитектора. Говорил очень убедительно, внушает. Однако это все взгляд сверху. А снизу будет все та же возня с дебильным кодом. Вернее, он не дебильный, а сильно перекрученный. Это ж надо умудриться было использовать паттерны проектирования и при этом максимально затруднить замену компонентов. Нет, нет, не хочу. Я знаю как должна выглядеть красивая система и мне больно работать над этим чудовищем, оттягивая его неизбежную и скорую смерть.

В общем, поблагодарил Ника и сказал, что решение уже принял. И чего они так за меня дерутся? Я что, особо ценный? Берите китайцев вместо меня, это как раз работа для них. Они не возмущаются, а просто работают, доводя систему до состояния полного хлама. Китайское трудолюбие с китайским незнанием - страшная смесь. Паттерны-то они выучили, а вот как работает база данных не имеют ни малейшего понятия. Мне это как ножом по сердцу, я ведь учился по книгам и идеям Тома Кайта, который призывает уделять максимум внимания базе данных. Это ведь фундамент системы, который переживет не одно ее поколение. Впрочем, если в базе данных бардак, то она и помрет вместе со всем, что на ней стоит.

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

Все, можете расслабиться, дальше ничего настолько тяжелого для восприятия не будет. Поговорим о более понятных и приятных вещах.

Суббота обещала быть днем насыщенным: нужно было сходить в магазин за продуктами, потом съездить на велосипеде в город в велосипедный магазин, заменить там задний тормоз на тот, за который я заплатил. Когдя я покупал велосипед оказалось, что тормоз имел течь и мне поставили другой, пообещав заменить на следующей неделе. Том позвонил мне еще в понедельник, сказав, что все готово, но у меня из свободных дней только суббота.

Поход в магазин ничего особенного собой не представляет. После него я одел безрукавку, что было довольно смело при температуре 16 градусов, и погнал в город. Погода была солнечной, к тому же езда на велосипеде не давала замерзнуть. Добрался без проблем, в городе удобно ездить по автобусным полосам, на них особо никто не суется. В магазине Том минут за 10 заменил тормоз прямо при мне. Поговорили об авиации. Он сказал, что слегка обалдел от ATIS нашего аэродрома Bankstown. Там у нас три полосы, несколько диспетчеров с разными частотами и метео. Информации на 30-40 секунд. Он к этому не привык, так как летает с Camden, где одна полоса и говорить особо нечего. А Bankstown вообще, один из самых загруженных портов Австралии. А чего Том туда попал? А они с инструктором летали в пилотский магазин к нам. Вроде, это выглядит идиотизмом, но ведь это же все равно опыт, который надо как-то набирать: часы налетывать, посадки тренировать, навигацию опять же. А магазин - это так, повод летать именно в Bankstown, а не, скажем, в Auburn.

Вышел из магазина с велосипедом где-то в час дня. Я в центре Сиднея и у меня день впереди. Припарковал велосипед возле магазина, там специальная стоянка есть, и пошел обедать в свое обычное место. По пути решил сходить покормить какаду. Давно я этого не делал, соскучился по птичкам. Купил по пути булочку для хот-догов за два доллара, чтобы было чем их кормить.

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

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

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

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

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

Воскресенье - это день полетов. На этот раз полет был запланирован на 9.30, что было не совсем удобно, так как с утра было еще холодно, а мне предстояло некоторое время ехать на велосипеде. Пришлось одеть ветровку и предусмотреть место в рюкзаке, куда ее можно было бы засунуть на обратном пути. Правда, на большой скорости пробирало даже сквозь нее. Думал, что уж на этот раз точно подхвачу простуду. Но тоже обошлось. И откуда столько иммунитета вдруг?

На аэродроме все как всегда, жду Питера, иду к самолету, осматриваю его. Питер, как и в прошлый раз, сложил руки на груди и ждал что я буду делать. Я включил радио, прослушал ATIS, выставил давление на альтиметре, попробовал выставить гирокомпас по магнитому, но он себя как-то странно вел: когда я отпускал кремальеру он уходил на 3-4 градуса влево. Магнитный компас тоже не блистал - болтался в своем корпусе, и сам корпус болтался на крепеже. Мда, полеты по приборам нам не светят на этом борту. Да и не надо.

Запрашиваю разрешение на запуск, проверяю все по карте, запускаюсь, рулю к рулежной дорожке K (Kilo), при подъезде к которой надо доложить диспетчеру земли и запросить руление к полосе для выполнения кругов. Я уже писал, что полоса 29L-11R работает только для круговых полетов. Прорвавшись через гвалт в эфире, запросил руление к полосе, получил инструкцию рулить через дорожку N (November). Вообще, это слегка неправильно, по идее там последовательность такая: Kilo-November-Lima. На ладно, я его понял, порулил. По ходу руления выяснилось, что гирокомпас основательно неисправен - он постоянно вращался.

Заруливаю в Runup Bay, гоняю двигатель по карте, запрашиваю руление к полосе, получаю указание рулить к рулежке Sierra 4 и связаться с вышкой. Знамо дело, рулю туда, торможу, настраиваю частоту вышки, запрашиваю взлет, получаю указание рулить на полосу и ждать, выполняю. Дают разрешение на взлет, взлетаю.

Сначала был простой круг с хорошей мягкой посадкой, а потом Питер решил меня погонять по аварийным ситуациям: сначала убрал газ на взлете. Отказ двигателя, подбирай площадку. А посмотрел вокруг: слева парк, но там холмистая местность, полянки есть, но деревьев многовато вокруг, могу не вписаться. И дети бегают. Туда нельзя. Справа пруд. Вот на него и сяду, если что. Сказал Питеру, тот добавил газ, сказал: "Хорошо. Ты принял решение."

На одном из кругов он убрал газ где-то перед третьим разворотом и сказал садиться. Я сначала начал делать обычную коробку, только без закрылков, но он все время мне твердил что-то про то, что надо быстрее идти на threshold. Я все не врубался что он имел в виду. На всякий случай срезал повороты и пошел на полосу под углом. Потом понял, что под threshold он имел в виду торец полосы. Сел нормально, хотя скорость пришлось держать около 60, вместо положенных 75. Управлять самолетом при этом надо осторожно, чтобы невзначай не вывести на закритический угол атаки.

Еще на одном круге Питер сразу после взлета начал что-то делать с бумажкой, явно намереваясь закрыть какой-то прибор. Я думал, что он хочет закрыть гирокомпас, крутящийся аки вентилятор. Но он закрыл указатель скорости, сказав: "Упс, отказ указателя скорости." Ладно, не так оно и страшно, лечу себе спокойно по кругу, захожу, сажусь. После посадки Питер убрал бумажку. Прибор показывал что-то в районе 40. Хорошо посадил, подвесил и дождался пока самолет упадет, добирая штурвал понемногу.

После очередного взлета Питер спросил как я чувствую, смогу ли пролететь самостоятельно. Почему нет? Тогда высадишь меня у рулежки, полетишь сам. Он сделал запрос по радио, объяснив диспетчеру, что у меня будет первый самостоятельный полет. Я посадил самолет, убрался с полосы, дорулил до кармана, где гоняют двигатели (Runup Bay) и остановился. Там стоял еще один Piper с другим перворазником, от которого отходил его инструктор. Питер снял наушники, похлопал меня по плечу и вылез из самолета.

Ну вот и пришел момент, о котором я там много читал. Летчики обычно описывают первый полет как что-то волшебное, описывают страх, восторг и неверие в происходящее. Некоторые вспоминают свои ошибки, которые им запоминаются на всю жизнь. А у меня все было не так. Я вообще ничего не чувствовал. Ровным счетом ничего. Абсолютно. Ну, круг, и что такого? Я их уже сколько намотал здесь? Одним больше, одним меньше...

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

Дальше действую по стандартному сценарию: запрос на взлет, выруливание, разрешение взлета, взлет. Второй Piper был как-то близковато ко мне, пришлось начинать первый разворот немного позже, а то я бы его догнал. Чего он такой медленный-то? Тип, вроде, тот же. На круге пришлось сбросить скорость до 80, иначе меня бы угнали на второй круг, тот пилот не успел бы убраться с полосы. Закрылки пришлось тоже выпускать раньше, тормозить чем возможно. И все равно близко этот самолетик был от меня. Ну что же ты такой тормоз, а? Я чуть ли не до торца ждал разрешения на посадку и готовился к уходу на второй круг. Но его, в последний момент, все же дали. Сажусь, убираюсь с полосы, еду к Питеру. Тут произошло некоторое недопонимание с диспетчером земли: я думал, что подберу Питера на рулежке Sierra 4 и мы продолжим летать дальше, и запросил руление к Sierra 4. Диспетчер меня поздравил с первым полетом и спросил не надо ли мне подобрать инструктора. Я подтвердил, что да, надо. Что он сказал дальше, я не понял, и ответил, что не понял последней фразы. Но ответа не было. Да и ладно, заруливаю в Runup Bay, забираю Питера, который пожал мне руку и сказал запрашивать руление к стоянке Schofields. Тут-то дошло что я сделал не так.

Руление на стоянку не особо интересно. После выключения двигателя Питер начал прикалываться насчет того, что я его сдул, потому, что он меня достал, и я хотел его поскорее выкинуть из самолета. Я как мог извинялся, краснея. Потом он пошел в клуб, а я пока заканчивал дела с самолетом: снятие показаний счетчиков, швартовка, закрепление рулей и т.д. На полу за сидением нашел красивое зеленое яблоко. Взял его с собой.

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

Потом Питер начал заполнять бумаги, снимать копии моих лицензий, считать часы налета. У него получилось 12,8, а в летной книжке 13,1. Не знаю почему так, надо бы поднять все бумаги, посмотреть что в них. Пока что пришлось исправить значение в летной книжке. Потом он поздравил меня еще раз, сказав, что теперь я принадлежу к элитной группе людей, и этот полет возвращает меня в далекий 1903 год, когда братья Райт в ненастный день подняли в воздух свою слабую и неустойчивую полотняно-реечную конструкцию, которую сложно назвать самолетом. Я сказал, что не хочу возвращаться в день с такой погодой, и летать на этой штуке.

Вот и сделан небольшой шажок в небо. Сколько их еще предстоит сделать? И сколько сил это потребует? Небо прекрасно, но путь к нему тяжел. Зато тот, кто его прошел, становится другим человеком, для которого ценности этого мира меняют свое значение и многое становится второстепенным. Я, кажется, начинаю понимать это, и то как пилоты смотрят на мир. Действительно, небо - это то, ради чего стоит жить.

Ну вот, 1:30 ночи. А я думал, что успею до 12 управиться. Когда ж высплюсь, наконец, а?

11 комментариев:

  1. Прими поздравления!

    Побуду немного КО. Для бизнеса главное скорость разработки, а не красота системы. Еще в "Компьютерре" читал слова одного разработчика для финансовой сферы, что если быстрее всего для реализации тормоза будет посадить человек в багажник, то так и сделают: продукт-то нужен вчера. Ну а когда дело доходит до изысков типа красоты, вот тут-то и требуются товарищи вроде тебя. Хотя и про внутренне устройство Оракула ходят страшные слухи, про код написанный индусами. От кривого кода не скрыться. ;)

    ОтветитьУдалить
  2. Поздравляю, Артурик, с первым полетом!
    Пусть он сейчас тебе показался самым обычным, но в будущем ты будешь вспоминать его совсем по другому.
    Удачи ;)

    ОтветитьУдалить
  3. To Nick:

    Спасибо. Кэп, как всегда, прав. Но способ есть: генерировать код самому.

    To Mandarin:

    И тебе спасибо. Возможно, что и буду вспоминать этот полет по-другому. Но в тот момент все чувства выключились. Посмотрим что будет во второй раз. Там уже все будет поэмоциональнее, думаю.

    ОтветитьУдалить
  4. Вау! Супер! Поздравляю!! Ну ты, как всегда в своем репертуаре: "ну и что? обычный полет..." :)))
    А насчет работы... Классно, когда на работе интересно и не приходится с понедельника считать дни до выходных. Так что, ищите! :)

    ОтветитьУдалить
  5. Привет! Поясни пожалуйста вот эту твою фразу:"Тут-то дошло что я сделал не так." Что именно ты сделал не так? Что конкретно ты понял?

    Сидение у велика сменить на более удобное нельзя? Не злоупотребляй ездой на велике!

    ОтветитьУдалить
  6. Привет. Не так я сделал вызов по радио. Надо было запрашивать руление к Runup Bay, а я запросил к Sierra 4.

    Насчет сидения не знаю, наверное, можно. Только зачем? Почему не злоупотреблять? И как это, вообще?

    ОтветитьУдалить
  7. Место что пониже спины может болеть от не очень удобной сидушки, именно поэтому и говорю, что может быть стоит присмотреть более удобное для себя. Не злоупотреблять - это значит не ездить слишком много за раз. Всё должно быть в меру. Особенно пока начинаешь только привыкать.

    ОтветитьУдалить
  8. Поздравляю! Наконец-то я после отпуска добрался до твоего блога. У тебя оказывается столько всего интересного произошло. Молодец, продолжай в том же духе.

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

    ОтветитьУдалить
  10. Жизнь читателя без новых постов скучна и невыразительна. Даже когда оный пребывает в отпуске.

    ОтветитьУдалить