Разработчик портировал 60 000 строк PHP на TypeScript за 14 часов — и предупредил о главной ошибке
Канадский разработчик Дидье Мартин рассказал, как за 14 часов перенес 60 000 строк легаси-кода на PHP на бэкенд Node.js/TypeScript. Всю работу выполнял один ИИ-агент — Claude Code на модели Opus 4.8. Речь о REST-сервисе с аутентифицированными эндпоинтами, и требование к порту было жестким: воспроизвести те же эндпоинты, то же поведение, тот же контракт — ничего больше и ничего меньше.
Мартин — не случайный энтузиаст, а ветеран индустрии с более чем 20-летним стажем: в начале 2000-х он был соавтором книги Professional XML издательства Wrox и постоянным колумнистом xml.com. Тем весомее звучит его главный вывод: заголовок с "14 часами" — не то, ради чего стоит читать эту историю.
Проверку корректности упростило одно архитектурное решение: фронтенд Мартина умеет переключаться между бэкендами одним фрагментом URL. Направил его на старый PHP-сервис — все работает; направил на новый TypeScript-сервис — все должно работать точно так же. Это переключение стало эталоном: если экран вел себя одинаково на обоих бэкендах, паритет соблюден, если нет — найден баг.
Главная ошибка, от которой предостерегает разработчик, — верить нарративу "ИИ сделал все сам" и закладывать его в планирование. По словам Мартина, оставить такой процесс без присмотра нельзя: Claude Code периодически останавливался и просил уточнить намерение, которое не считывалось из исходников, или подтвердить поведение через фронтенд. Эти паузы он называет не сбоями, а правильными моментами: "Агент, который никогда не спрашивает, куда опаснее того, который спрашивает". Так что 14 часов — это не наблюдение за прогресс-баром, а плотный цикл: агент предлагает и строит, человек проверяет на живом фронтенде, курс корректируется совместно.
Отдельно Мартин отмечает: он ни разу не
Читать на habr.com

