Добавить в корзинуПозвонить
Найти в Дзене

За 30 дней собрал афишу для 173 городов России — не написав ни строчки кода руками

История о том, как череда провалов привела меня к вайбкодингу, почему сначала у меня выходила только дичь с горящими токенами, и как один документ всё изменил. В конце — сам продукт, EventMap.
Как я пришёл к вайбкодингу — и почему сначала выходила только дичь К вайбкодингу я пришёл не от хорошей жизни. После череды закрытых направлений мне нужен был способ превращать идею в работающий продукт самому — быстро и без бюджета на команду разработчиков. Вайбкодинг обещал ровно это. Поначалу он давал мне только дичь. Я читал общую информацию, без какого-либо системного обучения, и пробовал на ощупь. Токены уходили тоннами. Я кидал нейросети расплывчатые запросы, она генерировала что-то, оно ломалось, я просил починить — ломалось другое. Бесконечные баги, в которых я сам не разбирался. По итогу — ни одного нормального приложения. Куча наполовину рабочих кусков и пустой кошелёк. Картина, знакомая каждому, кто пробовал «накодить с нейронкой по приколу»: на демках всё красиво, а как доходит до н
Оглавление

История о том, как череда провалов привела меня к вайбкодингу, почему сначала у меня выходила только дичь с горящими токенами, и как один документ всё изменил. В конце — сам продукт, EventMap.

Как я пришёл к вайбкодингу — и почему сначала выходила только дичь

К вайбкодингу я пришёл не от хорошей жизни. После череды закрытых направлений мне нужен был способ превращать идею в работающий продукт самому — быстро и без бюджета на команду разработчиков. Вайбкодинг обещал ровно это.

Поначалу он давал мне только дичь.

Я читал общую информацию, без какого-либо системного обучения, и пробовал на ощупь. Токены уходили тоннами. Я кидал нейросети расплывчатые запросы, она генерировала что-то, оно ломалось, я просил починить — ломалось другое. Бесконечные баги, в которых я сам не разбирался. По итогу — ни одного нормального приложения. Куча наполовину рабочих кусков и пустой кошелёк.

Картина, знакомая каждому, кто пробовал «накодить с нейронкой по приколу»: на демках всё красиво, а как доходит до настоящего продукта — рассыпается.

В какой-то момент я честно себе сказал: проблема не в инструменте. Проблема во мне. Я пытался сразу прыгнуть в код, не понимая процесса. Это как сесть за штурвал самолёта, посмотрев пару рилсов.

И я пошёл учиться.

Что изменилось: я перестал кодить и начал писать один документ

Я прошёл несколько обучений и собрал из этого свою систему работы. Главный сдвиг в голове был такой:

80% результата — это не код. Это спецификация.

Звучит скучно. Но именно это отделяет рабочий продукт от горящих токенов.

Раньше я тратил всё время на «давай, сгенерируй». Теперь — наоборот. Сначала я сажусь и пишу подробный технический документ: какую проблему решаю, для кого, какие у пользователя сценарии, какие экраны, какая логика, какие данные, какие крайние случаи. И только потом отдаю это нейросети — не как «вайб», а как точное техническое задание.
Чтобы было понятно, насколько это не «пара абзацев»: спецификация EventMap — это документ на десятки страниц. В нём расписаны:

сценарии пользователей — не «человек ищет событие», а по шагам: открыл приложение, выбрал город, нажал «фильтры», выбрал «эти выходные» и «бесплатное», увидел счётчик «найдено 7 событий», тапнул на карточку. И к каждому сценарию — критерии приёмки, включая ветки ошибок: что показать, если пропала сеть, если результатов ноль, если сервер отдал ошибку;

модель данных — какие таблицы, какие связи, кто что имеет право видеть и менять;

бизнес-логика — например, что цену размещения нельзя подделать с фронта, она зашита на сервере;

— и отдельный блок, который я считаю самым важным: 33 крайних случая. Что делать, если у пользователя пропал интернет прямо на странице оплаты. Если платёжная система прислала уведомление об оплате дважды. Если парсер встретил одно и то же событие в двух каналах. Если событие в полночь по московскому времени, а смотрит его человек из Калининграда. Плюс юридические случаи под российские реалии — удаление персональных данных по 152-ФЗ, маркировка рекламы по 38-ФЗ.

Вот этот документ и есть та самая работа, которую раньше я пропускал. Когда он написан хорошо, Claude Code не «придумывает» решения на ходу — он реализует ровно то, что описано. Баги перестают быть бесконечными. Токены перестают улетать в пустоту, потому что нейросети больше не приходится гадать, что я имел в виду.

Я называю это разницей между вайбкодером и AI-архитектором. Вайбкодер кидает вайбы и надеется. Архитектор сначала проектирует, потом строит. Инструмент один и тот же — Claude Code. А результат — небо и земля.

Первым настоящим продуктом, собранным по этой системе, стал EventMap.

EventMap: афиша мероприятий для 173 городов России

Идея простая до банальности. Зайдите в свой город и попробуйте быстро понять, куда сходить сегодня вечером или на выходных. Афиши разбросаны по десяткам Telegram-каналов, сайтов и пабликов. Крупные сервисы заточены под стадионные концерты в Москве — а лекция в коворкинге, локальный фестиваль или детский мастер-класс там просто теряются.

Я решил собрать всё в одном месте. Для всей страны, а не для двух столиц.

EventMap работает сразу на двух площадках:

