Коротко
Откуда берётся «странное ощущение»?
На индивидуальном обучении ученик пришёл на занятие с первым работающим результатом своего проекта. Его помощник по семейному бюджету принимал выписку одного банка, разбирал её, складывал в базу и показывал страницу. Категорий ещё не было: «он пока просто парсит».
Результат был добыт честно. Агент отчитался, что всё готово, а при самостоятельном запуске вылезла ошибка на разборе таблицы. Ученик отдал ошибку агенту, тот починил, прогон прошёл. Привычка запускать самому поймала ложное «готово» ровно так, как должна.
А первой фразой занятия было не «сделал», а «странное ощущение, честно тебе скажу». Ученик сам разложил его на две части: «результат пока ещё не тот, который ожидаешь», и второе - «доверие, то есть нет контроля».
Обе части я узнаю. У меня были ровно такие же чувства, когда я собирал первые свои продукты с агентом. Поэтому разберу их по очереди: они про разное и лечатся по-разному.
Почему одна кнопка в первый день впечатляла больше?
Для сравнения ученик вспомнил первое занятие. Тогда он одним промптом собрал утилиту, которая склеивает и разделяет PDF, и думал: «вот это да». А теперь - несколько модулей обучения и одна страница.
Сравнение понятное, но нечестное. Утилита для PDF - законченная вещь с первой минуты: взяла файл, отдала файл, всё. У неё нет базы, нет истории, нет второго пользователя.
Продукт для бюджета устроен иначе. Каждая выписка должна лечь в базу, завтра к ней добавится следующая, через месяц появятся категории, лимиты и отчёты. Первая страница доказывает главное: путь от файла до экрана проложен.
На занятии для этого прозвучала метафора скейта и автомобиля. Скейт ты собрал руками и сразу поехал. Автомобиль собираешь впервые, причём руками исполнителя, которым ты управляешь, и первые недели он выглядит как рама на колёсах.
Первый срез - это примерно четверть продукта
Самая точная формулировка с того занятия звучала так: весь потенциал, который закладывал, есть, просто он на экран пока не выведен. В плане уже есть категории, лимиты и отчёты, но видно пока только то, что проходит насквозь.
Цифру тоже назвали прямо: первый срез кода - это примерно двадцать-двадцать пять процентов. Это фундамент, на который встают остальные три четверти.
Почему первую версию собирают именно так, насквозь и тонко, подробно разбирал в материале о том, что первая версия собирается насквозь, а не по слоям. Здесь важна обратная сторона того же решения: насквозь собранная версия всегда выглядит скромнее, чем красиво собранный слой.
Сам ученик подобрал этому точное название, когда разобрался: дальнейшая доработка - это «по сути, такое расширение ТЗ, которое было изначально». Ничего нового придумывать не нужно, нужно достраивать заложенное.
Как увидеть, что заложено и что ещё спит?
На занятии совет прозвучал одним вопросом, который стоит задать агенту почти дословно: «Скажи, что там вообще изначально было заложено и что сейчас реализовано. А какие функции сейчас пока в спящем режиме скрыты».
Ответ удобно попросить таблицей:
| Функция | Заложено в плане | Работает сейчас | Что нужно, чтобы включить |
|---|---|---|---|
| Разбор выписки | да | да | - |
| Категории трат | да | нет | правила категорий и готовый список |
| Лимиты | да | нет | категории плюс настройка порогов |
| Отчёты | да | частично | страница с графиками |
| Выписки других банков | да | нет | разбор второго формата |
Таблица - пример по мотивам проекта ученика. У твоего проекта строки будут свои, но картина обычно похожа: заложено много, работает немного, и каждая следующая функция опирается на уже проложенный путь.
Дальше функции включаются по одной. Одна функция за раз, проверка руками, и только потом следующая: так разочарование «ничего нет» сменяется ощущением «каждый день прибавляется».
Сообщение агента о секретах: страшно, но чаще это защита
Вторая часть «странного ощущения» выросла из одного сообщения. Агент переносил неверно разложенные папки, «чтобы нормально коммит проходил», и написал, что на другой машине секреты потенциально могли бы уехать. Ученик прочитал это как угрозу и сразу перенёс на будущее: а если в большом проекте что-то утечёт.
Скорее всего, там было сообщение о закрытой дыре. Файл с ключами должен лежать в списке исключений для системы контроля версий, и тогда он не отправляется в хранилище кода ни при каких обстоятельствах. Если агент поправил структуру папок так, чтобы исключение сработало, это хорошая новость, поданная тревожными словами.
Проверять такое нужно вопросами агенту, догадки тут не помогают:
- Что могло уехать и куда. Конкретные файлы и конкретное место.
- Что ты сделал. Какие изменения внесены и где их увидеть.
- Почему теперь безопасно. Чем это подтверждается, а не только обещается.
Где вообще хранить ключи и что делать, если утечка всё-таки случилась, разобрано в материале про то, где хранить ключи и пароли своего продукта.
Четыре вещи, которые помогают пройти эту стадию
Разочарование после первого среза предсказуемо, а значит, к нему можно подготовиться. Вот что работает на практике:
- Назвать ожидание до первого запуска. Сказать себе заранее: сейчас я увижу скелет, а не продукт. Слова «это четверть» после разочарования звучат как утешение, а до него - как план.
- Засчитать пойманную ошибку. Агент сказал «готово», ты запустил сам и нашёл ошибку. Это сработавшая проверка, и её стоит записать себе как навык, который уже есть.
- Одна функция за подход. Выбрать из карты одну спящую функцию, включить, проверить руками. Маленький прирост каждый день перебивает ощущение, что ничего не происходит.
- Посмотреть на то, что уже работает у другого. На том занятии ученика сдвинуло не объяснение, а рассказ о моём собственном втором мозге: записи созвонов, клиентская база, напоминания. После него он сам сформулировал следующий проект.
Четвёртый пункт стоит перенести в привычку. Когда мотивация проседает, полезнее посмотреть на работающую систему другого человека, чем перечитывать теорию. Видно, во что превращается такой же скромный срез через несколько месяцев доработки.
Если разочарование не проходит неделями, стоит проверить, не потерялась ли сама цель; про этот сценарий есть отдельный разбор - «не понимаю, к чему я иду».
Частые вопросы
Частые вопросы
Главный вывод
Разочарование после первого среза - знак того, что ты дошёл до места, где продукт впервые стал настоящим. Дальше работа меняется: вместо «заработает ли вообще» ты решаешь, что включить следующим.
Тот ученик, кстати, закончил занятие не разочарованием, а планами. Он уже думал о следующем проекте - своём помощнике по обещаниям и напоминаниям - и сказал о себе: «я сейчас как этот, голодный до знания».
Практический минимум на сегодня: попроси агента карту «заложено, работает, спит» по своему проекту и выбери одну функцию на эту неделю.
А ты уже видел, сколько в твоём проекте заложено и пока не выведено на экран?
