Перейти к содержимому
Экосистема AI Vibe

Новости

Два продакшена вместо одного: Simon Willison о переписывании с нуля

Редакция 6 сентября 2026 г.

Разработчик смотрит на два параллельных продакшена — старый legacy и недоделанную замену, написанную с нуля.

Переписать legacy с нуля почти никогда не заканчивается одной системой — Simon Willison разобрал на Lobste.rs цикл, который команды проходят снова и снова. Старую кодовую базу объявляют безнадёжной, поднимают команду на замену с чистого листа, а прежний сервис всё ещё крутит бизнес и получает правки.

Разработчики на старом контуре знают: скоро всё выкинут, поэтому новые фичи делают на минималках — техдолг копится дальше. Команда на новом репозитории стартует быстро, но со временем выясняется, что поведение заменяемой системы никто не понимает до конца. Если бы всё было задокументировано и покрыто тестами, снос не понадобился бы.

Два продакшена вместо одного

Месяцы и годы без отдачи давят на «уже шипить»: в прод уезжает система на часть сценариев — или на одну новую фичу, которую на старом коде уже не вытащить. В итоге работают оба мира: старый, который никто не любит трогать, и новый, где до 80% кода неактивно и задумано на будущую полную замену.

Если компания не потеряет терпение, миграция тянется дальше. Чаще приходит момент «приоритеты изменились» — работу по замене бросают, и вместо одного контура остаётся два.

Миграции вместо сноса

Willison отсылает к статье Will Larson «Migrations: the sole scalable fix to tech debt» как к лучшему разбору, как довести такой процесс до конца. Свой совет он формулирует проще: укрепить старую систему автотестами и проверить, дотягивают ли точечные рефакторинги до нужной формы — вместо сирены «переписать с нуля».

Источник: There's No Limit to How Bad Code Can Get.