сайт events-map.ru — его индексирует Яндекс, и люди приходят по запросам вроде «афиша Краснодар» или «что делать в Москве сегодня»;

приложение в Telegram @EventsMapbot — встроенный Mini App, открывается в один тап прямо в мессенджере, ничего ставить не надо.

На сегодня в каталоге 173 города и больше 1 700 актуальных событий из 138 городов. И вот ключевой момент: каталог наполняется почти без моего ручного труда. Каждые несколько часов парсер сам подтягивает свежие анонсы из городских Telegram-каналов и официальных афиш.

Как это собиралось: один город, доведённый до последнего экрана

Я не пытался охватить 173 города сразу — это была бы та же ошибка, что и раньше. Я взял один город, Краснодар, и расписал его в спецификации до последнего экрана и последнего крайнего случая.

Самая интересная часть — это парсер, который наполняет каталог. В спецификации он описан как отдельный AI-агент. Логика такая: отдельный Telegram-аккаунт раз в несколько часов читает публичные городские каналы с афишами. Каждый пост уходит в Claude с задачей «вытащи структурированные данные о событии: название, дата, место, цена, категория. Если это не анонс события — так и скажи». Если это событие — оно попадает в каталог на модерацию. Если то же самое событие уже было анонсировано в другом канале — система это распознаёт по схожести текста и времени и не плодит дубликаты.

То есть каталог наполняет связка «нейросеть + правила», а не я вручную по ночам.

Когда система на одном городе заработала и стала стабильной, масштабировать её на остальные города было уже делом техники. Самым тяжёлым был не код — самым тяжёлым было продумать и описать всё заранее. На это и ушли те самые 80% времени. Сборка через Claude Code — оставшиеся 20%.

И за всё это я не написал ни одной строчки кода руками. Я писал спецификацию и корректировал результат на человеческом языке: «перенеси кнопку», «добавь фильтр по цене», «почини отображение на телефоне». Всё.

Что внутри для пользователя

Ничего сверхъестественного — но всё работает, и в этом весь смысл:

— поиск события «под себя» за полминуты: фильтры по дате (сегодня, завтра, выходные, неделя), по категории (музыка, спорт, искусство, бизнес, детское, городское) и по цене — бесплатные мероприятия отмечены отдельно;

— в карточке события — дата, время, место, цена и контакт организатора;

— понравилось — отправляешь другу в Telegram или ВКонтакте одним тапом;

— а организатор может сам добавить своё мероприятие — после модерации.

Сколько это стоило и как продукт живёт

Год назад такой продукт — сайт плюс Telegram-приложение плюс парсер плюс каталог на 170+ городов — это команда из трёх-четырёх человек и несколько месяцев работы. После своих провалов я бы такой бюджет просто не потянул.

У меня это заняло месяц. Основные затраты — это моё время на спецификацию и подписки на инструменты.

Монетизация — простая и честная, через размещение для организаторов и бизнеса. Любое объявление публикуется сразу на обеих площадках, на сайте и в приложении:

— базовое объявление о событии — 300 ₽;

— объявление с подсветкой, чтобы выделиться в ленте, — 499 ₽;

— баннер в шапке города на 30 дней — 10 000 ₽.

Я не делаю вид, что это уже денежная машина. Это работающий продукт на ранней стадии, который я довёл до запуска в одиночку. После череды провалов для меня это само по себе результат, который можно потрогать.

Зачем я вообще пишу этот текст руками

А теперь честно про мета-уровень.

Этот текст я пишу руками. Долго, перечёркивая абзацы. И делаю это специально — потому что мой следующий проект ровно про это. Инструмент, в который загружаешь черновик и фотографии, а он сам упаковывает материал в посты и публикует их сразу на VC, Пикабу, Дзен и в Telegram-канал.

EventMap — доказательство, что система работает на реальном продукте. Следующий шаг — применить её к тому, что вы сейчас читаете. Если получится, следующую статью этого цикла, возможно, соберёт уже не моя рука. И я честно об этом напишу.

Что дальше

Этот текст — не разовая история, а начало серии.

EventMap я не бросаю на стадии запуска — наоборот, проект будет расти и обрастать новыми функциями. Я буду делиться обновлениями по порядку, по мере того как они выходят: что добавил, что сработало, а что — нет.

Параллельно я уже веду переговоры о внедрении AI-разработки в бизнес — несколько проектов уже сделал. Для компании это огромное преимущество: то, что раньше требовало команды и месяцев, собирается одним человеком за недели. Об этих кейсах расскажу отдельно, когда можно будет показать результаты.

Так что дальше здесь будут и новые фичи EventMap, и новые продукты, которые я собираю по той же системе. Если тема близка — следите, чтобы не пропустить.

Итог

Я не гений и не «успешный успех». Я человек, который потерял на десятке направлений достаточно, чтобы наконец перестать действовать наугад.

Вайбкодинг сам по себе меня не спас. Пока я кидал вайбы — горели токены и выходила дичь. Сработало другое: система, в которой сначала думаешь и проектируешь, а только потом строишь. Скучный документ на десятки страниц оказался важнее, чем умение «промптить».

Результат этой системы можно потрогать прямо сейчас:

— сайт — events-map.ru

— приложение в Telegram — @EventsMapbot

— вопросы и реклама — лично мне: @Nikolay_Karkach

Если у вас был похожий путь — через провалы к чему-то наконец рабочему — расскажите в комментариях, мне правда интересно. А если вы пробовали собирать продукт с AI и у вас тоже выходила дичь — спросите, разберу, на чём именно всё чаще всего ломается.