Легаси: остается только понять и принять
Странная штука - легаси. Все его ненавидят, все хотят переписать. Говорят: "Это надо выкинуть и сделать заново". А оно - живёт. Годами, десятилетиями. Переживает три рефакторинга, две смены команды и одного техдиректора, который клялся, что "через месяц всё будет иначе". И вот этого техдиректора уже нет. А легаси - есть.
Почему?
"Потому, что страшно трогать"? Ну да. Конечно страшно. Там же монолит. Там 5000 строк в одном контроллере. Там SQL-запросы, написанные до того, как появились ORM. Там переменные $a, $a1, $b, $data2_final_fixed. И комментарии вида "не трогать, работает". Комментарии, к слову, написанные в 2000-х. Человеком, который уволился тогда же. И который, судя по коду, был либо гением, либо психом. Ну или и тем и другим сразу.
Но страх не объяснение, а следствие. Причина глубже.
Легаси живёт, потому что оно - работает. Прямо сейчас - в эту самую секунду. Кто-то нажимает кнопку, и оно отвечает. Пусть криво, медленно и иногда падает. Но отвечает, а это - ключевое. Пока система отвечает, она существует. Как только перестанет, начнётся аврал, и её как-то починят. Ну или не починят и тогда она умрёт по-настоящему. Но это - вряд ли.
А пока она отвечает, её никто не трогает. Потому что трогать работающее - это риск. А риск без награды - это глупость. Какой смысл переписывать код, который работает? Чтобы что? Чтобы стало красиво? Красиво - это к дизайнерам. Для бизнеса красиво - это когда деньги идут. А деньги идут, легаси работает и всё хорошо.
И вот здесь появляется другой ответ. Более честный: легаси живёт, потому что бизнесу наплевать. Не в плохом смысле - в архитектурном. Бизнес не видит легаси, он видит процесс. Заказ пришёл - заказ ушёл, клиент доволен - клиент не звонит. Отчёт сформирован - отчёт отправлен. Бизнесу вообще не важно, как это устроено. Ему важно, что это устроено.
А если бизнесу наплевать - то и переписывать некому. Разработчики хотят, техдир хочет. Но техдир зависит от бизнеса, а бизнес говорит: "Зачем? Работает же". И тот соглашается. Потому что он тоже бизнес. Просто с техническим уклоном. И он понимает: переписывание - это полгода без релизов. Полгода без новых фич. Полгода, когда конкуренты убегают вперёд. А легаси работает пусть криво, но уже работает.
И еще есть ответ. Самый неприятный. Легаси живёт, потому что оно уже окупилось. Его написали, заплатили, забыли. И теперь оно как старый холодильник - гудит, иногда морозит, а иногда нет. Но к нему привыкли. И покупать новый - это не про "надо", а про "хочу". Но "хочу" - не аргумент. Аргументом было бы "сломался". А он же не сломался. Он просто старый и работает, хоть и кое-как.
Я помню систему, написанную в 2004-м. На одной из ранних версий PHP. Без ООП и фреймворков. С прямыми запросами в цикле. С HTML, вставленным чуть ли не в SQL. С логикой, размазанной по 40 файлам. Она работала в 2026-м. Двадцать два года. Пережила три хостинга, пять сисадминов. Про форматы данных не стоит вспоминать. Ни один хакер, попади туда не украл бы ничего - он бы расплакался и постарался бы починить сам, ибо жалко людей с этим вот.
Это не смешно. Это - диагноз. Система живёт не потому, что она хорошая. А потому, что она не настолько плохая, чтобы её убили. Она в зоне комфорта. Она работает, не падает часто. Она не мешает - она просто есть. Как старый сотрудник, который ничего не делает, но никому не мешает. И которого не увольняют, потому что жалко. Или потому, что страшно. Или потому, что непонятно, что он вообще делает. И зачем он вообще нужен.
И знаете, что самое интересное? Легаси не умрет никогда. Но не потому, что его не тронут. А потому, что ИИ. Придёт новый бизнес, новые требования, новые клиенты. И тогда легаси - не справится. И его перепишет нейронка. Потом в него сунется человек. И появится новое легаси, которое будет жить следующие 20 лет. Потому что альтернатива - смерть бизнеса. А бизнес не выбирает между красивым и некрасивым. Он выбирает между живым и мёртвым.
И легаси не проигрывает.
Оно мутирует в новых формах: где-то вездесущий ныне ИИ, где-то модный фреймворк, в котором код а-ля 2000-е, а где-то костыли от неспособности понять.
· 17.10
Если так хочется переписать можно выделить 15 процентов времени, другое дело если бизнес не хочет за это платить
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён
· 19.10
Да, но бизнес как правило не очень-то стремится к этому. Причина просто: "пока петух не клюнет" в известное всем место, никто не станет напрягаться. Бизнесу как правило привычней тушить пожар и назначать виноватого, нежели прислушиваться к рекомендациям пока вроде все спокойно.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён