<= На основную страницу (Homepage)
<= Short Stories
<= Back to the original story

Ошибка в пакетном задании и атомная подлодка


Нас было четверо в комнате, но по-настоящему работали лишь Тони и я. Лерой время от времени позёвывал с отсутствующим выражением (а точнее, с абсолютным отсутствием всякого выражения), и от этого мне становилось ещё более не по себе. Я несколько раз имел дело с Лероем, когда он как оператор ночной смены помогал мне в критических ситуациях, и видел в нём здравомыслящего человека, относительно грамотного технически, а главное, готового безропотно повторять одни и те же манипуляции столько раз, сколько потребуется. Но сейчас его расслабленное наблюдение за ходом событий заставляло меня нервничать. Положение было, мягко говоря, не из лёгких. Если мы не сможем исправить ошибку в программе и пакетное задание будет аварийно падать раз за разом, то порядка двухсот тысяч выплат не состоится. В масштабе вселенной – ничто, но для нашей компании – катастрофа космического масштаба.

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

Стэн сидел тихо и без движения; после стандартного приветствия он не сказал ни слова. Я был приятно удивлён – обычно менеджеры ночной смены, если они уж соизволили приехать, выдавали одну рекомендацию за другой, стараясь продемонстрировать высочайшую деловитость. Мне всегда казалось, что они при этом мысленно сочиняют монологи, которые будут затем произнесены и даже сыграны для единственного зрителя – нашего вице-президента по компьютерному обеспечению. Стэн, впрочем, совсем не походил на стереотипного менеджера технологической компании. Маленького роста, сам себя шире в плечах, с бицепсами, которые сразу бросались в глаза, даже если на нём был пиджак. Голова, посаженная на короткую шею под необычным углом, делала Стэна похожим одновременно на быка и на матадора. Если бы меня спросили, кем должен оказаться человек с такой наружностью, я колебался бы в выборе между водителем тяжёлого грузовика, полицейским и гангстером. Даже при том, что его большое простецкое лицо всегда выражало ровное, неагрессивное дружелюбие.

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

Мы с Тони уже вышли на третий круг повторных рассуждений, в отчаянии проходя по одной и той же дорожке обсуждения. Ладно, допустим ошибка здесь, но почему тогда выплаты нормально посчитались в прошлом задании такого же рода, в среду? Ведь ничего не изменилось в программах со среды. Какова вообще связь между назначением выплат и банковскими протестами, куда Малати внесла своё изменение? И почему не всякий протест банка приводит к падению назначения выплат, а только примерно одна треть? Мы задавали друг другу те же самые вопросы и не особенно надеялись на новые ответы. Мы уже несколько раз попробовали действовать силой, грубо удаляя из общего списка того получателя выплат, займы которого вызывали сбой программы и перезапуская пакет – лишь с тем, чтобы убедиться в неизбежности следующего сбоя примерно через такое же время. Нет, силовые методы здесь не проходили.

«Тони, - сказал я, - давай ещё раз пощупаем эти пять записей, на которых задание споткнулось, - есть ли у них что-нибудь общее?» Тони пожал плечами: «Ну давай. Только...»

«Вы уже это проходили, братцы, - Лерой не мог больше переносить висевшее в воздухе напряжение. – Вы уже убедились, что у них нет никаких характерных особенностей».

Бычья шея Стэна слегка порозовела. «Слышь, Лерой, - сказал он, - помолчи, пожалуйста. Ты думаешь, ты им этим поможешь?» И безо всякой паузы он обратился к нам: «Холодная газировка, горячий чай – что кому?» Мой ответ выскочил без секунды промедления, без малейшего размышления: «Мне - ничего. Я ничего не буду». Я не хотел отвлекаться. Ни на что!

Тони повёл себя иначе, не как торопливая белка. Он ответил не сразу, но очень скоро, может, секунд через десять: «Мне что-нибудь холодненькое. Только без кофеина. Лучше всего - лимонаду. Спасибо, Стэн».

