Расскажу интересный кейс клиентского вайбкодинга
Давайте сразу – кейс грустный, но я постараюсь в конце защитить всем полюбившийся процесс.
Есть у нас один клиент, а у него сайт на WordPress. Мы до этого с кодом его сайта не работали, но появилась задача, с которой жёстко встрял SEO-специалист из другого отдела, и нам, разработчикам, пришлось подключаться.
Мы зашли в админку и знатно опешили. Страницу можно было создать несколькими способами: каким-то плагином и средствами WordPress. А контент страницы заполнялся вообще четырьмя разными способами: HTML-кодом через визуальный редактор, Visual Composer, какой-то недоконструктор через Advanced Custom Fields и статикой через предустановленные типы страниц. И это не считая пятого – через код шаблона программисту. Выбирай, что нравится больше, ё-моё.
И да, все страницы ещё разные получались, как будто их разные дизайнеры и разные программисты делали в разные временные эпохи. Вот прям настолько сильные были отличия.
Ещё прикол в том, что функционал даже не полностью работал: какие-то страницы можно было создать, только используя два варианта из четырёх, там какие-то жёсткие зависимости от дочерних страниц были, а какие-то вообще никак из админки – только через код шаблона программисту.
Спрашиваем клиента, как же так, что вообще случилось, что сайт так запустили. Он ответил: «Не знаю» и «Я подключил год назад Claude Code и дорабатываю его только я». И тут мы с командой всё поняли.
Нет. Я не собираюсь хейтить вайбкодинг. Я разработчик и уже сам почти не пишу код руками. Да и мои ребята тоже почти не пишут код по старинке. Это экономически невыгодно.
Но нас, программистов, от вайбкодера-предпринимателя отличает одна вещь – это «процессы». Мы знаем, как правильно деплоить, что можно, а что нельзя отправлять в прод, у нас есть бэкапы, git, UI Kit, гайдлайны разработки и тесты.
Клиент без всех этих «скучных программистских слов» просто сломал свой сайт. Теперь SEO-специалист даже метаданные поменять не может. Надо всего лишь зайти на сайт, поменять title и description и нажать «Сохранить». Работы на 2 минуты.
Но функционал не работает. Точнее, где-то работает, а где-то нет. Вместо того чтобы поручить работу человеку, клиент теперь отправляет агента, который прямо на проде, на живую, что-то делает и ломает сайт. Не всегда, но периодически. Потом и это фиксит сидит.
Круто ли это? Да нет, конечно, х*йня какая-то. Если в совокупности и со стороны на всё смотреть, становится как-то грустно за проект.
И я понимаю, почему некоторые так делают: лёгкий дофамин, новые возможности; кажется, что ты всё знаешь, а тебя не понимают; некоторые программисты зажрались и берут космические деньги за перекраску кнопки или простого индикатора (знаю случаи, когда просят от 10 000 рублей за такое).
Но блин, это ведь как плитку класть: можно позвать мастера, можно самому попытаться, посмотрев пару хороших видео на YouTube, а можно просто сходить купить всё в Максидоме и на глаз делать.
И ведь можно с кайфом нормально вайбкодить предпринимателю. Другому нашему клиенту мы дали свои агентские навыки (SKILL.md) в его Codex, написали пару новых вспомогательных чисто под него, настроили ему доступ в GitLab, и вуаля – все довольны.
Он может вносить свои хотелки, они всё равно попадают в отдельную новую ветку в git, его изменения проходят через все наши автотесты, нам лишь остаётся заходить и мержить (делать слияние) его доработки и наши. Ну или просить перегенерировать, если какое-то фуфло отправил.
Конечно, наши «программистские ограничения» не дают ему быстро заливать что-то в прод, но зато ничего не ломается. Ну и сохраняется консистентность системы, всё выглядит и работает одинаково, как и должно, плюс код чище. Но последнее – это так, чисто программистский загон.