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