К результатам эксперимента из поста выше 👨💻
Я критически встрял на создании фронтенда с ИИ. Даже после долгого дебага работать отказался. Зато я отлично потренировался и подпилил технологию, чтобы приступить к новому эксперименту.
Следующий мой экспериментальный сервис — учет всех финансов и активов в одном интерфейсе. Люблю циферки и чтоб все пересчитывалось согласно инфляции и прочим показателям. Здесь гораздо более сложный бэкенд, так как надо парсить отчеты банков, данные из интернета, а потом все аккуратно посчитать по финансовым формулкам и вывести в виде красивых графиков.
Тут результат прям получше. За часов 40 я написал бэкенд в 4000 строк кода, который прошел тесты и работает. Интересный вывод из этой истории: если хочется сделать хороший продукт через "вайб-кодинг", то никакого вайба не будет 🚨:
1. Перед генерацией кода я прорабатываю с ИИ целый пакет документов: ТЗ, архитектура, версии модулей, дерево файлов проекта и проч. При этом я прошу ИИ задавать мне вопросы и уточнять требования. Это заставляет тебя много думать и принимать решения. Тут нужно быть классным архитектором и иметь насмотренность. Еще нужно перерабатывать громадье инфы, которую в тебя пуляет нейронка. В общем качаешь навык постановки задачи и верификации результата.
2. Интенсивность разработки с ИИ выше, последствия этих решений прилетают гораздо раньше. А исправлять их нужно тебе. А перестройка архитектуры с ИИ - очень больная тема (спасибо KV Cache). Начинаешь нервничать, хочется побыстрее все исправить, отдаешь больше ответственности на ИИ. Он делает не то, что ты хочешь. Иии вот ты в порочном круге. Часто проблема в кожаной прокладке между стулом и агентом, которая не всегда может все предусмотреть... 🤡
3. Самые сложные части для генерации: взаимодействие с реальным миром (парсинг, внешние API), DevOps (Docker микросервисы, настройка окружения, конфигурация проекта). Вот это прям точно нужно делать или самому (DevOps), или жестко контролируя и подсказывая (API и парсинг).
4. Самая легкая часть для генерации: внутренняя логика трансформации данных. Тут часто модули взлетают без ошибок, если прописать стандарты взаимодействия с БД и между собой.
5. AI-Friendly архитектура: микросервисы или плагины. Приложение должно состоять из небольших модулей, которые ИИ может легко генерить за 1 проход. При правильной постановке задачи на каждый файл они будут генериться достаточно легко. После поднятия "core" модулей (api, бд, интерфейсы взаимодействия плагинов) у меня уходило 1-2 часа на встраивание модуля с тестами (~300-500 строк кода).
6. Если фронт простой, лучше использовать Streamlit или Gradio. JS пока что нафиг)
В целом, эффективность перевешивает проблемы для многих задач. Буду пробовать дальше)
Я критически встрял на создании фронтенда с ИИ. Даже после долгого дебага работать отказался. Зато я отлично потренировался и подпилил технологию, чтобы приступить к новому эксперименту.
Следующий мой экспериментальный сервис — учет всех финансов и активов в одном интерфейсе. Люблю циферки и чтоб все пересчитывалось согласно инфляции и прочим показателям. Здесь гораздо более сложный бэкенд, так как надо парсить отчеты банков, данные из интернета, а потом все аккуратно посчитать по финансовым формулкам и вывести в виде красивых графиков.
Тут результат прям получше. За часов 40 я написал бэкенд в 4000 строк кода, который прошел тесты и работает. Интересный вывод из этой истории: если хочется сделать хороший продукт через "вайб-кодинг", то никакого вайба не будет 🚨:
1. Перед генерацией кода я прорабатываю с ИИ целый пакет документов: ТЗ, архитектура, версии модулей, дерево файлов проекта и проч. При этом я прошу ИИ задавать мне вопросы и уточнять требования. Это заставляет тебя много думать и принимать решения. Тут нужно быть классным архитектором и иметь насмотренность. Еще нужно перерабатывать громадье инфы, которую в тебя пуляет нейронка. В общем качаешь навык постановки задачи и верификации результата.
2. Интенсивность разработки с ИИ выше, последствия этих решений прилетают гораздо раньше. А исправлять их нужно тебе. А перестройка архитектуры с ИИ - очень больная тема (спасибо KV Cache). Начинаешь нервничать, хочется побыстрее все исправить, отдаешь больше ответственности на ИИ. Он делает не то, что ты хочешь. Иии вот ты в порочном круге. Часто проблема в кожаной прокладке между стулом и агентом, которая не всегда может все предусмотреть... 🤡
3. Самые сложные части для генерации: взаимодействие с реальным миром (парсинг, внешние API), DevOps (Docker микросервисы, настройка окружения, конфигурация проекта). Вот это прям точно нужно делать или самому (DevOps), или жестко контролируя и подсказывая (API и парсинг).
4. Самая легкая часть для генерации: внутренняя логика трансформации данных. Тут часто модули взлетают без ошибок, если прописать стандарты взаимодействия с БД и между собой.
5. AI-Friendly архитектура: микросервисы или плагины. Приложение должно состоять из небольших модулей, которые ИИ может легко генерить за 1 проход. При правильной постановке задачи на каждый файл они будут генериться достаточно легко. После поднятия "core" модулей (api, бд, интерфейсы взаимодействия плагинов) у меня уходило 1-2 часа на встраивание модуля с тестами (~300-500 строк кода).
6. Если фронт простой, лучше использовать Streamlit или Gradio. JS пока что нафиг)
В целом, эффективность перевешивает проблемы для многих задач. Буду пробовать дальше)