Он не успел договорить, как я почувствовал во рту невероятную сухость. Я облизнул губы, почти ощущая вкус леденящего лимонада. Стэн посмотрел на меня с едва мелькнувшей понимающей усмешкой: «Может, и тебе – того же?» Я не смог удержать ответную усмешку: «А пожалуй, да».

Стэн устремился к дверям, но приостановился, проходя мимо Тони, и похлопал того по плечу. Потом посмотрел на меня, потом – на Лероя.

«Расслабьтесь, ребятки, - сказал Стэн, - расслабьтесь, и вы этот орешек расколете. Что-то внутри подсказывает мне, что вы уже близко. Я верю своему нутряному чувству. У тех, кто имеет дело с океаном, нутро научается разгадывать кое-что». И с этими словами он вышел.

«Он что, был моряком?» - спросил я. «Ещё как! – ответил Лерой. – Служил на атомной подлодке».

«Посмотри, посмотри сюда, - Тони от волнения перешёл на шёпот. – У всей пятёрки – займы с четырьмя выплатами, и для каждого из них сегодняшняя выплата – последняя. Может, здесь собака и зарыта? Может, теперь почему-то не проходит последняя выплата?» Мы посмотрели ещё на нескольких клиентов, которым сегодня полагалась выплата. Через пару минут мы обнаружили парня из Миссури с четырьмя выплатами, которому это же задание прекрасно оформило последнюю, четвёртую выплату. «М-да, мы отброшены на исходные позиции», - вымолвил Тони.

Но теперь была моя очередь сделать маленькое открытие. «Погоди! – от волнения я дико зажестикулировал и чуть не стукнул Тони по носу. – Дай мне проверить какого типа протесты банков привязаны к этим пяти займам!»

«Какая разница? – Тони смотрел с недоверием. – Малати изменила только проверку срока погашения...»

Но я уже знал, я уже просёк, что произошло; осталось только проверить и убедиться. «Постой, постой! Да! Нет! Всё-таки да! Постоянная инвалидность, смерть, снова постоянная инвалидность... Да, конечно! А у этого из Миссури? – Отлично, попросту неплатеж. Замечательно! Где изменение Малати? – моя речь стала нечленораздельной, потому что мысли расталкивали друг друга и не могли выстроиться в толковую последовательность. – Да, вот оно! Малати не фильтровала банковские протесты по типу. Мы исправим это моментально. Тони! Ты просто гений!»

Но даже признание гением не вполне убедило Тони. Он спросил: «Хорошо, а почему же прошло в среду?»

«В среду? Почему же прошло в среду?.. Не знаю», – я был в замешательстве.

«В любом случае, – только в этот момент, услышав голос Стэна, я понял, что он уже вернулся, - в любом случае надо попробовать пустить с заплаткой. Время уходит, и это сейчас – единственный шанс для нас». Стэн стоял с тремя большими стаканами газированного лимонада в руках: «Извини, Лерой, я забыл тебя спросить. Лимонад сойдёт?»

«Нормально, – сказал Лерой и небрежно добавил: – Кстати, у меня есть одна мыслишка по поводу среды. В среду у нас была примерно тысяча выплат, может, даже меньше. А сегодня – под двести тысяч. Вполне возможно, что в прошлый раз не были назначены выплаты никому такому... Смерть, постоянная инвалидность всё же не так часто встречаются...»

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

«Ну что ж, Стэн, - сказал я, - пожалуй, Тони и я можем уже уезжать. Я устал». Тут я был не вполне искренен. У меня были все основания для усталости, но я себя усталым не чувствовал. Я слишком возбудился – усталости не оставалось места. Я сказал так, чтобы спровоцировать Стэна на похвалу. Он не выказал положенного менеджеру энтузиазма, не выразил с помощью множества красивых слов своего восхищения прекрасной работой, проделанной Тони и мной.

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


             * * *

Пиццы прибыли не так скоро, нам пришлось ждать добрые полчаса. Но на самом деле получилось даже лучше, потому что обработка выплат закончилась за пару минут до того и каждый из нас сбросил с себя остатки напряжённости.

«Стэн, как ты догадался, что они были уже близко? - спросил Лерой, потянувшись за первым куском пиццы. – Вот эту, с пепперони, я люблю больше всего».

«Понятия не имею, просто понял. Ну, просто, всё кончается хорошо куда чаще, чем плохо. Я часто раздумываю, с чего бы это было так».

«В каком смысле?» - спросил я. Стэн всё больше заинтересовывал меня.

«Стэн просто – оптимист по природе, как я. Верно, Стэн?» - мы все были довольны собой, но в эту минуту Лерой казался самым довольным.

«Послушайте, братцы, тут никакой нет связи с оптимизмом. Это то, что я вижу вокруг. Большинство людей умирает не в результате автомобильной аварии, но почти всякий может вспомнить несколько случаев на дороге, когда он мог бы запросто погибнуть и не погиб. И многие думают, что их спасло чудо. В каких-то случаях так, может, и было, но чудеса ведь не происходят на каждом шагу, да? А теперь давайте посмотрим на нашу систему. Мы все знаем, что в ней полно ошибок и что некоторые из них могли бы всё пустить под откос. И ЧП типа сегодняшнего у нас случаются по несколько раз в месяц. Обычно они не такие страшные, как это, – Стэн зачем-то показал на ряд оперативных дисплеев, - но в любом случае... И за три года, что я здесь, у нас был только один... нет, погодите, два – только два случая серьёзных неприятностей от клиентов из-за ночных заданий. И если вам охота послушать, то я вам могу рассказать пару историй о куда более серьёзных ситуациях, где всё хорошо кончилось вопреки всем раскладам».

«Конечно», - одобрил Тони.

«В общем, было это в Израиле, в Хайфе. Наша лодка пришла туда не плановую стоянку для некоторых работ, которые были наперёд назначены. Мы должны были там долго простоять. На второй день по прибытии капитан разрешил большой группе сойти на берег. Вы знаете, что моряки делают на берегу?»

«Шлюхи?» - спросил Лерой и его лицо засияло.

«Да, и шлюхи тоже. Но шлюхи – не главное. Основная задача – выпить сколько можешь, и даже больше. Я даже и не понимаю, почему это всегда – задача номер один. В любом порту, в любой стране. Причём и те, у кого, ну, друг, или родственники, да даже подружка в городе – и они должны были первым делом упиться. Обычно отпускали на 24 часа, с раннего утра. Чаще всего с пяти до пяти. Ну, вокруг каждого порта есть хорошие места, где можно надраться задешево. И женщины тоже – там, естественно. Израиль – страна хорошая, – Стэн бросил быстрый взгляд на меня, – вино хорошее, и женщины тоже хорошие. Короче, --- »

«Красивые? Темпераментные? Что значит ‘хорошие’?» - Лерой явно возбудился.

«Я тебе потом скажу, дай мне историю докончить. В общем, мы пили с самого начала, а потом стали шататься по городу, пьяные, но ещё не под завязку. Был приятный день. Хайфа – приятный город, – Стэн бросил на меня ещё один взгляд. – Потом мы снова пили, потом мы пошли на танцульки, потом отымели проституток, потом я поспал, ну, час, может быть, обидно время терять – что за сон в увольнении на берегу? Какого чёрта спать? – когда мы вернёмся на лодку, никому в голову не придёт трогать нас до следующего дня, все прекрасно понимают, как мы набухались и выдохлись на берегу. Поэтому мы потом снова пили, а потом поддерживая друг друга доплелись до причала, а на лодке ребята каждого довели до его койки. В общем, мы пришли в пять, а около шести старпом будит меня: «Вставай, мы должны немедленно уйти из Хайфы! Проведи экстренный запуск реактора». Что? Экстренный запуск? Я сначала решил, что мне кошмар снится, попытался снова заснуть. Но он начал меня трясти и толкать, весьма чувствительно: «Подъём, Стэн! В Западном Средиземноморье необычно мощный циклон сформировался, движется сюда, гавань слишком мелкая для нас при таком волнении, какое ожидается. Лодка должна уйти сейчас же. Ну, быстренько, вставай же, сукин сын!»

