Вчера созванивались с коллегой-фронтендером, которая сейчас в поиске работы. Почти весь разговор был довольно стандартным — где искать вакансии, кому писать, какие компании подходят. Но в конце Настя задала важный вопрос про AI-тулы: насколько долго в них погружаться и нужно ли начинать прямо сейчас, если ещё не начал? 🤔
Конечно да! Понимать, как AI-driven IDE ускоряет именно твою работу, — это уже базовый навык. А самое главное: эффективность твоей работы растёт пропорционально времени, которое ты проводишь в конкретном туле. Чем больше ты в нём живёшь, тем лучше понимаешь его сильные стороны, ограничения и моменты, когда ему точно доверять не стоит. Так что начинать нужно было ещё вчера.
Плюс, такие вещи как Cursor или Claude Code уже становятся важными ключевыми словами в резюме. Сейчас все хотят, чтобы сотрудники были AI-first: продакты, аналитики, разработчики, тимлиды. Добавить что-то AI-ное в резюме и уметь уверенно рассказать, как тебе помогают новые инструменты — это прям must. Немного скепсиса тоже не помешает: если нанимающий менеджер не видит ограничений AI, которые видишь ты, — возможно, это тревожный звоночек 🚩
Но хватит прелюдий. Теперь по делу. Фронтендер, если ты ещё не пробовал AI-driven разработку — вот топ-5 вещей, с которых стоит начать прямо сейчас:
💻 Поставить AI-driven IDE. Это может быть триалка Cursor или Windsurf, а может быть Google Antigravity (он пока полностью бесплатный) .
✨ Открыть свой старый проект и попросить IDE отрефакторить компонент. Причём в трёх вариантах: Ask, Agent и Plan. Сравнить поведение и уровень контроля над изменениями.
⚙️ Разобраться, где задаются глобальные правила IDE, а где — проектные. Вписать туда свои принципы разработки и конкретные версии инструментов. Посмотреть, когда агенты следуют им, а когда отступают.
🧪 Подключить Figma MCP и попросить IDE заимплементить выделенную область. И обязательно проверить, что картинки не тянутся с фигмовского локалхоста, а то будешь как я вот тут.
🙃 Подключить Chrome DevTools MCP и заставить агента самому проверить в браузере то, что он только что реализовал. Рассказать мне в комментах, что из этого вышло
Уверен, после этих пяти пунктов вопрос «а оно мне надо?» сменится на азартное: «нет, я заставлю тебя понять, чего я от тебя добиваюсь!» Ну а со временем вы точно сработаетесь и станете классной командой 🤖🧑
А вы бы что добавили в этот список для фронтендера?
И стоит ли собрать такие же списки для других ролей?
Конечно да! Понимать, как AI-driven IDE ускоряет именно твою работу, — это уже базовый навык. А самое главное: эффективность твоей работы растёт пропорционально времени, которое ты проводишь в конкретном туле. Чем больше ты в нём живёшь, тем лучше понимаешь его сильные стороны, ограничения и моменты, когда ему точно доверять не стоит. Так что начинать нужно было ещё вчера.
Плюс, такие вещи как Cursor или Claude Code уже становятся важными ключевыми словами в резюме. Сейчас все хотят, чтобы сотрудники были AI-first: продакты, аналитики, разработчики, тимлиды. Добавить что-то AI-ное в резюме и уметь уверенно рассказать, как тебе помогают новые инструменты — это прям must. Немного скепсиса тоже не помешает: если нанимающий менеджер не видит ограничений AI, которые видишь ты, — возможно, это тревожный звоночек 🚩
Но хватит прелюдий. Теперь по делу. Фронтендер, если ты ещё не пробовал AI-driven разработку — вот топ-5 вещей, с которых стоит начать прямо сейчас:
💻 Поставить AI-driven IDE. Это может быть триалка Cursor или Windsurf, а может быть Google Antigravity (он пока полностью бесплатный) .
✨ Открыть свой старый проект и попросить IDE отрефакторить компонент. Причём в трёх вариантах: Ask, Agent и Plan. Сравнить поведение и уровень контроля над изменениями.
⚙️ Разобраться, где задаются глобальные правила IDE, а где — проектные. Вписать туда свои принципы разработки и конкретные версии инструментов. Посмотреть, когда агенты следуют им, а когда отступают.
🧪 Подключить Figma MCP и попросить IDE заимплементить выделенную область. И обязательно проверить, что картинки не тянутся с фигмовского локалхоста, а то будешь как я вот тут.
🙃 Подключить Chrome DevTools MCP и заставить агента самому проверить в браузере то, что он только что реализовал. Рассказать мне в комментах, что из этого вышло
Уверен, после этих пяти пунктов вопрос «а оно мне надо?» сменится на азартное: «нет, я заставлю тебя понять, чего я от тебя добиваюсь!» Ну а со временем вы точно сработаетесь и станете классной командой 🤖🧑
А вы бы что добавили в этот список для фронтендера?
И стоит ли собрать такие же списки для других ролей?
❤4👨💻4🔥3👾2
У меня в гостях сейчас один из главных AI-инженеров recraft и, естественно, каждый вечер мы с ним обсуждаем подходы к работе с LLM’ками, промт-инжиниринг, вайбкодинг и другие подобные вещи.
Вчера он поделился со мной методикой вайбкодинга проектов, которая прошла мимо меня.
Суть простая:
— никакой IDE, только чат с LLM 🤖
— весь репозиторий кидается в контекст одним файлом собранным через gitingest
— в ответ тоже получается один большой файл со всем кодом
Дальше начинается самое интересное:
— этот файл можно отнести в другой чат и попросить найти уязвимости или ошибки 🔍
— можно в разных LLM получить несколько таких файлов и уже третьей LLM’кой попросить их сравнить
— потом «победивший» файл просто загружаешь в свой проект и надеешься, что LLM-ки тебя не обманули 😅
Интуитивно мне этот подход не очень нравится — я в нём теряю последнюю иллюзию контроля над результатом. А вы как думаете — уже можно доверять LLM’кам целые репозитории? 🧑💻💭
Если вы пользовались таким подходом, расскажите, как оно!
Вчера он поделился со мной методикой вайбкодинга проектов, которая прошла мимо меня.
Суть простая:
— никакой IDE, только чат с LLM 🤖
— весь репозиторий кидается в контекст одним файлом собранным через gitingest
— в ответ тоже получается один большой файл со всем кодом
Дальше начинается самое интересное:
— этот файл можно отнести в другой чат и попросить найти уязвимости или ошибки 🔍
— можно в разных LLM получить несколько таких файлов и уже третьей LLM’кой попросить их сравнить
— потом «победивший» файл просто загружаешь в свой проект и надеешься, что LLM-ки тебя не обманули 😅
Интуитивно мне этот подход не очень нравится — я в нём теряю последнюю иллюзию контроля над результатом. А вы как думаете — уже можно доверять LLM’кам целые репозитории? 🧑💻💭
Если вы пользовались таким подходом, расскажите, как оно!
🔥6❤4😁3🤡1
Завтра выходит первый за несколько лет существенный апдейт седьмой Gran Turismo, и я уже знаю, на что уйдут мои выходные. Буду экспериментировать с телеметрией! Жаль, что её, скорее всего, не получится просто выгрузить, поэтому протестируем, как LLM-ки справятся с фотками экранов с этой телеметрией. Интересно, что из этого получится!
PS: Ну и да, ребята, как всегда, молодцы — умудряются продавать одно и то же несколько раз. Вместо шин Michelin теперь везде будут шины Dunlop. А на управление это как-то повлияет, как думаете?
PS: Ну и да, ребята, как всегда, молодцы — умудряются продавать одно и то же несколько раз. Вместо шин Michelin теперь везде будут шины Dunlop. А на управление это как-то повлияет, как думаете?
🔥5👀2😁1🏆1
Вы когда-нибудь задумывались о том, что AI‑assisted IDE — это не только инструменты вайб-кодинга, но и очень мощные тулы для работы с требованиями и для решения операционных задач? 🤔
Я долго смотрел на Cursor исключительно как на инструмент разработки. И даже когда кто-то говорил, что в нём можно собрать классного бизнес-ассистента, мой мозг сопротивлялся и говорил — ну это же вообще для другого!
А потом я наткнулся на GitHub spec-kit — и всё внезапно сложилось. Использовать такие IDE (или даже CLI-утилиты Gemini и Claude Code) для ведения документации оказалось удивительно удобным. Мне давно хотелось иметь интерфейс, в котором LLM задаёт уточняющие вопросы, а затем аккуратно интегрирует ответы в существующую базу знаний в репозитории. И это прям оно! ✨
Я разобрался, как устроен spec-kit, и — спойлер — там нет никакого rocket science 🚀. Просто набор шаблонов, промтов для разных этапов discovery и скриптов, которые запускаются в нужные моменты: что-то копируют, что-то обновляют, что-то коммитят.
Когда у нас появилась задача сопоставлять вакансии с матрицей компетенций — небольшая операционная задача, на которой было не страшно экспериментировать — я понял, что пора собрать свой маленький репозиторий и начать онбордить коллег в GitHub и AI‑IDE. Сейчас там всего два воркфлоу:
- проанализировать вакансию по URL;
- предложить обновления для матрицы компетенций.
Даже этого уже хватает, чтобы экономить массу времени:
- Не нужно вручную копировать промты, матрицы и тексты вакансий — просто запускаешь команду с адресом вакансии.
- Не нужно думать, куда сохранять результаты — воркфлоу делает это сам.
- Не нужно бояться сломать что-то коллегам — всё работает локально, а Git всегда позволит откатиться. 🙌
Да, продактам придётся освоить пару новых инструментов. Ладно IDE, с ней всё просто, а вот Git… коммиты, ветки, пулл-пуш, вот это всё — удовольствие ниже среднего, особенно на старте 😅. Но для регулярных задач этот подход настолько эффективен, что окупается мгновенно. А сколько у продактов нерегулярных задач? Вот, да. Так что берите пару повторяющихся сценариев и прям садитесь собирать под них воркфлоу!
А главное, сейчас идеальное время попробовать. Если пока не понимаете, зачем платить за Cursor, ставьте Antigravity от Google. Он пока бесплатный, а Gemini 3 Pro, который там под капотом по умолчанию, рвёт большинство других LLM во многих задачах. 🔥
Есть желание, но не понимаете как начать? Пишите вопросы в комментах!
Я долго смотрел на Cursor исключительно как на инструмент разработки. И даже когда кто-то говорил, что в нём можно собрать классного бизнес-ассистента, мой мозг сопротивлялся и говорил — ну это же вообще для другого!
А потом я наткнулся на GitHub spec-kit — и всё внезапно сложилось. Использовать такие IDE (или даже CLI-утилиты Gemini и Claude Code) для ведения документации оказалось удивительно удобным. Мне давно хотелось иметь интерфейс, в котором LLM задаёт уточняющие вопросы, а затем аккуратно интегрирует ответы в существующую базу знаний в репозитории. И это прям оно! ✨
Я разобрался, как устроен spec-kit, и — спойлер — там нет никакого rocket science 🚀. Просто набор шаблонов, промтов для разных этапов discovery и скриптов, которые запускаются в нужные моменты: что-то копируют, что-то обновляют, что-то коммитят.
Когда у нас появилась задача сопоставлять вакансии с матрицей компетенций — небольшая операционная задача, на которой было не страшно экспериментировать — я понял, что пора собрать свой маленький репозиторий и начать онбордить коллег в GitHub и AI‑IDE. Сейчас там всего два воркфлоу:
- проанализировать вакансию по URL;
- предложить обновления для матрицы компетенций.
Даже этого уже хватает, чтобы экономить массу времени:
- Не нужно вручную копировать промты, матрицы и тексты вакансий — просто запускаешь команду с адресом вакансии.
- Не нужно думать, куда сохранять результаты — воркфлоу делает это сам.
- Не нужно бояться сломать что-то коллегам — всё работает локально, а Git всегда позволит откатиться. 🙌
Да, продактам придётся освоить пару новых инструментов. Ладно IDE, с ней всё просто, а вот Git… коммиты, ветки, пулл-пуш, вот это всё — удовольствие ниже среднего, особенно на старте 😅. Но для регулярных задач этот подход настолько эффективен, что окупается мгновенно. А сколько у продактов нерегулярных задач? Вот, да. Так что берите пару повторяющихся сценариев и прям садитесь собирать под них воркфлоу!
А главное, сейчас идеальное время попробовать. Если пока не понимаете, зачем платить за Cursor, ставьте Antigravity от Google. Он пока бесплатный, а Gemini 3 Pro, который там под капотом по умолчанию, рвёт большинство других LLM во многих задачах. 🔥
Есть желание, но не понимаете как начать? Пишите вопросы в комментах!
🔥5❤3👨💻2👀1
Если развивать дальше мысль о том, что можно управлять требованиями непосредственно в репозитории проекта, то слово "монорепозиторий" начинает играть новыми красками.
И на первый взгляд всё выглядит прям прикольно:
- продакт написал требования, сделал Pull-Request;
- LLM'ка его обработала, проверила консистентность с другими требованиями и текущей реализацией, предложила варианты, как именно это запилить;
- я уточнил план реализации и запустил агентов его имплементить.
🤖 На практике первый же вопрос, который вводит меня в лёгкий ступор: а какой флоу выбрать в этом случае для работы с гитом?
Второй вопрос связан с первым, но ещё более практический: а где гонять и как управлять теми агентами, которые должны обрабатывать пулл-реквесты?
Пока у меня в голове есть два варианта:
🔧 Костыльный:
- каждый член команды работает в своей ветке;
- не реже, чем раз в неделю, коммитит изменения в GitHub;
- я (ну не прям ручками, а, например, локальным курсором и скриптами) раз в неделю собираю всё в Pull-Request в основную ветку и на нём уже гоняю агентов.
⚙️ Системный:
- объяснить команде концепции веток, push/pull, ревью и CI/CD;
- настроить автоматизацию в GitHub.
С технической точки зрения мне второй путь ближе. С практической — выглядит как два отдельных больших проекта (обучение коллег и реализация всей этой системы) вместо того, чтобы заниматься непосредственно развитием продукта.
Собственно, у меня к вам два вопроса:
1. Какой бы путь выбрали вы? Или, если уже выбрали, — поделитесь с чем столкнулись
2. Как вы решаете, сколько времени тратить на автоматизацию и настройку процессов, а сколько — на текущие задачи? ⚖️
И на первый взгляд всё выглядит прям прикольно:
- продакт написал требования, сделал Pull-Request;
- LLM'ка его обработала, проверила консистентность с другими требованиями и текущей реализацией, предложила варианты, как именно это запилить;
- я уточнил план реализации и запустил агентов его имплементить.
🤖 На практике первый же вопрос, который вводит меня в лёгкий ступор: а какой флоу выбрать в этом случае для работы с гитом?
Второй вопрос связан с первым, но ещё более практический: а где гонять и как управлять теми агентами, которые должны обрабатывать пулл-реквесты?
Пока у меня в голове есть два варианта:
🔧 Костыльный:
- каждый член команды работает в своей ветке;
- не реже, чем раз в неделю, коммитит изменения в GitHub;
- я (ну не прям ручками, а, например, локальным курсором и скриптами) раз в неделю собираю всё в Pull-Request в основную ветку и на нём уже гоняю агентов.
⚙️ Системный:
- объяснить команде концепции веток, push/pull, ревью и CI/CD;
- настроить автоматизацию в GitHub.
С технической точки зрения мне второй путь ближе. С практической — выглядит как два отдельных больших проекта (обучение коллег и реализация всей этой системы) вместо того, чтобы заниматься непосредственно развитием продукта.
Собственно, у меня к вам два вопроса:
1. Какой бы путь выбрали вы? Или, если уже выбрали, — поделитесь с чем столкнулись
2. Как вы решаете, сколько времени тратить на автоматизацию и настройку процессов, а сколько — на текущие задачи? ⚖️
👨💻4⚡3👾2❤1
В начале этого года у меня довольно спонтанно случился горнолыжный отпуск (🏂 на самом деле ) — и он в очередной раз продемонстрировал разницу между hard skills и soft skills.
Я всю жизнь занимался каким‑нибудь спортом: плаванием, стрельбой, баскетболом, теннисом, картингом, сноубордом, велосипедом. С разной степенью серьёзности и регулярности, но почти все время как-то тренировался. При этом я несколько раз начинал ходить в тренажёрный зал — и каждый раз быстро забрасывал. Потому что скучно. Не скучно стало ровно в тот момент (3,5 года назад), когда стало понятно, что это нужно для здоровья:
— не сходил в зал две недели — болит спина;
— ходишь регулярно — чувствуешь себя заметно лучше.
В этот момент мотивации ходить в зал стало больше, а времени на остальные виды спорта — меньше. Но я сделал интересное наблюдение.
Каждый раз, когда я возвращаюсь к тому, чем занимался раньше, я вижу прогресс даже без регулярных занятий. Почему? Потому что раньше мне тупо не хватало базовой физической подготовки, чтобы перейти на следующий уровень.
В прошлом году на сноуборде я заметил, что мне наконец хватает кора, чтобы кататься без перепрогиба в пояснице — и она перестала уставать. В этом году я почувствовал, что спина и плечи закачаны достаточно, чтобы любые движения рук и корпуса не создавали паразитных нагрузок 💪
Банально, но неважно, как быстро ты принимаешь решения и реагируешь на ситуацию, если физухи не хватает. И неважно, насколько ты мощный, если ты не понимаешь, как этим пользоваться в конкретном виде спорта. В общем, тренажёрка качает hard skills. Остальные виды спорта — soft skills. А чтобы не упираться в потолок, нужно регулярно качать и то, и другое.
С AI сейчас ровно та же история 🤖
Есть куча инструментов — и каждым из них нужно учиться пользоваться. Это, на мой взгляд, софт‑скиллы. Но если ты:
— не понимаешь, чего именно хочешь получить;
— не знаешь, как должен быть устроен итоговый процесс;
— не осознаёшь ограничения систем
то никакое владение инструментами не поможет добиться по‑настоящему крутых результатов.
Я постоянно вижу курсы по вайб‑кодингу, которые почти полностью сфокусированы на софт‑части - инструмент, инструкция по использованию, конкретный результат. А мне очень хочется собрать что‑то про хард‑часть: как устроены системы, как думать про продукты, какой образ мышления полезен при работе с AI-тулами и т.д.
Но я совершенно не понимаю, как сделать конечную полезную выжимку из 5 лет университета и 15+ лет опыта работы 😅
Расскажите в комментариях, чего вам больше всего не хватает именно в этих "AI-хардах". Будет круто, если приведёте пару примеров из своего опыта: интересно посмотреть, совпадут ли эти пробелы у разных людей.
Я всю жизнь занимался каким‑нибудь спортом: плаванием, стрельбой, баскетболом, теннисом, картингом, сноубордом, велосипедом. С разной степенью серьёзности и регулярности, но почти все время как-то тренировался. При этом я несколько раз начинал ходить в тренажёрный зал — и каждый раз быстро забрасывал. Потому что скучно. Не скучно стало ровно в тот момент (3,5 года назад), когда стало понятно, что это нужно для здоровья:
— не сходил в зал две недели — болит спина;
— ходишь регулярно — чувствуешь себя заметно лучше.
В этот момент мотивации ходить в зал стало больше, а времени на остальные виды спорта — меньше. Но я сделал интересное наблюдение.
Каждый раз, когда я возвращаюсь к тому, чем занимался раньше, я вижу прогресс даже без регулярных занятий. Почему? Потому что раньше мне тупо не хватало базовой физической подготовки, чтобы перейти на следующий уровень.
В прошлом году на сноуборде я заметил, что мне наконец хватает кора, чтобы кататься без перепрогиба в пояснице — и она перестала уставать. В этом году я почувствовал, что спина и плечи закачаны достаточно, чтобы любые движения рук и корпуса не создавали паразитных нагрузок 💪
Банально, но неважно, как быстро ты принимаешь решения и реагируешь на ситуацию, если физухи не хватает. И неважно, насколько ты мощный, если ты не понимаешь, как этим пользоваться в конкретном виде спорта. В общем, тренажёрка качает hard skills. Остальные виды спорта — soft skills. А чтобы не упираться в потолок, нужно регулярно качать и то, и другое.
С AI сейчас ровно та же история 🤖
Есть куча инструментов — и каждым из них нужно учиться пользоваться. Это, на мой взгляд, софт‑скиллы. Но если ты:
— не понимаешь, чего именно хочешь получить;
— не знаешь, как должен быть устроен итоговый процесс;
— не осознаёшь ограничения систем
то никакое владение инструментами не поможет добиться по‑настоящему крутых результатов.
Я постоянно вижу курсы по вайб‑кодингу, которые почти полностью сфокусированы на софт‑части - инструмент, инструкция по использованию, конкретный результат. А мне очень хочется собрать что‑то про хард‑часть: как устроены системы, как думать про продукты, какой образ мышления полезен при работе с AI-тулами и т.д.
Но я совершенно не понимаю, как сделать конечную полезную выжимку из 5 лет университета и 15+ лет опыта работы 😅
Расскажите в комментариях, чего вам больше всего не хватает именно в этих "AI-хардах". Будет круто, если приведёте пару примеров из своего опыта: интересно посмотреть, совпадут ли эти пробелы у разных людей.
1🔥7❤6🏆5👏1😎1
Мой главный лозунг прошлого года - забудь то, как ты работал раньше!
Для меня это не только про AI-тулы, но и про то, что работа в корпорациях сменилась своим стартапом. И в связи с этим надо сильно менять майндсет. Не всегда нужны масштабируемые решения с огромным запасом прочности. Чаще всего не нужны супер оптимальные решения. Зато нужны гибкие и быстрые.
Первая моя поделка совместно с AI — serverless бекенд для телеграм-бота. Мне казалось это очень прикольной идеей — у тебя нет крутящегося где-то сервера. Нет клиентов — нет оплаты. Придёт много клиентов — оно отмасштабируется полностью само. И поэтому первый бекенд для aivaly я собирал по той же схеме: DynamoDB в качестве базы данных, lambda — в качестве обработчиков, API Gateway в роли маршрутизации. 🛠
Работает стабильно, управляемо и даже курсору довольно несложно разобраться, где что лежит и как это правильно развивать. Но есть проблема — безполлитра годов опыта в AWS ни в чём не разберешься. Если хотя бы месяц не залезал в проект, то погрязнешь в логах и т.д. А главное — когда кофаундеры приходят с радостной новостью, что они что-то навайбкодили в lovable и уже можно показывать клиенту, то ты с кислым лицом отвечаешь, что их вот этот модный supabase нам не подходит для прода. 😐
На Новый Год у меня было время немного остановиться и подумать — а что я делаю не так? Что нужно поменять, чтобы не лишать коллег возможности вайбкодить? Как сделать нашу инфраструктуру более дружелюбной и прозрачной для всех? Ну и заодно — как сделать так, чтобы мы безболезненно могли быстро поднимать какие-то региональные сервисы, где будут учтены особенности местного законодательства?
В общем, я пошёл смотреть на supabase и понял, что он офигенный! В нём есть всё, что нужно для простого CRUD-бекенда из коробки. Остаётся только аккуратно управлять схемой данных и правами через миграции. Заводишь таблички — и к ним уже можно делать фронт хоть через REST, хоть через GraphQL.
Но у нас всё-таки не просто CRUD-бекенд. Есть ещё асинхронная логика обработки всякого разного. Значит, нужен оркестратор процессов. И тут на сцену выходит n8n. Его можно поселить на той же машине на тот же Postgres. А запускать workflow можно либо через webhook к нему, либо через дополнительную табличку, в которую Supabase будет по разным триггерам класть задачи на обработку.
Пока мы в процессе переезда, но в теории мне всё очень нравится. На практике, конечно, в n8n регулярно приходится какие-то костыли выдумывать. Но пока кажется, что за ту наглядность, которую он даёт, это небольшая плата.
А вы как в своих проектах выстраиваете инфраструктуру? 👀
Для меня это не только про AI-тулы, но и про то, что работа в корпорациях сменилась своим стартапом. И в связи с этим надо сильно менять майндсет. Не всегда нужны масштабируемые решения с огромным запасом прочности. Чаще всего не нужны супер оптимальные решения. Зато нужны гибкие и быстрые.
Первая моя поделка совместно с AI — serverless бекенд для телеграм-бота. Мне казалось это очень прикольной идеей — у тебя нет крутящегося где-то сервера. Нет клиентов — нет оплаты. Придёт много клиентов — оно отмасштабируется полностью само. И поэтому первый бекенд для aivaly я собирал по той же схеме: DynamoDB в качестве базы данных, lambda — в качестве обработчиков, API Gateway в роли маршрутизации. 🛠
Работает стабильно, управляемо и даже курсору довольно несложно разобраться, где что лежит и как это правильно развивать. Но есть проблема — без
На Новый Год у меня было время немного остановиться и подумать — а что я делаю не так? Что нужно поменять, чтобы не лишать коллег возможности вайбкодить? Как сделать нашу инфраструктуру более дружелюбной и прозрачной для всех? Ну и заодно — как сделать так, чтобы мы безболезненно могли быстро поднимать какие-то региональные сервисы, где будут учтены особенности местного законодательства?
В общем, я пошёл смотреть на supabase и понял, что он офигенный! В нём есть всё, что нужно для простого CRUD-бекенда из коробки. Остаётся только аккуратно управлять схемой данных и правами через миграции. Заводишь таблички — и к ним уже можно делать фронт хоть через REST, хоть через GraphQL.
Но у нас всё-таки не просто CRUD-бекенд. Есть ещё асинхронная логика обработки всякого разного. Значит, нужен оркестратор процессов. И тут на сцену выходит n8n. Его можно поселить на той же машине на тот же Postgres. А запускать workflow можно либо через webhook к нему, либо через дополнительную табличку, в которую Supabase будет по разным триггерам класть задачи на обработку.
Пока мы в процессе переезда, но в теории мне всё очень нравится. На практике, конечно, в n8n регулярно приходится какие-то костыли выдумывать. Но пока кажется, что за ту наглядность, которую он даёт, это небольшая плата.
А вы как в своих проектах выстраиваете инфраструктуру? 👀
🔥5⚡3👾2
Давно вы сталкивались с продуманным UX в мире обычных вещей вне девайсов и приложений? 🤔
Вещь, которая заставила меня написать этот пост — маленькая наклейка. Мне, правда, не удалось сделать фото — в фокусе оказался 🐶 (положу его в комменты). Да, это рулон пакетов для прогулок с пёселями, а в конце рулона — наклейка с предупреждением: "осталось 3 пакета!". И, блин, это офигенно удобно. Все, у кого есть собака, знают, как бывает сложно понять перед прогулкой, сколько там осталось пакетиков — один, два, а может, ещё четыре?
Сижу и не могу вспомнить ещё хотя бы один пример из недавнего, чтобы какая-то продуманная мелочь в "реальном" мире меня так же приятно удивила. В гаджетах и приложениях - да, вот тут даже про это писал.
А у вас как? Делитесь, что вас приятно удивляло в последнее время👇
Вещь, которая заставила меня написать этот пост — маленькая наклейка. Мне, правда, не удалось сделать фото — в фокусе оказался 🐶 (положу его в комменты). Да, это рулон пакетов для прогулок с пёселями, а в конце рулона — наклейка с предупреждением: "осталось 3 пакета!". И, блин, это офигенно удобно. Все, у кого есть собака, знают, как бывает сложно понять перед прогулкой, сколько там осталось пакетиков — один, два, а может, ещё четыре?
Сижу и не могу вспомнить ещё хотя бы один пример из недавнего, чтобы какая-то продуманная мелочь в "реальном" мире меня так же приятно удивила. В гаджетах и приложениях - да, вот тут даже про это писал.
А у вас как? Делитесь, что вас приятно удивляло в последнее время👇
1❤7🔥5😁3💩2👻1
На прошлой неделе созвонился с товарищем поделиться своими вайб-кодерскими подходами, лайфхаками и находками. И первый раз услышал персональный и очень положительный отзыв на то, что называется skills 🤔
Я про них слышал и до этого, но немного пропускал мимо ушей. Как бы я ни старался быть открытым всему новому, мозг на самом деле сопротивляется и старается придерживаться привычных паттернов, подходов и инструментов. А тут целая новая концепция. Мы освоили в команде использование workflows и ладно. Кажется, вполне достаточно.
А в выходные у меня обновился Cursor и тоже что-то написал про skills. Ну, тут я уже не выдержал и пошёл смотреть, что же это такое и как это работает 👀
Оказалось, что это дополнительные инструкции, которые агент сам находит и применяет, если считает, что они релевантны задаче. Но можно и в явном виде указать skill при написании промта. Окей, звучит неплохо.
Когда мне чаще всего приходится поправлять агента? Когда он пытается гонять python-тесты и не использует для этого venv. Ну, что ж, отличный способ понять работает или нет — завести скилл testing. Завёл, сказал, где лежит venv и что надо его использовать. Поставил следующую задачу, в которой тесты надо было прогнать. Переключился на другие задачи, вернулся к курсору — смотрю, опять пытается запускать тесты и ничего у него не получается 😑
Ну, думаю, не работают эти ваши скиллы. Но! После двух неудачных попыток вижу в чате с агентом сообщение со скриншота и замечаю, что он исправился.
Реально, как в Матрице: "Я знаю кунг-фу" 🥋✨
P.S. Ссылки на документацию про скиллы в разных инструментах в комментарии.
Я про них слышал и до этого, но немного пропускал мимо ушей. Как бы я ни старался быть открытым всему новому, мозг на самом деле сопротивляется и старается придерживаться привычных паттернов, подходов и инструментов. А тут целая новая концепция. Мы освоили в команде использование workflows и ладно. Кажется, вполне достаточно.
А в выходные у меня обновился Cursor и тоже что-то написал про skills. Ну, тут я уже не выдержал и пошёл смотреть, что же это такое и как это работает 👀
Оказалось, что это дополнительные инструкции, которые агент сам находит и применяет, если считает, что они релевантны задаче. Но можно и в явном виде указать skill при написании промта. Окей, звучит неплохо.
Когда мне чаще всего приходится поправлять агента? Когда он пытается гонять python-тесты и не использует для этого venv. Ну, что ж, отличный способ понять работает или нет — завести скилл testing. Завёл, сказал, где лежит venv и что надо его использовать. Поставил следующую задачу, в которой тесты надо было прогнать. Переключился на другие задачи, вернулся к курсору — смотрю, опять пытается запускать тесты и ничего у него не получается 😑
Ну, думаю, не работают эти ваши скиллы. Но! После двух неудачных попыток вижу в чате с агентом сообщение со скриншота и замечаю, что он исправился.
Реально, как в Матрице: "Я знаю кунг-фу" 🥋✨
P.S. Ссылки на документацию про скиллы в разных инструментах в комментарии.
1❤5🤓4👾3🔥1
У меня всегда была странная привычка: когда я набирал «ok», я обязательно переключался на английскую раскладку. Это не очень удобно и тормозит процесс, но мне было важно, чтобы это было именно «ok», а не куцый русский «ок». 🤷♂️
Рационального в этом было немного. Но благодаря таким людям как я, теперь примерно в половине случаев, когда я прошу gemini на русском поставить таймер, то в ответ слышу не "ока", потому что кто-то писал ОК заглавными буквами в русской раскладке, а полноценное "окей". 😄
Рационального в этом было немного. Но благодаря таким людям как я, теперь примерно в половине случаев, когда я прошу gemini на русском поставить таймер, то в ответ слышу не "ока", потому что кто-то писал ОК заглавными буквами в русской раскладке, а полноценное "окей". 😄
1😁9🤓4👍1👾1
Я давно понял (и, кажется, уже писал об этом не раз), что в вайб-кодинге главная проблема — не что-то собрать, а не сломать то, что уже работает.
Сначала довольно быстро получается что-то рабочее, но как только начинаешь это развивать — всё разваливается. И не всегда получается быстро понять и объяснить своему тулу, что именно сломалось.
Поэтому я довольно давно перенёс TDD-подход в работу с Codex, Claude Code и Cursor (если ваша вайб-кодинг-тула не начинается на C — даже не предлагайте мне её 😄) — и вижу, насколько стабильнее получается результат, если система нормально покрыта тестами на разных уровнях (а не просто “написали миллион юнит-тестов”).
Но я также понимаю, что выше написано что-то на эльфийском для большинства вайб-кодеров 🙂
Поэтому у меня просьба: если вы не инженер, но при этом вайбкодите и уже сталкивались с ситуацией
попросил новую фичу → всё сломалось
давайте созвонимся и поговорим про это.
Хочу понять, как вы с этим справляетесь
Вот здесь можно забронировать слот на 20-минутный созвон: https://calendar.app.google/eueW7N9Sn2YDLu8XA
А я в качестве благодарности с удовольствием проконсультирую вас по инженерным практикам поддержания качества и поделюсь опытом их внедрения в работу с агентами.
Сначала довольно быстро получается что-то рабочее, но как только начинаешь это развивать — всё разваливается. И не всегда получается быстро понять и объяснить своему тулу, что именно сломалось.
Поэтому я довольно давно перенёс TDD-подход в работу с Codex, Claude Code и Cursor (если ваша вайб-кодинг-тула не начинается на C — даже не предлагайте мне её 😄) — и вижу, насколько стабильнее получается результат, если система нормально покрыта тестами на разных уровнях (а не просто “написали миллион юнит-тестов”).
Но я также понимаю, что выше написано что-то на эльфийском для большинства вайб-кодеров 🙂
Поэтому у меня просьба: если вы не инженер, но при этом вайбкодите и уже сталкивались с ситуацией
попросил новую фичу → всё сломалось
давайте созвонимся и поговорим про это.
Хочу понять, как вы с этим справляетесь
Вот здесь можно забронировать слот на 20-минутный созвон: https://calendar.app.google/eueW7N9Sn2YDLu8XA
А я в качестве благодарности с удовольствием проконсультирую вас по инженерным практикам поддержания качества и поделюсь опытом их внедрения в работу с агентами.
6🔥10❤4👾3😁2
С конца января я почти перестал сюда писать, но не потому что ничего не происходило, а наоборот, потому что происходило слишком много всего.
Кажется, пришло время написать немного апдейтов. И начну с того, что я больше не часть команды Aivaly.
Когда я уходил из Tabby заниматься фуллтайм техническими задачами в небольшой стартап моих друзей, это выглядело как очень логичный шаг:
— есть идея и первые версии продукта
— есть первые продажи и тёплые клиенты
— нужно прямо сейчас делать много технических задач
Но на самом деле всеми этими аргументами я скорее рационализировал не самое прагматичное желание — мне хотелось почувствовать себя CTO и стартапером.
И первые месяцы это действительно было драйвово.
Погружение началось с параллельной подготовки к WebSummit и проекта у клиента — это был офигенный опыт командной работы, где чувствуется вклад каждого. Нужно было заниматься тем, что ты умеешь, тем, что тебе интересно, и чем-то ещё.
Но довольно быстро это веселье сменилось рутиной еле-тёплых и совсем холодных продаж. И вот к этому я уже не был готов. А чтобы попробовать вернуть стартаперские вайбы, я подался с нашим проектом в акселератор AltaLab. И уже первое онлайн-занятие подсветило то, на что я старательно закрывал глаза.
Один из первых вопросов, на которые Игорь Рябенький просил честно себе ответить, звучал очень просто: "Готов ли ты заниматься этим 10 лет?" Я честно ответил "нет". Но попытался себя убедить, что, возможно, достаточно того, что другие ребята из команды готовы.
Вопрос, который окончательно расставил всё по местам: "Какое unfair advantage я даю команде?" И когда я стал искать на него ответ, мне стало понятно, откуда берётся моё внутреннее сопротивление в каких-то задачах. Я не видел, какой именно вклад даю, который принципиально усиливает команду и почему меня нельзя взять и просто заменить. Даже наоборот, я вспомнил, что ещё в новогодние каникулы у меня появилось ощущение: в том режиме, в котором мы работаем, я скорее торможу остальных, чем ускоряю движение к цели.
В итоге, после окончания двухнедельного интенсива AltaLab, я вернулся к команде и честно сказал, что, кажется, без меня они справятся лучше, чем со мной.
И здесь самая ироничная часть. Я много лет сам говорил знакомым стартаперам, что на ранней стадии им не нужен CTO. Им нужен сильный hands-on инженер и иногда кто-то со стороны, с кем можно обсудить сложные решения — fractional CTO или technical advisor. Но фуллтайм нужен тот, кто в первую очередь деливерит, а не объясняет как и что должно быть сделано. Да, сейчас с LLM'ками трансформация ролей происходит очень быстро. Но как показала практика, на этапе поиска своего места на рынке, крутые продакты становятся гораздо более эффективными вайбкодерами, чем технический менеджер. По крайней мере, если для этого менеджера это просто прикольный проект, а не задача, на решение которой он готов потратить ближайшие 10 лет своей жизни.
Короче, возможно, стоило остаться в роли эдвайзора, с которой всё и начиналось, но история не знает сослагательного наклонения. А эти полгода дали много крутейшего опыта и пищи для размышлений, так что я ни о чём не жалею!
Желаю ребятам успехов, а сам двигаюсь дальше.
Куда? Скоро расскажу (но спойлеры уже можно найти в LinkedIn)
Кажется, пришло время написать немного апдейтов. И начну с того, что я больше не часть команды Aivaly.
Когда я уходил из Tabby заниматься фуллтайм техническими задачами в небольшой стартап моих друзей, это выглядело как очень логичный шаг:
— есть идея и первые версии продукта
— есть первые продажи и тёплые клиенты
— нужно прямо сейчас делать много технических задач
Но на самом деле всеми этими аргументами я скорее рационализировал не самое прагматичное желание — мне хотелось почувствовать себя CTO и стартапером.
И первые месяцы это действительно было драйвово.
Погружение началось с параллельной подготовки к WebSummit и проекта у клиента — это был офигенный опыт командной работы, где чувствуется вклад каждого. Нужно было заниматься тем, что ты умеешь, тем, что тебе интересно, и чем-то ещё.
Но довольно быстро это веселье сменилось рутиной еле-тёплых и совсем холодных продаж. И вот к этому я уже не был готов. А чтобы попробовать вернуть стартаперские вайбы, я подался с нашим проектом в акселератор AltaLab. И уже первое онлайн-занятие подсветило то, на что я старательно закрывал глаза.
Один из первых вопросов, на которые Игорь Рябенький просил честно себе ответить, звучал очень просто: "Готов ли ты заниматься этим 10 лет?" Я честно ответил "нет". Но попытался себя убедить, что, возможно, достаточно того, что другие ребята из команды готовы.
Вопрос, который окончательно расставил всё по местам: "Какое unfair advantage я даю команде?" И когда я стал искать на него ответ, мне стало понятно, откуда берётся моё внутреннее сопротивление в каких-то задачах. Я не видел, какой именно вклад даю, который принципиально усиливает команду и почему меня нельзя взять и просто заменить. Даже наоборот, я вспомнил, что ещё в новогодние каникулы у меня появилось ощущение: в том режиме, в котором мы работаем, я скорее торможу остальных, чем ускоряю движение к цели.
В итоге, после окончания двухнедельного интенсива AltaLab, я вернулся к команде и честно сказал, что, кажется, без меня они справятся лучше, чем со мной.
И здесь самая ироничная часть. Я много лет сам говорил знакомым стартаперам, что на ранней стадии им не нужен CTO. Им нужен сильный hands-on инженер и иногда кто-то со стороны, с кем можно обсудить сложные решения — fractional CTO или technical advisor. Но фуллтайм нужен тот, кто в первую очередь деливерит, а не объясняет как и что должно быть сделано. Да, сейчас с LLM'ками трансформация ролей происходит очень быстро. Но как показала практика, на этапе поиска своего места на рынке, крутые продакты становятся гораздо более эффективными вайбкодерами, чем технический менеджер. По крайней мере, если для этого менеджера это просто прикольный проект, а не задача, на решение которой он готов потратить ближайшие 10 лет своей жизни.
Короче, возможно, стоило остаться в роли эдвайзора, с которой всё и начиналось, но история не знает сослагательного наклонения. А эти полгода дали много крутейшего опыта и пищи для размышлений, так что я ни о чём не жалею!
Желаю ребятам успехов, а сам двигаюсь дальше.
Куда? Скоро расскажу (но спойлеры уже можно найти в LinkedIn)
1🔥19❤15🦄5
Начну издалека. Жизнь в эмиграции очень нестабильная штука. От твоего работодателя (при его наличии) во многом зависит твоё право жить в конкретной стране. Можно, конечно, самостоятельно заниматься легализацией, и я как раз так и делал на Кипре последние полтора года. И, да, это одна из причин, по которой я смело ушёл от настоящего работодателя с регулярной зарплатой в несуществующую компанию мечты.
Но когда реальность с мечтой разошлись, выяснилось, что не так страшна привязка к стране работодателем (или к работодателю страной 🤔), как стремительно худеющая финансовая подушка. И вот я уже формулирую два главных требования для очередной смены деятельности:
— регулярная зарплата;
— закрытие вопросов легализации за меня.
Ну и, да, легализация должна быть не на Кипре.Потому что тут мы уже все винодельни объехали
А возвращаясь к мысли из прошлого поста про unfair advantage, я понял, что моя ценность в финтехе сильно выше, чем вне его, так что это точно должен быть финтех. Но не совсем же отказываться от своих мечт? Так что это должен быть финтех, который готов строить агентские процессы разработки, переосмыслять привычные штуки и не тащить за собой тонны legacy.
А такое точно бывает? Вот и я думал, что нет и собесился в разные большие компании с релокацией в Лондон.
И вот мне предложили пообщаться с крипто-стартапом. Честно скажу, я был (и до сих пор) далёк от крипты, а смысла в её широком распространении не особо видел. Но после разговоров с фаундерами и командой я внезапно понял, насколько это может быть актуально и интересно, если посмотреть под правильным углом. А ещё — насколько много ограничений классических финтехов можно не тащить за собой.
При этом мой опыт в традиционных финансах оказался очень полезным. Потому что, несмотря на весь хайп вокруг нового банкинга, реальный мир всё ещё состоит из айбанов, свифтов, ERP-интеграций, карточек VISA и всей этой legacy-инфраструктуры, с которой надо как-то взмыть в прекрасное крипто-будущее 🙂
В итоге я решил, что это классный мэтч. И вот уже полтора месяца работаю с Squads над продуктом Altitude. Продукт недавно перезапустился в новой версии, а компания подняла новый раунд. Ох, сколько у нас идей и планов на ближайшие месяцы!
Но самое кайфовое — это команда. Все максимально AI-driven, постоянно что-то пробуют, экспериментируют, обсуждают. Мне кажется, за последние недели я попробовал больше нового, чем за многие предыдущие месяцы. Ну, знаете ли, unlimited token policy этому очень способствует.
Я постараюсь рассказывать про всё это регулярно и подробно. Но пока времени катастрофически не хватает, потому что помимо погружения в новую для себя сферу я параллельно готовлюсь к переезду в Барселону 🇪🇸
Такой visa sponsorship мне очень по душе!
Но когда реальность с мечтой разошлись, выяснилось, что не так страшна привязка к стране работодателем (или к работодателю страной 🤔), как стремительно худеющая финансовая подушка. И вот я уже формулирую два главных требования для очередной смены деятельности:
— регулярная зарплата;
— закрытие вопросов легализации за меня.
Ну и, да, легализация должна быть не на Кипре.
А возвращаясь к мысли из прошлого поста про unfair advantage, я понял, что моя ценность в финтехе сильно выше, чем вне его, так что это точно должен быть финтех. Но не совсем же отказываться от своих мечт? Так что это должен быть финтех, который готов строить агентские процессы разработки, переосмыслять привычные штуки и не тащить за собой тонны legacy.
А такое точно бывает? Вот и я думал, что нет и собесился в разные большие компании с релокацией в Лондон.
И вот мне предложили пообщаться с крипто-стартапом. Честно скажу, я был (и до сих пор) далёк от крипты, а смысла в её широком распространении не особо видел. Но после разговоров с фаундерами и командой я внезапно понял, насколько это может быть актуально и интересно, если посмотреть под правильным углом. А ещё — насколько много ограничений классических финтехов можно не тащить за собой.
При этом мой опыт в традиционных финансах оказался очень полезным. Потому что, несмотря на весь хайп вокруг нового банкинга, реальный мир всё ещё состоит из айбанов, свифтов, ERP-интеграций, карточек VISA и всей этой legacy-инфраструктуры, с которой надо как-то взмыть в прекрасное крипто-будущее 🙂
В итоге я решил, что это классный мэтч. И вот уже полтора месяца работаю с Squads над продуктом Altitude. Продукт недавно перезапустился в новой версии, а компания подняла новый раунд. Ох, сколько у нас идей и планов на ближайшие месяцы!
Но самое кайфовое — это команда. Все максимально AI-driven, постоянно что-то пробуют, экспериментируют, обсуждают. Мне кажется, за последние недели я попробовал больше нового, чем за многие предыдущие месяцы. Ну, знаете ли, unlimited token policy этому очень способствует.
> Эй, клод, закрой таску про пост в ТГ в Linear, и сформулируй темы для следующих постов!
Я постараюсь рассказывать про всё это регулярно и подробно. Но пока времени катастрофически не хватает, потому что помимо погружения в новую для себя сферу я параллельно готовлюсь к переезду в Барселону 🇪🇸
Такой visa sponsorship мне очень по душе!
2🔥29🍾11🎉5👍4❤2
Это скриншоты из Riptide, которым я активно пользуюсь последние три недели. Он помогает разрабатывать новую функциональность, основываясь на уже применяемых в репозитории паттернах. И по моим ощущениям это не просто ещё один тул для spec-context-younameit-driven development, а прям другой уровень. Тот случай, когда бейджик YC F24 не врёт.
Первые вау-эффекты заставили меня буквально раз в 5 минут слать скриншоты и md-файлы другу, с которым мы за пару дней до этого по телефону обсуждали, как должна выглядеть AI-driven разработка. Да, тут было всё именно так как мне хотелось. И, да, всё, что написано на скриншотах - правда. Из "мелочей" - все дизайн-документы в облачном воркспейсе доступны сразу всей команде, они цепляются к Linear или Jira тикетам, их можно комментить, а агент эти комменты будет читать и принимать к сведению. В общем, несмотря на всю мою насмотренность на самые разные тулы и твердое решение не бросаться ставить новые, если они как старые, но немного лучше, в riptide я сразу поверил.
Впрочем, дьявол, как всегда оказался в деталях. Хотя, наоборот, не в деталях, а в конценпциях. С одной стороны, я делаю большую фичу, проходящую через много разных сервисов, требующую разработки новых и мне надо быстро построить её PoC. С другой стороны, чтобы построить хороший PoC с архитектурной точки зрения, мне нужно каждый из этих слоёв продумать на несколько шагов вперёд, а не только для самой ранней стадии, чтобы потом не пришлось всё переписывать или мучительно поддерживать то, что в новые требования не вписывается. А вот на такой послойный рисёрч эта штука в своём прямом виде оказалась не рассчитана.
В итоге я нашёл хак, про который даже разработчики этой тулы сказали, что оно так не может заработать. Сначала я для себя разбил свою большую фичу на горизонтальные слои. Описал требования к ним и этапы развития. И запустил riptide устраивать со мной design discussion по этим слоям. Потом я создал отдельный тикет уже на первый вертикальный слой, прилинковал ему блокеров от подзадач из горизонтальных слоёв и запустил уже research по нему. А в процессе уточнения требований к рисёрчу сказал, предварительно подцепив Linear MCP в клод-код, что надо бы пошариться по связанным тикетам. Так он нашёл те "горизонтальные" дискуссии и учёл их в моём вертикальном слайсе функциональности. То, что получается, мне прям нравится, а вот понравится ли команде разработки, узнаю в начале недели.
Самое непривычное во всём этом, это постоянно переодевать шапочки продакта-архитектора-тестировщика и, конечно, погонщика агентов на своей голове. Я, конечно, давно себя назвал full-stack менеджером, но в реальный продукт с миллионами долларов на счетах код я никогда не коммитил. С другой стороны, когда все решения зафиксированы, а принять другие и заново сгенерить код уже с ними, это задача на пару часов, никто не мешает сбилдить фичу несколько раз с итеративными улучшениями и в продукте, и в архитектуре.
А вы как обсуждаете свои фичи с агентами, коллегами и сами с собой - вертикальными или горизонтальными слоями?
P.S. Сервис пока в бете, но потихоньку начинает продавать лицензии. Чтобы успеть потестить бесплатно заходите на https://cloud.codelayer.cloud/, создавайте там организацию и скачивайте аппку для Мака
Первые вау-эффекты заставили меня буквально раз в 5 минут слать скриншоты и md-файлы другу, с которым мы за пару дней до этого по телефону обсуждали, как должна выглядеть AI-driven разработка. Да, тут было всё именно так как мне хотелось. И, да, всё, что написано на скриншотах - правда. Из "мелочей" - все дизайн-документы в облачном воркспейсе доступны сразу всей команде, они цепляются к Linear или Jira тикетам, их можно комментить, а агент эти комменты будет читать и принимать к сведению. В общем, несмотря на всю мою насмотренность на самые разные тулы и твердое решение не бросаться ставить новые, если они как старые, но немного лучше, в riptide я сразу поверил.
Впрочем, дьявол, как всегда оказался в деталях. Хотя, наоборот, не в деталях, а в конценпциях. С одной стороны, я делаю большую фичу, проходящую через много разных сервисов, требующую разработки новых и мне надо быстро построить её PoC. С другой стороны, чтобы построить хороший PoC с архитектурной точки зрения, мне нужно каждый из этих слоёв продумать на несколько шагов вперёд, а не только для самой ранней стадии, чтобы потом не пришлось всё переписывать или мучительно поддерживать то, что в новые требования не вписывается. А вот на такой послойный рисёрч эта штука в своём прямом виде оказалась не рассчитана.
В итоге я нашёл хак, про который даже разработчики этой тулы сказали, что оно так не может заработать. Сначала я для себя разбил свою большую фичу на горизонтальные слои. Описал требования к ним и этапы развития. И запустил riptide устраивать со мной design discussion по этим слоям. Потом я создал отдельный тикет уже на первый вертикальный слой, прилинковал ему блокеров от подзадач из горизонтальных слоёв и запустил уже research по нему. А в процессе уточнения требований к рисёрчу сказал, предварительно подцепив Linear MCP в клод-код, что надо бы пошариться по связанным тикетам. Так он нашёл те "горизонтальные" дискуссии и учёл их в моём вертикальном слайсе функциональности. То, что получается, мне прям нравится, а вот понравится ли команде разработки, узнаю в начале недели.
Самое непривычное во всём этом, это постоянно переодевать шапочки продакта-архитектора-тестировщика и, конечно, погонщика агентов на своей голове. Я, конечно, давно себя назвал full-stack менеджером, но в реальный продукт с миллионами долларов на счетах код я никогда не коммитил. С другой стороны, когда все решения зафиксированы, а принять другие и заново сгенерить код уже с ними, это задача на пару часов, никто не мешает сбилдить фичу несколько раз с итеративными улучшениями и в продукте, и в архитектуре.
А вы как обсуждаете свои фичи с агентами, коллегами и сами с собой - вертикальными или горизонтальными слоями?
P.S. Сервис пока в бете, но потихоньку начинает продавать лицензии. Чтобы успеть потестить бесплатно заходите на https://cloud.codelayer.cloud/, создавайте там организацию и скачивайте аппку для Мака
brew install --cask humanlayer/humanlayer/riptide-beta
open /Applications/Riptide-Beta.app
1🎉5❤3🤯3🔥2👾1
Судя по наличию 🤯 под предыдущим постом, надо про что-то менее узкоспециализированное написать. Ну, тогда пришло время поделиться впечатлениями и методами использования Claude Dispatch.
Но начну, как обычно, издалека. Я давно наблюдал за несколькими ребятами, которые продвигают концепцию second brain и советуют все записи вести в репозитории, к которому у AI есть доступ, а вы с этим AI общаетесь через чат. Кажется, первым, у кого я это увидел, был Сева Устинов. Концепция мне понравилась, но надо было думать, как это и где разворачивать, и я решил дождаться коробочных решений.
Коробочное решение не заставило себя долго ждать. Когда появился OpenClaw, вокруг того, чтобы все задачи поручать агентам, развернулся дикий хайп. Но примерно каждый пятый пост был про то, как все данные были уничтожены, ключи утекли и вот это вот всё. FOMO, что я этим не пользуюсь, было сильное. Но опасения по поводу того, чтобы дать доступ вообще ко всему на своём компьютере какой-то непонятной субстанции, сильнее.
А потом Anthropic сделал Claude Dispatch. Это такой оркестратор агентов внутри приложения Claude Desktop с единым окном чата с ним, к которому можно подключиться в том числе из приложения на телефоне. Я подключил и попробовал между подходами в тренажёрке позадавать вопросы Claude Code по своей кодовой базе и написать пару планов в виде md-шек. Мне понравилось.
Потом я понял, что он может работать не только с локальными файлами, но и с сервисами через MCP. Подключил Linear и попробовал голосовой ввод в приложении на ноуте. Вот тут меня ждало полное разочарование. Не знаю почему, но Claude на телефоне отлично распознаёт русский, а на десктопе вообще его не понимает. Поэтому теперь, когда я хочу что-то длинное наговорить ассистенту, я беру телефон и кричу в него. Уверен, это добавляет мне важности для наблюдателей со стороны. Жаль, что работаю я из дома, и важным становлюсь в основном в глазах собственной собаки.
Так вот, работа с таск-трекером стала одним из основных воркфлоу использования Claude Dispatch. Мне всегда было очень лень держать связи между тикетами актуальными, проставлять им дедлайны, теги и прочие важные атрибуты. Да даже один большой текст со спеками разложить по нескольких тикетам в проекте уже вызывало ломку. А теперь я всё это делаю с удовольствием просто наговаривая голосовухи.
Но ещё более классным применением Dispatch оказалась работа с контент планом. Да-да, в том числе для этого канала. Всё, что касается контента теперь живёт в понятной структуре в md-файлах. Когда мне приходит какая-то идея для будущего поста, я просто открываю Dispatch и наговариваю неструктурированные тезисы. Потом, когда я решаю, что пришло время написать, я прошу собрать релевантные тезисы из других идей, собрать фактуры в Интернете, если нужно, и создать файлик для драфта. Вот в таком файлике для драфта я и пишу этот пост. Сейчас я его попрошу прокомментировать - что лучше исправить или сократить, сделаю пару итераций редактирования и опубликую.
Вот, опубликовал. А вы уже читаете!
Прочитали? Теперь самое время прокомментировать - вы со своим агентом чаще разговариваете или переписываетесь?
Но начну, как обычно, издалека. Я давно наблюдал за несколькими ребятами, которые продвигают концепцию second brain и советуют все записи вести в репозитории, к которому у AI есть доступ, а вы с этим AI общаетесь через чат. Кажется, первым, у кого я это увидел, был Сева Устинов. Концепция мне понравилась, но надо было думать, как это и где разворачивать, и я решил дождаться коробочных решений.
Коробочное решение не заставило себя долго ждать. Когда появился OpenClaw, вокруг того, чтобы все задачи поручать агентам, развернулся дикий хайп. Но примерно каждый пятый пост был про то, как все данные были уничтожены, ключи утекли и вот это вот всё. FOMO, что я этим не пользуюсь, было сильное. Но опасения по поводу того, чтобы дать доступ вообще ко всему на своём компьютере какой-то непонятной субстанции, сильнее.
А потом Anthropic сделал Claude Dispatch. Это такой оркестратор агентов внутри приложения Claude Desktop с единым окном чата с ним, к которому можно подключиться в том числе из приложения на телефоне. Я подключил и попробовал между подходами в тренажёрке позадавать вопросы Claude Code по своей кодовой базе и написать пару планов в виде md-шек. Мне понравилось.
Потом я понял, что он может работать не только с локальными файлами, но и с сервисами через MCP. Подключил Linear и попробовал голосовой ввод в приложении на ноуте. Вот тут меня ждало полное разочарование. Не знаю почему, но Claude на телефоне отлично распознаёт русский, а на десктопе вообще его не понимает. Поэтому теперь, когда я хочу что-то длинное наговорить ассистенту, я беру телефон и кричу в него. Уверен, это добавляет мне важности для наблюдателей со стороны. Жаль, что работаю я из дома, и важным становлюсь в основном в глазах собственной собаки.
Так вот, работа с таск-трекером стала одним из основных воркфлоу использования Claude Dispatch. Мне всегда было очень лень держать связи между тикетами актуальными, проставлять им дедлайны, теги и прочие важные атрибуты. Да даже один большой текст со спеками разложить по нескольких тикетам в проекте уже вызывало ломку. А теперь я всё это делаю с удовольствием просто наговаривая голосовухи.
Но ещё более классным применением Dispatch оказалась работа с контент планом. Да-да, в том числе для этого канала. Всё, что касается контента теперь живёт в понятной структуре в md-файлах. Когда мне приходит какая-то идея для будущего поста, я просто открываю Dispatch и наговариваю неструктурированные тезисы. Потом, когда я решаю, что пришло время написать, я прошу собрать релевантные тезисы из других идей, собрать фактуры в Интернете, если нужно, и создать файлик для драфта. Вот в таком файлике для драфта я и пишу этот пост. Сейчас я его попрошу прокомментировать - что лучше исправить или сократить, сделаю пару итераций редактирования и опубликую.
Вот, опубликовал. А вы уже читаете!
Прочитали? Теперь самое время прокомментировать - вы со своим агентом чаще разговариваете или переписываетесь?
1❤12🤡2👨💻2👍1😁1
Моя роль в Squads - Fullstack Product Engineer. Я отвечаю за фичи, над которыми работаю, end-to-end: начиная с первой строчки продуктовых требований и заканчивая последней строчкой кода багофиксов после релиза. У такого подхода есть самые разные плюсы и минусы, но чем мне сразу концептуально понравилось предложение так работать, так это возможностью самому решать в зависимости от стадии проработки продукта, где срезать углы, а где упарываться в грамотные технические решения.
Например, понятно, что схему данных нужно проработать настолько хорошо, насколько это возможно сразу. У неё всегда самый длинный хвост проблем (если, конечно, мы не говорим о встраиваемых куда-то библиотеках, привет, коллеги из АппМетрики) и лишних миграций данных хочется избежать. А вот на разные грязные хаки в том, кто тригерит обновления и в каких ситуациях, я готов с радостью пойти, зафиксировав переход на нормальную фоновую синхронизацию, как техдолг. Это же Proof of Concept. Мы пока не знаем, что именно изменится после первых тестов, а значит смысла делать сразу всё идеально не очень много.
Так я думал, пока не настало первое код-ревью, на котором мне прилетела куча комментов, что мы так не делаем, так у нас не принято, а вот это мы договорились всегда делать по-другому. Во мне долго горело желание отстаивать свои хаки, но я пошёл исправлять код согласно замечаниям, решив, что первый раз сделаю как принято, а все свои идеи по социально-одобряемому говнокодингу оставлю при себе до ретро.
А потом я заметил, как AI радостно ссылается на кусок кода из моей экспериментальной ветки и говорит мне, что нашёл подходящий паттерн в репозитории, поэтому будет делать по образу и подобию. И тут мне стало ясно, что любой сделанный на скорую руку хак с точки зрения AI моментально превращается в паттерн, который можно повторять. И вся моя концепция про то, что с AI-driven разработкой можно сначала быстро наговнокодить, а потом рефакторить фичи, когда накопаем реальных данных о продукте, упёрлась в реальность.
И теперь у меня вопрос - может кто-то уже научился доступно объяснять агентам, что вот этот код фу-фу-фу и по его образу строить ничего не надо, а вот этот смело бери как пример и делай по аналогии.
Например, понятно, что схему данных нужно проработать настолько хорошо, насколько это возможно сразу. У неё всегда самый длинный хвост проблем (если, конечно, мы не говорим о встраиваемых куда-то библиотеках, привет, коллеги из АппМетрики) и лишних миграций данных хочется избежать. А вот на разные грязные хаки в том, кто тригерит обновления и в каких ситуациях, я готов с радостью пойти, зафиксировав переход на нормальную фоновую синхронизацию, как техдолг. Это же Proof of Concept. Мы пока не знаем, что именно изменится после первых тестов, а значит смысла делать сразу всё идеально не очень много.
Так я думал, пока не настало первое код-ревью, на котором мне прилетела куча комментов, что мы так не делаем, так у нас не принято, а вот это мы договорились всегда делать по-другому. Во мне долго горело желание отстаивать свои хаки, но я пошёл исправлять код согласно замечаниям, решив, что первый раз сделаю как принято, а все свои идеи по социально-одобряемому говнокодингу оставлю при себе до ретро.
А потом я заметил, как AI радостно ссылается на кусок кода из моей экспериментальной ветки и говорит мне, что нашёл подходящий паттерн в репозитории, поэтому будет делать по образу и подобию. И тут мне стало ясно, что любой сделанный на скорую руку хак с точки зрения AI моментально превращается в паттерн, который можно повторять. И вся моя концепция про то, что с AI-driven разработкой можно сначала быстро наговнокодить, а потом рефакторить фичи, когда накопаем реальных данных о продукте, упёрлась в реальность.
И теперь у меня вопрос - может кто-то уже научился доступно объяснять агентам, что вот этот код фу-фу-фу и по его образу строить ничего не надо, а вот этот смело бери как пример и делай по аналогии.
1❤8👾4👨💻3
Решил заранее готовиться к переезду и начал учить испанский. Подумываю переименовать канал в Сеньор 🍅 Програмадор
😁9❤4🤓4🎃4🔥3