Сегодня говорим о таком феномене, как frustration coding. Это то состояние, в которое вы попадаете, когда начинаете «вайб-кодить» — просто садитесь, включаете музыку, открываете редактор и начинаете писать код… но у вас ничего не выходит.
Почему вайб-кодинг не всегда работает?
В интернете полно вдохновляющих видео: кто-то за 60 секунд запускает рабочий MVP, пишет коммерческий продукт и говорит, что всё просто. Но это — ошибка выжившего. Мы видим только успехи, а не 9 неудачных попыток до них.
В реальности вайб-кодинг — это не всегда про «поймал поток и понеслось».
Отсюда и название статьи — frustration coding: когда всё идет не по плану, но ты продолжаешь долбиться в стену.
Из своего опыта скажу: из 10 начатых вайб-проектов до конца я довёл только 3. Не потому что я ленивый или неусидчивый — просто иногда проект уходит не туда, и его невозможно поддерживать. Например, IAM может нагенерировать такую структуру, которую потом не починит даже он сам.
Что с этим делать?
Мой главный совет — научитесь вовремя бросать. Да-да, это навык.
Если проект зашёл в тупик — не бойтесь начать заново. Это нормально. Новый старт даст вам возможность учесть ошибки прошлого промта, переформулировать задачу и сделать лучше.
И вот здесь начинается магия.
Как делать вайб-кодинг правильно?
Вот несколько приёмов, которые помогают мне:
1. Начни с промта, а не с кода
Попросите GPT сразу сгенерировать вам техническое задание. Например:
«Опиши мне сервис для голосования»
Он выдаст хорошее, структурированное описание. После этого можно сказать:
«А теперь сделай это» — и вперёд.
2. Сужайте рамки проекта
Добавляйте ограничения, которые помогут вам лучше понимать, что происходит:
- Давайте это будет Python
- База данных — PostgreSQL
- Фреймворк — Django
- Архитектура — Stateless, чтобы легко масштабировать
Такие рамки помогают AI не увести вас в лес и держаться вашей зоны комфорта.
3. Продумывайте философию проекта
Уже в промте добавляйте «ключевые слова», которые помогут AI двигаться в правильном направлении:
- KISS — Keep It Simple, Stupid
- SOLID — принципы ООП
- ACID — про базы данных и их структуру
Я иногда даже заканчиваю промт словом «KISS» — чтобы напомнить: не усложняй.
Главное — не бойтесь начинать заново
Важнейший инсайт: вы не обязаны тянуть неудачный проект до победного конца.
Если через неделю всё ещё не работает — остановитесь. Переформулируйте. Попробуйте другой стек. Попробуйте другой подход.
Из жизни:
Один из моих первых проектов — система для perfreview.
Файлы с логикой вырастали до 3000 строк, AI не мог их нормально читать. Контекст рвался.
Я бился с этим днями, пока не понял: всё, стоп, это не сработает.
Начал заново, уже с учётом всех проблем — и получилось гораздо лучше.