0

Когда берешь проект, где последний нормальный коммит был в 2020

Есть такой особенный запах — смесь деревенского туалета, сырости и ностальгии по PHP 5.4. Так пахнет легаси. Настоящее, боевое, годами не тронутое легаси, которое тебе вручают со словами: "Надо чтобы работало". И сразу - "денег на апгрейд нет, но вы там держитесь"

Вообще всё начиналось как обычно. Клиент — серьёзный, наш постоянный, очень хочет порядок. Говорит: "Нам бы просто немного дописать и поправить баги. Код норм, просто старый." Ага. Просто старый. Я бы тоже себя так называл, если бы мне было 103 года и я жил в подвале с мышами.

Что имеем

- микрофреймворк на пыхе

- маршрутизации — как в маршрутке: кто крикнул, того и вызываем

- DI нет, каждый класс через new и с молитвой

- комментариев — 0

- аффтор кода — испарился, возможно из страны

Видели апи контроллер на 5000 строк кода и все завернуто в глобальный трай-кетч, чтобы не дай бог не упало, зато когда подключили сентри - ни одной ошибки, вот люди работают так работают, не то что некоторые.

Первая мысль у здорового человека, все выкинуть и переписать по нормальному. Вторая мысль: а кто это будет оплачивать банкет? Третья мысль: может я всё-таки зря не ушёл в музыку?

Ну и хеппи энд (за пяток лет то изловчились):

- внедрили ооп и более менее нормальный фреймворк (если ларавель так можно назвать)

- модульный монолит жив и терпит хорошие нагрузки, если что модули можно изолировать и уносить (если не терпит)

- обложили тестами, метриками и разными системами логирования (награду в студию - в заказной разработке и такое провернуть, уфф)

- и в конце еще версию пыхи апнули до 8.4 - но это уже другой вайб