Но я попросту не мог встать. Я был слишком пьян и конечности меня не слушались. Я никак не мог вспомнить, где я и как сюда попал. Понимаете, есть две совершенно разные процедуры запуска реактора на лодке. Нормальная занимает около суток, я её проводил раз десять, не меньше. Экстренный запуск я делал только один раз, на курсах, и то под наблюдением инструктора. Он занимает меньше часа и не полезен для реактора. И он, сами понимаете, опаснее. Поэтому я сказал: «Я не могу провести экстренный запуск, сэр. Я сейчас совершенно не способен на это. Дайте мне, пожалуйста, ещё час на сон». – «Час на сон? Ты спятил?!» Тем временем уже сам капитан оказался в кубрике. Он сказал мне, совсем по-другому, тихим, мягким голосом: «Мы всё понимаем. Но других вариантов нет. Тебе придётся провести экстренный запуск. И тут же, безо всякой паузы, приказал: «Сесть!» Я сел, но сразу упал обратно на матрац. «Вот вы, двое, помогите ему», - приказал капитан. «Капитан, сэр! - сказал я. - Я не могу запустить реактор. Я не помню, как это делается. Я могу взорвать лодку». – «Заткнись, - заорал старпом, - Заткнись и поднимайся!» Капитан поднял руку, останавливая старпома. «Ты вспомнишь, когда начнёшь делать, - сказал капитан мне. – Мы тебе поможем. И у тебя есть инструкция». Я понял, что он прав ещё до того, как он договорил: я начал вспоминать, как делается экстренный запуск. «Может, кто-нибудь другой может нажимать на кнопки, сэр? Я буду говорить, какую кнопку нажимать, какой тумблер врубать. Мои руки мне не подчиняются, сэр». Капитан насупился: «Нет, Стэн. Ты знаешь, что только ты на этой лодке имеешь право запускать реактор. Но мы тебе поможем».

«Постой! – прервал Тони. – Ты серьёзно? Как могла такая важная операция не быть продублирована? А если бы ты умер?»

«Не знаю. Но было именно так. Кроме меня на борту не было никого, кто прошёл бы необходимую подготовку».

«Это и сейчас так?»

«Понятия не имею. Когда я ушёл с флота, мне это всё стало до лампочки. Так на чём я остановился? Ну, я как-то оделся, хлебнул какого-то кофе через силу... Два матроса меня повели к реактору, почти понесли, там мне дали высокую табуретку, я и не знал, что на лодке такая есть. Я сидел на этой табуретке, вместо того, чтобы стоять у пульту, и ещё меня сзади кто-то поддерживал. Ну, и эти два парня мне помогали двигать руки: один – правую, другой – левую. Что делать в какой последовательности, я вспомнил без проблем. Капитан следил по инструкции, но я всё вспомнил правильно. Вот двигать руки было трудней. Так я этих помощников матом поливал, ужасно. «Да не сюда, а туда, такой ты и сякой, сюда, левей, нет, правей!» Я думал потом, как они эту брань выдержали? Ничего, потом забавлялись, передразнивали. В общем, запустил я его нормально, чёртов реактор».

«А потом? – спросил Лерой. – Смог ты заснуть потом?»

«Спрашиваешь!» - Стэн усмехнулся и сделал большой глоток из бутылки с диетической кока-колой.


             * * *

Когда Линда и Джошуа, операторы утренней смены, пришли на работу, мы уже почти закончили. Только два куска пиццы остались – как раз по одному на каждого из них.

«Спасибо, - сказал Джошуа. – Что тут у вас было? Опять заминки с выплатами?»

«Ага. Небольшие заминки», - улыбнулся в ответ Лерой.

«Всё получилось отлично!» - воскликнул я с энтузиазмом.

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

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

2013

<= Back to the original story
<= Short Stories
<= На основную страницу (Homepage)