Приближающемуся Дню Программиста посвящается.
Билл щелкнул мышью по ссылке и тут же почуял беду. Так и есть – ссылка была битая. Только он успел отклониться, как из ноута вылетело «Socker Error» по направлению к кухне. Билл метнулся в кухню: «Дорогая, ты его не поймала?» Жена мельком глянула на роутер. Но Билл уже понял, что опоздал: телевизионная панель, укрепленная над роутером, была пробита насквозь в направлении снизу-вверх и уже погаснув дымилась. В потолке чернели две дыры. Ну как исключение в маршрутизаторе могло вызвать исключение в телевизоре? Кэтрин открыла кран.
– Билл, кажется воды нет. Ты не глянешь на стояк в ванной? Может оно там всплыло…
Повторять дважды не потребовалось. Билл побежал в ванную. Конечно же он не успел. Схватив ключи в прихожей, выбегая в подъезд, он крикнул: «Я наверх!» и захлопнул дверь.
Лифт стоял на их этаже и это давало надежду. «Ну давай же» – поторапливал Билл медленно закрывающиеся двери. В спешке он чуть не нажал кнопку «технический этаж», но вовремя вспомнил, что это было бы необработанной ошибкой: ехать нужно до минус первого, а потом, поднявшись, открыть дверь технического этажа и через него попасть на чердак, где есть шанс перехватить последнее вплывающее исключение по отсутствующей в кране воде, а если повезет то и…
Билл выскочил из лифта и в три прыжка преодолел лестницу, на бегу готовя связку ключей. И только когда он готов был найти нужный ключ в связке, он вспомнил, что для этого ключа у него нет значения. Ещё месяц назад ключ он отдал, чтобы сделать копию. Копию ему сделали, но не инициализированную! Никто его, конечно, об этом не предупредил! В какой среде приходится жить!
Билл с последней надеждой толкнул дверь. Она была закрыта. Все шло так хорошо! Дурацкая дверь! Он яростно стукнул ее ногой. В этот момент летящее от лифта не перехваченное кем-то исключение пролетело мимо него. Билл успел прочитать: «Out of floor range», когда оно просвистело возле головы и вышибло дверь технического этажа, пробило чердак и крышу. Всасываемый от перепада давления воздух подхватил бедолагу и вынес в пробоину, как пулю из пневморужья. И успел подумать Билл:
5. Не у нас одних воды нет в квартире.
4. Наверное у нас новый сосед.
3. И тоже не любит перехватывать исключения.
2. Чувак, что надо.
1. Как-нибудь выпьем пифка вдвоем.
0. Restarting…
– Вы же в курсе, что ваш монолит, все-таки, в контейнере, да? А так бы и ждали пока админы с выхов придут, – сказал врач. – А если бы родственники не откопали ваш дебаг-лог, никто бы так и не знал, почему вы постоянно куда-то пропадаете.
Билл все еще не отошел от резкой смены обстановки. Он посмотрел на врача, на жену. Та кивала доктору: мол, уже в теме.
– А вообще – присмотритесь к контейнерам поменьше, – Он дал им по пропуску на осмотр нового сдающегося жилья. – И да! Эксепшены нужно ловить все равно, – он снял очки и закрыл журнал, как бы намекая: «Давайте уже двигайтесь, у меня очередь не персистентная».
Совсем уж было уснувшая очередь оживилась, когда они вышли из кабинета. Ближе к середине двое старичков беседовали, Билл еще издали услышал их разговор.
– Я живу в монолите и вполне рад этому. Не надо мне этих новомодных равиоли-комплексов. Я так и говорю всегда. А то сын с невесткой уже живут в контейнерах от грузовиков. И что хорошего? В одном контейнере ванная, в другом – гостинная. Он мне: «Если вдруг прорвёт воду, то затопит только контейнер с ванной. А у вас в монолите постоянно что-то ломается и потом во всем доме хаос».
Его собеседник махнул рукой:
– Дочка живёт, знаю. Рассказывала. У них не лучше. Любой эксепшен эскалируется в тэсэжэ или управляйку… А чтобы после душа вытереться – нужно голым выйти на улицу в хост-хранилище за полотенцами.
Бабушка, сидевшая рядом, перекрестилась.
– Но она у меня боевая. Копьё попросила, что у меня на стене с Африки висело. «Буду наше любимое межсервисное взаимодействие налаживать» говорит, – продолжал старичок.
– Межсервисное! – воскликнул первый. – Одно название! Открываешь кран на кухне – воды нет! А кто будет виртуальную сеть домашнего водопровода прописывать, а? Никогда не соглашайтесь. Имеем право жить где живем. А по телевизору сказали…
Успев устать от этой престарелой болтовни (чего только старики не напридумывают) Билл и Кэтти вышли на улицу. Было людно. Пока пробирались сквозь толпу каких-то хипстеров, в руках у них оказалось несколько флаеров. По пути Билл рассеянно разглядывал их в руках. На одном было написано: «Жилой комплекс Elixir! Let it fail!» с картинкой, где было много высоток с курсирующими между ними по воздуху роботами-почтальонами. Еще один: «Ошибка – это значение. Его нельзя игнорировать. Go к нам!» На третьем была надпись «Результат в руках – паттерн матчинг в помощь!»
Наконец, после долгого пути они зашли в арку нового дома с большой надписью: «Проще извиняться, чем спрашивать разрешения».
«Ха. Неплохо. Именно за это Кетти в свое время меня полюбила», – подумал билл. – «По крайней мере хочется в это верить».
За аркой была территория с разбросанными то там, то сям домиками с надписями. Они нашли свой домик и зашли внутрь. Там была всего одна комната с двумя окнами. «Эстэдэаут и эстэдээр» – прочитал таблички Билл. Кровать на двоих, два кресла, стол. Там, где должна быть ванная комната – была кнопка с надписью «Помыться».