235. Код как город
У городов во всем мире много проблем – пробки, плохая экология, перенаселение, ветхая инфраструктура, уродливые антенны мобильной связи. Причина в том, что города строили при одних условиях, а живут они при других. То канализацию изобретут, то электричество, то автомобили подешевеют, то нужно тысячи рабочих на завод, то они безработные и занимаются грабежами, то маятниковая миграция работа-дом, то локдаун и удаленка. Условия меняются быстро, а города медленно, потому что это сложно и дорого.
Иногда кажется, что надо учесть все ошибки городского планирования и построить рядом другой город. Новый, удобный для жизни, красивый. А когда будет готово, переселить туда жителей. Такие проекты почти всегда заканчиваются банкротством и/или становятся гораздо хуже старых городов. Это исторический факт.
Единственный здоровый способ – научиться развивать старый город постоянно, не прекращая жизнь и не выгоняя из него жителей. Да, неудобно, что плитку кладут или эскалатор в метро меняют. Но это единственно работающий способ получить приемлемый результат в рамках бюджета.
Код продуктов – как города. Он устаревает почти сразу же после запуска. Если не вкладывать в его развитие, то через пару лет у владельцев продукта возникает мысль: «У нас все тормозит и глючит, разработчики говорят, что нужно все переписать, давайте сделаем новый продукт и потом переключимся на него». Звучит логично, но на практике переписывание затягивается на год-два, старый продукт при этом выкатывает какие-то фичи, которых в новом нет. В итоге новое или не запускают или оно работает плохо. Теряются миллионы, руководителя увольняют, команда увольняется сама.
Продукты надо переписывать по частям, помодульно. Если это монолит и в нем нет модулей, то... все равно, переписывать помодульно. Есть способы и технологии. Главное, чтобы новое и старое работали в продакшене параллельно. Если этого не сделать, вы получите очередной утопический город, на который потратили все деньги мира, а он хуже старого.
Post #382
4.45K
- 👍 70
- 🕊 3
- 🐳 3
- 👏 2