Код и Лирика

   Молодой программист Сергей Петров, чья душа рвалась к цифровым вершинам, а тело обреталось в унылом офисе, именуемом «открытым пространством», сидел перед монитором. На нем красовался бесконечный, как  тайга, список задач от тимлида, человека по имени Роман Станиславович, которого Сергей мысленно величал «Итератором».

  «Сергей, — говорил утром Итератор, похлопывая его по плечу, — тут небольшой фикс. Мелочь, на полчаса». Эта «мелочь» уже третий день упорно не желала исправляться, напоминая ему о его собственном, не менее запутанном, деле – отношениях с девушкой Аней.

   С Аней он познакомился две недели назад на выставке современного искусства, где он, по его же словам, «ничего не понял, но культурно прокачался». Аня работала менеджером в кофейне и была девушкой душевной, но несколько иного, гуманитарного склада, любила стихи и живопись. Их диалоги напоминали попытку запустить программу, написанную на двух разных языках.

   Вечером того же дня, оторвавшись от кода, Сергей позвонил ей.
«Ань, привет! Как ты?»
«Сереж, да вроде ничего. А у меня сегодня один клиент такой странный был, спросил раф с соевым молоком и перцем чили. Я чуть не прослезилась от его креативности».
Сергей, желая блеснуть эрудицией и поддержать тему, ответил:
«Понимаешь, это классический кейс нарушения SRP!»
«Чего?»— не поняла Аня.
«Ну,Single Responsibility Principle. Принцип единой ответственности. Кофе должен быть кофе, а перец — перцем. Нельзя в одну сущность пихать все подряд! Клиенту нужно просто сказать: «Это антипаттерн».

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

  После нескольких подобных разговоров, где Сергей пытался объяснить чувства через призму бинарной логики («Мой эмоциональный отклик на твою просьбу не писать смс заглавными буквами равен «истине», но требует дополнительного коммита»), аня начала отвечать односложно.

  Вернувшись мыслями в офис, Сергей снова уставился на код. Внезапно его осенило! Ошибка была не в синтаксисе, а в самой архитектуре. Нужно было не латать дыры, а переписать весь модуль. Это было гениально, смело и… совершенно безнадежно, ибо Итератор терпеть не мог радикальных изменений.

  С этим блестящим планом он и помчался к кабинету начальства.
«Роман Станиславович ! Я нашел решение! Надо все переписать! По-новому! Чисто, красиво, масштабируемо!»
  Итератор медленно поднял на него глаза, в которых читалась вековая усталость от подобных порывов.
«Сергей, дорогой мой, — вздохнул он. — Мы не на хакатоне. Нам нужно, чтобы все просто работало. Твоя задача — починить баг, а не изобретать велосипед. Иди, подебажь там еще».

   Убитый, но не сломленный, Сергей вернулся к своему месту. Он достал телефон и с решительным видом набрал  Ане сообщение. Он больше не будет пытаться быть «архитектором» их отношений. Он будет просто «дебажить» мелкие недопонимания. Он написал: «Аня, я все обдумал. Наш предыдущий коммуникационный протокол содержал ошибки. Предлагаю закоммитить простой и честный запрос: давай сегодня просто погуляем? Без лишних зависимостей».

  Он отправил сообщение и замер в ожидании. Спустя минуту пришел ответ: «Сереж, я уже неделю пытаюсь тебе это сказать! У меня как раз окно с 7 до 9. Только, пожалуйста, никаких антипаттернов и принципов. Ладно?»

  Сергей выдохнул. Он посмотрел на свой монитор, на упрямый баг, который все еще не был исправлен. «Ладно, — подумал он, — с кодом разберусь завтра. А вот человеческие отношения, кажется, куда более сложная, но куда более интересная система. И в ней, что удивительно, иногда срабатывает простое решение — «погугли и перезагрузи»». И он впервые за весь день искренне улыбнулся.


Рецензии