↓ Содержание ↓
↑ Свернуть ↑
| Следующая глава |
Говорят, что жизнь — это код, написанный кем-то до нас. Он уже запущен и работает, и мы можем только вносить в него правки. Кто-то старается удалить все ошибки, переписать каждую строчку, чтобы всё выглядело идеально. Другие же принимают баги как часть замысла, даже если этот замысел непонятен.
Клод Буржуа всегда жил по расписанию. И он всегда считал, что жизнь — это программа, которую можно и нужно отлаживать. Вся его энергия уходила на то, чтобы каждое утро начиналось по расписанию, а дела шли строго по плану. Его утро начиналось ровно в семь, завтрак состоял из одной и той же овсянки, а на работе он славился тем, что умел находить и исправлять ошибки быстрее, чем кто-либо. И поэтому Клод всегда считал себя человеком, у которого всё должно быть идеально — от ровных складок на рубашке до чётко составленных планов на неделю. Клод был из тех, кто всегда хотел всё оптимизировать. Если чашка чуть не по центру — он подвинет. Если шаги собьются с ритма — он поправит. Если код программы содержит лишний пробел — удалит. Так было проще: порядок защищал его от хаоса. Он был убеждён: если заранее предусмотреть все возможные варианты, то можно избежать неприятных сюрпризов. Но жизнь снова и снова доказывала обратное — и каждый раз в самый неожиданный момент.
Например, сегодня утром.
Ему нужно было успеть на встречу в университете, а будильник, как назло, не сработал. Вернее, он сработал... Только не там, где надо — на телефоне, который ночью разрядился. Итог — двадцать минут на сборы, один непослушный галстук, запутавшийся в воротнике, и забытая дома флешка с презентацией. И то — Клод только в дороге понял, что оставил её дома. А автобус, в который он всё же успел вскочить, резко затормозил, и он едва не упал, запутавшись в собственном шарфе.
— Отличное начало дня, — пробормотал он, выскакивая из квартиры и мысленно уже записывая эту пятницу в разряд неудачных.
Он ещё не знал, что через два часа будет стоять в мастерской Маринетт Дюпен-Чен и наблюдать, как она, нахмурившись, отпарывает кривую строчку на платье и при этом улыбается так, будто в этом нет ничего особенного.
* * *
Они познакомились пару месяцев назад, когда Клод случайно зашёл в её ателье. Тогда он искал подарок для сестры и понятия не имел, что именно хотел. Маринетт же, словно опытный навигатор, за несколько минут вывела его на идею — и изготовила крошечный шарф с вышитыми инициалами, который идеально подошёл к цвету глаз получательницы. Он тогда неловко признался, что в жизни не видел ничего столь аккуратного. С того дня он стал заходить чаще. Сначала — по делу, потом — просто так.
Сегодня его привела туда глупая мысль: раз он и так провалил утро, то хотя бы порадует себя чем-то хорошим.
— Ты что-то задумал, Буржуа? — подняла на него глаза Маринетт, аккуратно вытаскивая иглу из ткани. — У тебя этот взгляд "сейчас расскажу, как жизнь меня подловила".
Клод усмехнулся и присел на высокий табурет.
— Я проспал. Забыл флешку. Чуть не упал в автобусе, потому что шарф развязался. — Он развёл руками. — Кажется, этот день решил проверить меня на прочность.
— Ну... — Она пожала плечами, отложила ткань и взяла кружку с чаем. — По сути, всё это баги. (1)
— Баги? — переспросил он.
— Ну да. В коде жизни. Ты же не перестаёшь пользоваться программой только потому, что у неё есть ошибки? Ты ищешь обходной путь или патч.(2)— Она подмигнула. — Может, я просто слишком много общаюсь с программистами.
Он рассмеялся и впервые за утро почувствовал, что день, возможно, не такой уж и плохой.
* * *
Маринетт умела реагировать на неприятности с каким-то внутренним светом. Неделю назад один заказчик прислал ткань на два размера меньше, чем нужно. Вместо того, чтобы злиться, она переделала фасон, и тот оказался даже лучше первоначального.
— Это была фича, (3) замаскированная под баг, (4) — сказала она тогда.
И у Маринетт была удивительная привычка — хранить в баночке маленькие бумажные полоски с надписями вроде "Это не конец света", "Ошибка — не враг, а учитель" или "Сделай вдох, а потом уже паникуй". Она доставала их, когда кто-то — в том числе она сама — слишком переживал из-за неудачи.
— Это мой баг-фикс-контейнер, (5) — объяснила она как-то. — Если баги неизбежны, то и исправления должны быть под рукой.
Клод же обычно раздражался, если что-то шло не по плану. Но рядом с ней он начал учиться выдыхать, прежде чем принимать решения.
Клод взял одну полоску и прочитал: "Разбитая чашка — повод купить новую, а не перестать пить чай". Он тогда ещё подумал, что хотел бы видеть её улыбку в моменты своих собственных "разбитых чашек".
Вечером они вышли на набережную. Лёд на реке ещё не сошёл, но воздух уже был тёплым. Маринетт принесла маленький контейнер с пирожными — сказала, что это "патч-десерт" для его неудачного дня.
— А если баги будут каждый день? — спросил он, беря одно пирожное.
— Значит, будем каждый день искать им исправление, — ответила она так, будто это самая очевидная вещь в мире. — Знаешь, вообще говоря, вся наша жизнь по большому счёту состоит из багов. И разница между счастливой и несчастливой судьбой лишь в том, как мы на них реагируем.
Он посмотрел на неё и в этот момент понял: именно так он хочет учиться жить — рядом с ней. С человеком, который не боится кривых строчек и недостающих деталей. С человеком, который видит в каждом баге возможность.
* * *
Через неделю он снова опоздал, на этот раз — на их встречу в кафе. И снова это случилось по глупой причине: он забыл зонтик, попал под дождь и промок до нитки. Когда он ворвался в зал, Маринетт уже сидела за столиком и что-то рисовала в блокноте.
— Прости... — начал он, но она махнула рукой и протянула ему бумажное полотенце.
— Не извиняйся. Просто добавим это в лог (6) багов. — Она улыбнулась. — Зато у тебя сейчас будет горячий шоколад.
Он сел напротив и впервые понял, что даже промокшая одежда не портит ему настроение, если напротив — она.
* * *
Весной Клод решил сделать ей сюрприз. Он заказал ткань и попытался сшить маленькую декоративную подушку в форме сердца. Естественно, всё пошло не по плану: ткань оказалась слишком жёсткой, швы — неровными, а начинка выбивалась в одном месте комком.
Он чуть не выбросил подушку в мусор, но потом вспомнил слова Маринетт про баги. И всё же принёс.
Маринетт взяла подушку, долго рассматривала её, а потом обняла.
— Это самый тёплый баг, который я видела, — сказала она. — И да, я его оставлю.
Они научились чинить друг друга, как чинят код — не спеша, разбирая ошибки, но не обвиняя за них. Иногда Клод всё ещё злился на себя, если что-то шло не так. Иногда Маринетт тоже уставала от бесконечных заказов и кривых строчек. Но теперь они знали: рядом есть тот, кто всегда напомнит — баги можно исправить.
И, может быть, именно из этих исправлений и складывается самая счастливая версия жизни.
1) Ошибка в программе или в системе, приводящая к неожиданному поведению программы и выдаче некорректного результата.
2) Небольшой фрагмент программного кода, который вносит изменения в существующее программное обеспечение с целью исправления ошибок, улучшения функциональности или добавления новых возможностей.
3) Полезная особенность, функция, свойство, специфическая черта, дополнение в программном обеспечении.
4) ситуация, когда ошибка в программе, которая изначально была багом, становится фичей, то есть полезной функцией, это и есть фича, замаскированная под баг (отсюда и пошло выражение "не баг, а фича")
5) багфиксинг — процесс исправления ошибок (багов) в программном обеспечении (ПО), и, соответственно, баг-фикс-контейнер — сборник исправленных ошибок.
6) запись событий и сообщений, создаваемая программой или системой во время её работы.
↓ Содержание ↓
↑ Свернуть ↑
| Следующая глава |