Если совсем коротко, то я достал с чердака свой старый проект для нарезки коротких видео, и вместо того чтобы по привычке сразу кидаться писать код, я сначала прогнал собственные идеи через нейросеть на доске мира, и две самые тяжёлые штуки, графовую базу под смыслы слов и покадровое распознавание объектов в кадре, свернул ещё до того, как появилась первая строчка. По ощущениям это проектирование пет-проекта до кода сэкономило мне несколько недель работы впустую, и в этом посте я честно разберу, как так вышло и почему я не стал переделывать старое, а сделал v2 рядом.
Достал с чердака
У каждого, кто что-то делает руками или головой, есть такая папка, проект или коробка, до которой всё никак не доходят руки, и вот настало время достать этот проект с чердака и продолжить его. У меня это SceneX, система, которая режет из длинных роликов короткие нарезки, и я когда-то её начал, потом забросил, и она лежала и ждала своего часа.
И тут важный момент, который я для себя проговорил вслух. Проект этот для себя, а не для продажи, поэтому я даже не стал запускать свой обычный ритуал валидации идеи, который гоняю для всего, что хоть как-то пахнет деньгами или пользователями. Ну зачем мне проверять спрос на инструмент, которым я буду пользоваться сам? Незачем. И это сразу сняло половину вопросов и дало право делать как удобно мне, а не как правильно для рынка.
Но вот от чего я не стал отказываться, так это от проектирования. Я открыл доску мира, такой whiteboard, где раскидываешь всю систему до того, как родится код, и начал выкладывать туда то, что напридумывал когда-то давно. И вот тут-то всё и поехало.
Что я напридумывал когда-то
Изначальный план у меня был, прямо скажем, амбициозный, как у всех нас, когда мы фантазируем на берегу. Пользователь загружает свои ролики на сервер, система их разбирает, и дальше я хотел две тяжёлые вещи. Первая, графовая база данных под слова и смыслы, чтобы можно было искать по теме, по связям между понятиями, красиво и умно. Вторая, покадровое распознавание объектов в кадре, чтобы можно было сказать системе «найди мне все отрезки, где в кадре ноутбук», и она бы выдала их списком.
Звучит-то здорово, на бумаге, а точнее на доске, вообще любая идея звучит здорово, и в этом главная ловушка. И вот когда я начал прогонять эти две идеи через Claude Code, разбирая каждую вслух, а что она даёт, а сколько стоит её собрать, а реально ли мне это сейчас нужно, обе посыпались.
Покадровое распознавание это же отдельная большая система со своей моделью, своим железом под инференс, своей вознёй с тем, чтобы вытащить кадры, прогнать их, разметить, сохранить. Для нейросетей в бизнесе с бюджетом и командой это нормальная задача, а для меня соло, который делает инструмент под себя на три ролика, это из пушки по воробьям. Графовая база под смыслы та же история, отдельный слой сложности, который надо поднять, наполнить, поддерживать, и ради чего? Ради красивого поиска, которым я бы, честно, пользовался раз в месяц.
Три ролика и трезвость
И вот тут самый отрезвляющий факт всей этой истории. На старте у меня всего три своих ролика на YouTube. Три. Не триста, не тридцать, а три. И я сижу, проектирую под них графовую БД и покадровое распознавание, как будто у меня контент-завод. А когда ты проговариваешь идею вслух перед ИИ и при этом держишь в голове реальные цифры, а не фантазию, весь этот космос сдувается сам собой.
Это, кстати, для меня и есть вся суть валидации идеи с ИИ перед разработкой, и она не в том, чтобы нейросеть тебе сказала «делай» или «не делай», а в том, что она заставляет тебя самого вытащить наружу допущения, которые ты держал в голове как очевидные. Ты говоришь «мне нужно покадровое распознавание», а в ответ получаешь вопрос «а для чего конкретно и на каком объёме», и сам же понимаешь, что объём у тебя три ролика, а конкретики ноль.
А чё фильмы, чё свои видео, разница-то какая
Был ещё один момент, который меня сначала смущал, а потом наоборот развязал руки. Старый проект я задумывал под нарезку фильмов и клипов, а теперь хотел резать свои собственные видео, и в голове крутился вопрос, не нужно ли всё переделывать под новый тип контента. И когда я начал это разбирать, до меня дошло, а чё фильмы, клипы, какая разница-то? Что я загружаю фильм, что загружаю свои видео, суть-то одна и та же. На входе видео, на выходе нарезки. Механика идентичная, и значит ломать ничего не надо.
Не переделывать, а сделать v2 рядом
И вот ключевое решение, к которому я пришёл в этом проектировании. Надо, может быть, не переделывать этот проект, а реальную вторую версию сделать. То есть не лезть в старый код, не ломать то, что когда-то работало, а развернуть v2-контур рядом со старым и переиспользовать существующие сервисы, эти же файлы переиспользовать, без переписывания с нуля.
Это, как по мне, недооценённый ход в разработке с помощью нейросети, я ровно так же за один день собрал бота на готовой инфраструктуре вместо нового проекта. Когда у тебя уже есть рабочие куски, соблазн всё снести и сделать «правильно с чистого листа» огромный, но он почти всегда обманный, ведь ты выкидываешь не только грязь, но и уже решённые проблемы, про которые давно забыл. А v2 рядом даёт тебе и свежую архитектуру, и страховку, потому что старое стоит на месте, а новое растёт сбоку и берёт у старого то, что уже готово.
И ещё мне важно было держать в голове не только себя как разработчика, но и того, кто будет это смотреть. Мне надо и зрителю показать простым, максимально понятным языком, прям вот чтобы красиво это выглядело, то есть конечный результат, сами нарезки, должны быть понятными и аккуратными, а не технически правильными, но кривыми. Это тоже отсекало лишнюю сложность внутри, ведь чем проще кишки, тем больше сил остаётся на то, что реально видит человек.
Что в итоге осталось на доске
Если собрать всё, что произошло за эту сессию проектирования, до единой строчки кода, то выходит вот что. Две тяжёлые идеи свёрнуты, графовая БД и покадровое распознавание отправились в утиль ещё на доске мира. Тип контента перестал быть проблемой, потому что фильм и своё видео для системы это одно и то же. Решено делать v2 рядом со старым проектом и переиспользовать готовые файлы вместо переписывания. И валидацию я сознательно не гонял, потому что это инструмент для себя.
Код, к слову, потом пишет Claude Code под моим управлением, я тут оркестрирую и принимаю решения, а не сижу с клавиатурой и не набираю руками, и именно поэтому этап «подумать на доске» для меня ценнее, чем для классического разраба. Потому что мой главный рычаг это решить, что строить и чего не строить, а уже как это собрать, разрулит агент. Дальше, кстати, на самой нарезке вылез отдельный сюрприз, про который я рассказал в посте о том, как нейросеть собрала шортс из кусков франкенштейна.
Главный вывод, который я для себя ещё раз подтвердил, такой. Самые дорогие ошибки в проекте делаются не в коде, а до него, когда ты тащишь в архитектуру тяжёлые штуки просто потому, что они звучат солидно. Час разговора с нейросетью на доске мира выкинул из проекта несколько недель работы, которая мне сейчас не нужна. Так что если у вас тоже где-то на чердаке пылится недоделанный проект, не торопитесь его кодить, а сначала разложите его вслух перед ИИ и честно посчитайте, сколько у вас реально роликов. У меня было три. Вот и делайте выводы.
Если интересно копнуть, как у меня вообще устроена работа с агентами и процессом, я раскладывал это в посте про STC и Guardian MCP.