update by seo
This commit is contained in:
parent
4ab6f884ff
commit
17c0ca6de0
|
|
@ -0,0 +1,172 @@
|
||||||
|
# AI Pair Programming
|
||||||
|
|
||||||
|
## Определение
|
||||||
|
|
||||||
|
**AI Pair Programming** — парадигма разработки, где AI-ассистент работает вместе с разработчиком в режиме реального времени: предлагает код, объясняет решения, помогает с отладкой и рефакторингом. В отличие от автономных агентов (agentic coding), здесь human-in-the-loop на каждом шаге.
|
||||||
|
|
||||||
|
**Ключевое отличие**: **совместная работа** — разработчик остаётся в водительском кресле (driver), AI выступает навигатором (navigator) или ассистентом.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Официальное позиционирование
|
||||||
|
|
||||||
|
### GitHub Copilot: "Your AI pair programmer"
|
||||||
|
|
||||||
|
- **Запуск**: Technical preview — 22 февраля 2022
|
||||||
|
- **Официальный слоган**: ["Your AI pair programmer"](https://github.com/features/copilot) — используется с 2022
|
||||||
|
- **Маркетинг**: "Command your craft", "AI accelerator for every workflow"
|
||||||
|
- **Статистика**: millions of users, tens of thousands of business customers, "world's most widely adopted AI developer tool"
|
||||||
|
|
||||||
|
### Microsoft Learn
|
||||||
|
|
||||||
|
- **Документация**: [AI pair programmer](https://learn.microsoft.com/en-us/industry/mobility/architecture/ai-pair-programmer)
|
||||||
|
- **Описание**: GitHub Copilot как AI pair programmer в контексте autonomous vehicle development
|
||||||
|
- **Training**: [GitHub Copilot Fundamentals](https://learn.microsoft.com/en-us/training/paths/copilot/)
|
||||||
|
|
||||||
|
### Популярность термина
|
||||||
|
|
||||||
|
- **720 поисковых запросов/месяц** по "ai pair programming" (данные на 2025)
|
||||||
|
- Устойчивый термин с 2022 года после запуска GitHub Copilot
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Профессиональные инструменты
|
||||||
|
|
||||||
|
### GitHub Copilot
|
||||||
|
|
||||||
|
- **Запуск**: февраль 2022 (technical preview)
|
||||||
|
- **Модели**: OpenAI Codex (изначально), GPT-4, Claude Opus, Haiku, Gemini (2025+)
|
||||||
|
- **Интеграция**: VS Code, Visual Studio, JetBrains, Neovim, Eclipse, Xcode, Zed
|
||||||
|
- **Pricing**: Free ($0, limited), Pro ($10/месяц), Business ($19/user), Enterprise ($39/user)
|
||||||
|
- **Ссылки**:
|
||||||
|
- [Official Page](https://github.com/features/copilot)
|
||||||
|
- [Visual Studio Integration](https://visualstudio.microsoft.com/github-copilot/)
|
||||||
|
- [Responsible AI practices](https://github.blog/ai-and-ml/github-copilot/responsible-ai-pair-programming-with-github-copilot/)
|
||||||
|
|
||||||
|
### Cursor
|
||||||
|
|
||||||
|
- **Статус**: production-ready AI-native IDE (fork VS Code)
|
||||||
|
- **Версия 2.0**: октябрь 2025 с Composer
|
||||||
|
- **AI Pair Programming возможности**:
|
||||||
|
- Real-time collaboration mode
|
||||||
|
- Context-aware suggestions
|
||||||
|
- Inline chat (`Alt + /`)
|
||||||
|
- Multi-file editing
|
||||||
|
- Agent mode для complex tasks
|
||||||
|
- **Ссылки**:
|
||||||
|
- [Cursor IDE Official](https://cursor.com)
|
||||||
|
- [AI Pair Programming Best Practices](https://skywork.ai/blog/cursor-1-7-ai-autocomplete-pair-programming-best-practices/)
|
||||||
|
- [Pair Programming Guide](https://developertoolkit.ai/en/cursor-ide/lessons/pair-programming/)
|
||||||
|
|
||||||
|
### Windsurf
|
||||||
|
|
||||||
|
- **Статус**: browser-based AI-native IDE
|
||||||
|
- **Cascade Engine**: адаптивный AI с memory management
|
||||||
|
- **Pair Programming возможности**:
|
||||||
|
- Real-time co-editing
|
||||||
|
- Team collaboration (share sessions)
|
||||||
|
- Context awareness
|
||||||
|
- SuperComplete predictions
|
||||||
|
- Memory across sessions
|
||||||
|
- **Ссылки**:
|
||||||
|
- [Windsurf vs Cursor](https://flexisourceit.com.au/resources/blog/cursor-vs-windsurf-ai-pair-programming/)
|
||||||
|
- [Vibe Coding Guide](https://www.obviousworks.ch/en/vibe-coding-with-windsurf-ide/)
|
||||||
|
|
||||||
|
### Другие инструменты
|
||||||
|
|
||||||
|
| Инструмент | Описание | Ссылка |
|
||||||
|
|-----------|----------|--------|
|
||||||
|
| **Tabnine** | Privacy-focused, trainable на private code | [tabnine.com](https://www.tabnine.com) |
|
||||||
|
| **AWS CodeWhisperer** | AWS-focused pair programmer | [aws.amazon.com/codewhisperer](https://aws.amazon.com/codewhisperer) |
|
||||||
|
| **Replit Ghostwriter** | Browser-based, great for prototyping | [replit.com](https://replit.com) |
|
||||||
|
| **Cody (Sourcegraph)** | Enterprise-scale codebase navigation | [sourcegraph.com/cody](https://sourcegraph.com/cody) |
|
||||||
|
| **MutableAI** | Refactoring and test generation focus | [mutable.ai](https://mutable.ai) |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Интеграция с Claude Code
|
||||||
|
|
||||||
|
✅ **Поддерживается как pair programming mode**
|
||||||
|
|
||||||
|
- **Output styles для pair programming**:
|
||||||
|
- `/output-style learning` — интерактивный режим с заданиями для разработчика
|
||||||
|
- `/output-style explanatory` — подробные объяснения решений
|
||||||
|
- **Публикации**:
|
||||||
|
- [Pair Programming with Claude Code (Shipyard)](https://shipyard.build/blog/claude-code-output-styles-pair-programming/) (сентябрь 2025)
|
||||||
|
- [Brilliant in Parts, Unreliable in Others (DSheiko)](https://dsheiko.com/weblog/pair-programming-with-claude-code/) (декабрь 2025)
|
||||||
|
- [Meet Your New AI Pair Programmer (Dan Vega)](https://www.youtube.com/watch?v=-jYlp2oJh_o) (июль 2025)
|
||||||
|
- **Best practices**: [Anthropic Engineering Blog](https://www.anthropic.com/engineering/claude-code-best-practices) (апрель 2025)
|
||||||
|
- **Community**: [Claude Code Official](https://claudecode.org) позиционирует себя как "Your AI Pair Programming Assistant"
|
||||||
|
|
||||||
|
**Особенности Claude Code в pair programming:**
|
||||||
|
- Planning Mode — агент планирует перед кодированием (human approval required)
|
||||||
|
- Custom output styles — настройка стиля взаимодействия (обучающий, объясняющий)
|
||||||
|
- Context awareness — понимает весь проект
|
||||||
|
- Interactive review — step-by-step approval workflow
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Минимальный подход без фреймворков
|
||||||
|
|
||||||
|
**Концепция**: AI как навигатор, human как driver
|
||||||
|
|
||||||
|
**Паттерн взаимодействия**:
|
||||||
|
1. **Разработчик**: описывает задачу в natural language
|
||||||
|
2. **AI**: предлагает решение, объясняет подход
|
||||||
|
3. **Разработчик**: принимает (Tab/Enter) или корректирует
|
||||||
|
4. **Итерация**: совместный рефакторинг и улучшение
|
||||||
|
|
||||||
|
**Преимущества**:
|
||||||
|
- ✅ Human oversight на каждом шаге
|
||||||
|
- ✅ Learning by doing — разработчик не теряет навыки
|
||||||
|
- ✅ Контроль качества кода
|
||||||
|
- ✅ Нет риска "vibe coding" (бездумное копирование)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Padrões использования
|
||||||
|
|
||||||
|
### Traditional Pair Programming vs AI
|
||||||
|
|
||||||
|
| Аспект | Human Pair | AI Pair |
|
||||||
|
|--------|-----------|---------|
|
||||||
|
| **Доступность** | Ограничена schedule | 24/7 |
|
||||||
|
| **Терпение** | Переменное | Бесконечное |
|
||||||
|
| **Знания** | Специализация | Broad (все языки/фреймворки) |
|
||||||
|
| **Скорость** | Human pace | Instant suggestions |
|
||||||
|
| **Обучение** | Bidirectional | AI → Human (mostly) |
|
||||||
|
|
||||||
|
### Роли AI в pair programming
|
||||||
|
|
||||||
|
- **Navigator AI**: направляет архитектуру, предлагает подходы, ловит ошибки
|
||||||
|
- **Driver Assistant**: пишет код, автодополнение, boilerplate generation
|
||||||
|
- **Rubber Duck Plus**: слушает, задаёт вопросы, предлагает альтернативы
|
||||||
|
- **Knowledge Base**: моментальная документация, примеры, best practices
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Ссылки
|
||||||
|
|
||||||
|
### Официальные источники
|
||||||
|
- [GitHub Copilot: Your AI pair programmer](https://github.com/features/copilot)
|
||||||
|
- [Microsoft Learn: AI pair programmer](https://learn.microsoft.com/en-us/industry/mobility/architecture/ai-pair-programmer)
|
||||||
|
- [Visual Studio with GitHub Copilot](https://visualstudio.microsoft.com/github-copilot/)
|
||||||
|
- [GitHub Copilot Training](https://learn.microsoft.com/en-us/training/paths/copilot/)
|
||||||
|
|
||||||
|
### Claude Code
|
||||||
|
- [Claude Code Official](https://claudecode.org)
|
||||||
|
- [Pair Programming with Output Styles](https://shipyard.build/blog/claude-code-output-styles-pair-programming/) (сентябрь 2025)
|
||||||
|
- [Best Practices (Anthropic)](https://www.anthropic.com/engineering/claude-code-best-practices) (апрель 2025)
|
||||||
|
- [Dan Vega Tutorial](https://www.youtube.com/watch?v=-jYlp2oJh_o) (июль 2025)
|
||||||
|
|
||||||
|
### Cursor & Windsurf
|
||||||
|
- [Cursor Official](https://cursor.com)
|
||||||
|
- [Cursor Pair Programming Guide](https://developertoolkit.ai/en/cursor-ide/lessons/pair-programming/)
|
||||||
|
- [Cursor Best Practices](https://skywork.ai/blog/cursor-1-7-ai-autocomplete-pair-programming-best-practices/)
|
||||||
|
- [Windsurf vs Cursor](https://flexisourceit.com.au/resources/blog/cursor-vs-windsurf-ai-pair-programming/)
|
||||||
|
|
||||||
|
### Обзоры и сравнения
|
||||||
|
- [AI Pair Programming in 2025 (Builder.io)](https://www.builder.io/blog/ai-pair-programming) (декабрь 2024)
|
||||||
|
- [10 AI Pair Programming Tools (Questera)](https://www.questera.ai/blogs/10-ai-pair-programming-tools-worth-using-in-2025) (сентябрь 2025)
|
||||||
|
- [Showdown September 2025 (Mixflow)](https://mixflow.ai/blog/ai-pair-programming-tools-showdown-september-2025-4-solutions-for-enterprise-development/)
|
||||||
|
- [8 Best AI Coding Tools (n8n)](https://blog.n8n.io/best-ai-for-coding/) (апрель 2025)
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 704 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 623 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 603 KiB |
|
|
@ -391,4 +391,85 @@ After validation PASS → @writer creates Draft using corrected structure
|
||||||
Первый агент, который увидит это сообщение должен учесть этот файл в нашем фреймворке и добавить референсы на него куда нужно.
|
Первый агент, который увидит это сообщение должен учесть этот файл в нашем фреймворке и добавить референсы на него куда нужно.
|
||||||
Когда дойдем до генерации изображений @image-agent - тебе нужно будет найти соответствующие TODO и создать инфографику основываясь на данных из этого файла.
|
Когда дойдем до генерации изображений @image-agent - тебе нужно будет найти соответствующие TODO и создать инфографику основываясь на данных из этого файла.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2026-01-31 @seo — SEO Strategy & Series Planning
|
||||||
|
|
||||||
|
**Action:** Keyword research + series structure decision
|
||||||
|
|
||||||
|
**Research completed:**
|
||||||
|
- DataForSEO keyword research: ~$0.30 spent
|
||||||
|
- 40+ keywords tested for volume and difficulty
|
||||||
|
- Competitor analysis (dev.to articles about vibe coding anniversary)
|
||||||
|
|
||||||
|
**Key findings:**
|
||||||
|
|
||||||
|
| Keyword | Volume | Comp | Notes |
|
||||||
|
|---------|--------|------|-------|
|
||||||
|
| vibe coding | 90,500 | MED | Primary umbrella |
|
||||||
|
| what is vibe coding | 40,500 | LOW | 🔥 Great ratio! |
|
||||||
|
| vibe coding meaning | 9,900 | LOW | Informational |
|
||||||
|
| vibecoding (слитно) | 2,900 | MED | Separate keyword! |
|
||||||
|
| spec driven development | 1,300 | LOW | 🚀 Explosive growth |
|
||||||
|
| how to vibe code | 1,000 | MED | Tutorial intent |
|
||||||
|
| human in the loop ai | 880 | LOW | Part 3 target |
|
||||||
|
| ai pair programming | 720 | LOW | Part 2 target |
|
||||||
|
| enterprise vibe coding | 30→110 | MED | 🚀 Growing! |
|
||||||
|
| vibe coding vs agentic coding | 50→90 | LOW | 🚀 Growing! |
|
||||||
|
| beyond vibe coding | 110 | MED | Series branding |
|
||||||
|
|
||||||
|
**Strategic decisions:**
|
||||||
|
|
||||||
|
1. **Split into 3 parts** — dev.to series "Beyond Vibe Coding"
|
||||||
|
- More "activity signals" for account warmup
|
||||||
|
- Each part targets different keywords
|
||||||
|
- 5 min read time optimal for dev.to engagement
|
||||||
|
|
||||||
|
2. **Titles:**
|
||||||
|
- Part 1: `What Is Vibe Coding in 2026? One Year From Karpathy's Tweet`
|
||||||
|
- Part 2: `AI Pair Programming vs Agentic Coding: Two Extremes of Vibe Coding`
|
||||||
|
- Part 3: TBD (human in the loop ai + enterprise angle)
|
||||||
|
|
||||||
|
3. **Publication timing:**
|
||||||
|
- Part 1: Monday Feb 2, 2026 (exact anniversary!)
|
||||||
|
- Parts 2-3: 4-5 days apart
|
||||||
|
|
||||||
|
4. **Anniversary hook:** Feb 2, 2026 = exactly 1 year from Karpathy's tweet
|
||||||
|
- News value for first-day engagement
|
||||||
|
- Potential for social amplification
|
||||||
|
|
||||||
|
**Competitor landscape:**
|
||||||
|
- "The Vibe Coding Hangover" already on dev.to (negative angle)
|
||||||
|
- Our differentiation: practical methods survey + honest experience (positive)
|
||||||
|
|
||||||
|
**Changes made:**
|
||||||
|
- Reformatted intro paragraph for SEO (first 100 words optimized)
|
||||||
|
- Added "what is vibe coding" question hook
|
||||||
|
|
||||||
|
**SEO notes for text optimization:**
|
||||||
|
|
||||||
|
**Part 1:**
|
||||||
|
- ✅ "spec-driven development" — вынести в первые 100 слов intro
|
||||||
|
- ✅ "how to vibe code" — вставить органично в раздел vibe coding, например: "So how to vibe code properly? First, understand when it works..."
|
||||||
|
- ✅ "vibecoding" (слитно) — упомянуть один раз в тексте для keyword coverage
|
||||||
|
|
||||||
|
**Part 2:**
|
||||||
|
- "vibe coding vs agentic coding" — сделать H2 или использовать в тексте
|
||||||
|
- "ai pair programming" — уже есть как название раздела
|
||||||
|
|
||||||
|
**Part 3:**
|
||||||
|
- "human in the loop ai" — уже есть как раздел
|
||||||
|
- "enterprise vibe coding" — добавить в контекст production/enterprise usage
|
||||||
|
|
||||||
|
**File structure decision:**
|
||||||
|
- Keep all files in current folder
|
||||||
|
- Split text into: text-p1.md, text-p2.md, text-p3.md
|
||||||
|
|
||||||
|
**For next agent:**
|
||||||
|
- @writer: split text.md into 3 parts per structure above
|
||||||
|
- Each part needs self-contained intro (brief context link to series)
|
||||||
|
- Part 1 intro already optimized for SEO
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,57 +1,55 @@
|
||||||
# 1 Год Вайбкодинга и за его пределами
|
# 1 Год Вайбкодинга и за его пределами
|
||||||
|
|
||||||
Ровно год назад 2 февраля 2025 года Андрей Карпати опубликовал свой твит про вайбкодинг.
|
Ровно год назад, 2 февраля 2025 года, Андрей Карпати опубликовал свой твит про вайбкодинг.
|
||||||
|
|
||||||
[TODO: найти тот твит и заэмбедить его статью на dev.to]
|
https://x.com/karpathy/status/1886192184808149383
|
||||||
|
|
||||||
Термин "Вайбкодинг" стал невероятно популярным термином для обозначения разработки с помощью AI. В 2025 "vibe coding" стал словом года по версии [Collins Dictionary](TODO: вставь сюда актуальную ссылку). Уже появляются производные — vibe design, vibe ops, vibe anything и так далее.
|
Термин «Вайбкодинг» стал невероятно популярным для обозначения разработки с помощью AI. В 2025 году "vibe coding" стал [словом года по версии Collins Dictionary](https://www.collinsdictionary.com/us/woty). Уже появляются производные — vibe design, vibe ops, vibe anything и так далее.
|
||||||
|
|
||||||
Интересно, что когда Андрей Карпаты впервые использовал этот термин, он имел в виду вполне конкретный способ взаимодействия: пишешь агенту что нужно сделать и оцениваешь результат. Ключевой "вайб" этого процесса в том, что разработчик не вникает в то, КАК написан код. Если что-то не работает — просто пишешь следующее задание, и так по кругу. Сейчас, говоря "вайбкодинг", многие подразумевают вообще любую разработку с помощью AI. Хотя, будем честны — во многих случаях это действительно именно так и работает.
|
Интересно, что когда Андрей Карпати впервые использовал этот термин, он имел в виду вполне конкретный способ взаимодействия: пишешь агенту что нужно сделать и оцениваешь результат. Ключевой «вайб» этого процесса в том, что разработчик не вникает в то, КАК написан код. Если что-то не работает — просто пишешь следующее задание, и так по кругу. Сейчас, говоря «вайбкодинг», многие подразумевают вообще любую разработку с помощью AI. Хотя, будем честны — во многих случаях это действительно именно так и работает.
|
||||||
|
|
||||||
[IMAGE: вставить картинку - комикс. разговаривают два разработчика, молодой и старый. Молодой спрашивает старого, "а правда что раньше вы сначала разбирались в коде, а только потом делали фичи?". Старый отвечает: "конечно, ведь чтобы сделать фичу, нужно разобраться как работает существующий код. А у тебя не так?". Молодой говорит: "Нет, я сначала делаю фичу и только когда она полностью заработает, забираюсь как этот код устроен"]
|
[IMAGE: комикс. Разговаривают два разработчика, молодой и старый. Молодой спрашивает старого: «А правда, что раньше вы сначала разбирались в коде, а только потом делали фичи?» Старый отвечает: «Конечно, ведь чтобы сделать фичу, нужно разобраться как работает существующий код. А у тебя не так?» Молодой говорит: «Нет, я сначала делаю фичу и только когда она полностью заработает, разбираюсь как этот код устроен»]
|
||||||
|
|
||||||
Но признайтесь: соглашаясь с изменениями агента не глядя, вы ловите себя на мысли — а это вообще корректно сделано, можно ли доверять тому что нагенерировала LLM не глядя? Когда коллега говорит, что навайбкодил какой-то функционал — вы представляете продуманную архитектуру или скорее "как-то работает"? Вайбкодинг — это читерство и безответственность или вполне профессиональный подход?
|
Но признайтесь: соглашаясь с изменениями агента не глядя, вы ловите себя на мысли — а это вообще корректно сделано, можно ли доверять тому, что нагенерировала LLM, не глядя? Когда коллега говорит, что навайбкодил какой-то функционал — вы представляете продуманную архитектуру или скорее «как-то работает»? Вайбкодинг — это читерство и безответственность или вполне профессиональный подход?
|
||||||
|
|
||||||
Что я знаю наверняка — AI-разработка уже с нами, как её не называй. По данным Stack Overflow 2024, 76% разработчиков используют или планируют использовать AI-инструменты. Примерно треть senior-разработчиков — с 10+ годами опыта — генерируют больше половины своего кода с помощью AI.
|
Что я знаю наверняка — AI-разработка уже с нами, как её ни называй. По данным Stack Overflow 2024, 76% разработчиков используют или планируют использовать AI-инструменты. Примерно треть senior-разработчиков — с 10+ годами опыта — генерируют больше половины своего кода с помощью AI.
|
||||||
|
|
||||||
[IMAGE: вставить инфографику с прогрессом использования AI разработчиками, доверием к AI, и производительностью]
|
[IMAGE: инфографика с прогрессом использования AI разработчиками, доверием к AI и производительностью]
|
||||||
|
|
||||||
Давайте разберёмся, что именно мы можем делать с помощью AI. Существуют разные подходы, дающие больше контроля на разных стадиях работы. Выбрать подходящий и применить его осознанно — это и есть профессиональный подход. В этой статье я расскажу об существующих подходах AI разработки, которые я применял в своей практике и дам свои честные комментарии.
|
Давайте разберёмся, что именно мы можем делать с помощью AI. Существуют разные подходы, дающие больше контроля на разных стадиях работы. Выбрать подходящий и применить его осознанно — это и есть профессиональный подход. В этой статье я расскажу о существующих подходах AI-разработки, которые я применял на практике, и дам свои честные комментарии.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Вайб-кодинг: точка входа
|
## Вайб-кодинг: точка входа
|
||||||
|
|
||||||
[IMAGE: комикс. Молодой разработчик с кофе в руке сидит за своим рабочим местом. потом кофе проливается на клавиатуру. разработчик надевает гарнитуру с микрофоном и говорит "ок, я теперь вайбкодер"
|
[IMAGE: комикс. Молодой разработчик с кофе в руке сидит за рабочим местом. Потом кофе проливается на клавиатуру. Разработчик надевает гарнитуру с микрофоном и говорит: «Ок, я теперь вайбкодер». Style: Cartoon/illustration, тёплые цвета, понятный девелоперский юмор]
|
||||||
Style: Cartoon/illustration стиль, тёплые цвета, понятный девелоперский юмор]
|
|
||||||
|
|
||||||
**Что это:**
|
**Что это:**
|
||||||
- Популяризировано Андреем Карпатым (февраль 2025)
|
- Популяризировано Андреем Карпати (февраль 2025)
|
||||||
- Итеративный промптинг пока код не заработает
|
- Итеративный промптинг пока код не заработает
|
||||||
- Никакого предварительного планирования, минимум спецификации
|
- Никакого предварительного планирования, минимум спецификации
|
||||||
- Доверяешь AI разобраться с деталями, фиксишь проблемы по мере появления
|
- Доверяешь AI разобраться с деталями, фиксишь проблемы по мере появления
|
||||||
|
|
||||||
Вайб-кодинг — это офигенный подход. Правда!. Я сам им часто пользуюсь. Отлично работает для некритичных фич, dev-инструментов, прототипов, экспериментов.
|
Вайб-кодинг — это отличный подход. Правда. Я сам им часто пользуюсь. Он прекрасно работает для некритичных фич, dev-инструментов, прототипов, экспериментов.
|
||||||
|
|
||||||
Когда я его использую?
|
Когда я его использую?
|
||||||
- когда результат работы легко оценить визуально
|
- Когда результат работы легко оценить визуально
|
||||||
- когда скоуп работы очевидно локализован в одном или минимум файлов
|
- Когда скоуп работы очевидно локализован в одном или минимуме файлов
|
||||||
|
|
||||||
Смотрю ли я диф?
|
Смотрю ли я диф?
|
||||||
- если честно, то почти всегда. Но я не проверяю каждую строчку, а быстро оцениваю, какие файлы были изменены, что было добавлено/удалено. Это позволяет быстро отлавливать моменты, когда AI "ушел не туда"
|
- Если честно, почти всегда. Но я не проверяю каждую строчку, а быстро оцениваю, какие файлы были изменены, что было добавлено или удалено. Это позволяет быстро отлавливать моменты, когда AI «ушёл не туда».
|
||||||
|
|
||||||
Получается ли говнокод? - Возможно, но есть несколько простых способов улучшить качество:
|
Получается ли говнокод? Возможно, но есть несколько простых способов улучшить качество:
|
||||||
- описывайте код стайл в CLAUDE.md (или AGENTS.MD)
|
- описывайте код-стайл в CLAUDE.md (или AGENTS.md)
|
||||||
- описываете архитектуру нужной вам части
|
- описывайте архитектуру нужной части
|
||||||
- давайте примеры существующих аналогичных фичей, которые можно использовать как аналоги
|
- давайте примеры существующих аналогичных фичей как образец
|
||||||
- просите агента запускать typecheck, linter и prettier по завершению работы
|
- просите агента запускать typecheck, linter и prettier по завершению работы
|
||||||
|
|
||||||
Важно: будьте аккуратны с безопастностью. Не используйте вайбкодинг на критической инфраструктуре. Особенно не используйте там, где нельзя легко откатить изменения. [TODO: сюда какуюто связку надо вставить] 27% компаний запретили AI-инструменты как минимум временно из-за проблем с приватностью и безопасностью. Apple ограничила ChatGPT и Copilot. Amazon забанил ChatGPT после того, как обнаружил ответы, напоминающие внутренние данные. У Samsung сотрудник слил конфиденциальную информацию через ChatGPT.
|
С другой стороны, есть и подводные камни. 27% компаний запретили AI-инструменты как минимум временно из-за проблем с приватностью и безопасностью. Apple ограничила ChatGPT и Copilot. Amazon забанил ChatGPT после того, как обнаружил ответы, напоминающие внутренние данные. У Samsung сотрудник слил конфиденциальную информацию через ChatGPT. Будьте аккуратны с безопасностью. Не используйте вайбкодинг на критической инфраструктуре. Особенно там, где нельзя легко откатить изменения.
|
||||||
|
|
||||||
[IMAGE: простая инфографика DO и DON'T вайбкодинга]
|
[IMAGE: простая инфографика DO и DON'T вайбкодинга]
|
||||||
|
|
||||||
Вы спросите, да это вообще легально использовать вайбкодинг в работе? Абсолютно!
|
Вы спросите, да это вообще легально использовать вайбкодинг в работе? Абсолютно! Во-первых, вы экономите значительные силы на простых вещах. Ресурсы вашего мозга ограничены — делегируйте AI простые задачи и рутину. Он сделает это быстрее, а вы сможете потратить фокус на более важные вещи. Во-вторых, существуют техники за пределами вайбкодинга, значительно повышающие качество и надёжность разработки.
|
||||||
По первых вы экономите значительные силы на простых вещах. Ресурсы вашего мозга ограничены, делегируйте AI простые задачи и рутину. Он это сделает быстрее, а вы сможете потратить свой фокус на более важные вещи. Во вторых, используйте техники за пределами вайбкодинга, значительно повышающие качество и надежность разработки.
|
|
||||||
|
|
||||||
Так что это за методы?
|
Так что это за методы?
|
||||||
|
|
||||||
|
|
@ -59,14 +57,14 @@ Style: Cartoon/illustration стиль, тёплые цвета, понятны
|
||||||
|
|
||||||
## Spec-Driven Development: сначала структура
|
## Spec-Driven Development: сначала структура
|
||||||
|
|
||||||
[IMAGE: комикс. две картинки. один молодой разработчик откидывается на стул и довольно хвастается: "смотри, благодаря моему промпту AI за 15 минут сгенерировал идеальный код для новой фичи". Второй молодой разработчик ему: "ты потратил 6 часов, чтобы написать этот промпт"]
|
[IMAGE: комикс. Две картинки. Один молодой разработчик откидывается на стул и довольно хвастается: «Смотри, благодаря моему промпту AI за 15 минут сгенерировал идеальный код для новой фичи». Второй молодой разработчик ему: «Ты потратил 6 часов, чтобы написать этот промпт»]
|
||||||
|
|
||||||
**Credentials:**
|
**Credentials:**
|
||||||
- Формализовано командой GitHub Engineering (GitHub Spec Kit)
|
- Формализовано командой GitHub Engineering ([GitHub Spec Kit](https://github.com/github/spec-kit), сентябрь 2025)
|
||||||
- Стало одной из ключевых практик AI-разработки 2025 года (Thoughtworks Technology Radar)
|
- Вошло в [Thoughtworks Technology Radar](https://www.thoughtworks.com/en-us/radar) Volume 33 (ноябрь 2025)
|
||||||
- Запущено несколько профессиональных инструментов: AWS Kiro, GitHub Spec Kit, Tessl Framework
|
- Профессиональные инструменты: [AWS Kiro](https://aws.amazon.com/startups/prompt-library/kiro-project-init) (public preview июль 2025), [Tessl Framework](https://tessl.io/blog/tessl-launches-spec-driven-framework-and-registry/) (closed beta сентябрь 2025)
|
||||||
- Используется: пользователями Claude Code, enterprise-командами, GitHub Copilot Workspace
|
- Community-решения: [BMAD Method](https://recruit.group.gmo/engineer/jisedai/blog/the-bmad-method-a-framework-for-spec-oriented-ai-driven-development/) (21 специализированный агент), [OpenSpec](https://mcpmarket.com/server/openspec) (lightweight CLI)
|
||||||
[TODO: вставить больше деталей из спецификации из assets/beyond-vibe-coding/spec-driven-dev.md]
|
- Используется: Claude Code, enterprise-команды, GitHub Copilot Workspace
|
||||||
|
|
||||||
**Как это работает:**
|
**Как это работает:**
|
||||||
|
|
||||||
|
|
@ -74,34 +72,31 @@ Style: Cartoon/illustration стиль, тёплые цвета, понятны
|
||||||
|
|
||||||
Человек фокусируется на ЧТО. AI разбирается с КАК.
|
Человек фокусируется на ЧТО. AI разбирается с КАК.
|
||||||
|
|
||||||
По факту это мой основной способ работы над крупными проектами. Особенно для добавления нового раздела или функционала которого еще не было в проекте. Время на написание спеки часто довольно значительно. Однако это дает хороший контроль - современные модели довольно неплохо следуют инструкциям. Ты можешь варьировать степень свободы для агента: хочешь задаешь сам названия файлов и папок, а хочешь только даешь оутлайн решения.
|
По факту это мой основной способ работы над крупными проектами. Особенно для добавления нового раздела или функционала, которого ещё не было в проекте. Время на написание спеки часто довольно значительно. Однако это даёт хороший контроль — современные модели довольно неплохо следуют инструкциям. Ты можешь варьировать степень свободы для агента: хочешь — задаёшь сам названия файлов и папок, а хочешь — только даёшь аутлайн решения.
|
||||||
|
|
||||||
После того как потратил полдня на спецификацию, ты затем смотришь как Claude Code заканчивает имплементацию за 10 минут. Кажется несправедливым, но результаты солидные.
|
После того как потратил полдня на спецификацию, ты смотришь как Claude Code заканчивает имплементацию за 10 минут. Кажется несправедливым, но результаты солидные.
|
||||||
|
|
||||||
Спека становится референсом для будущей работы. Месяцы спустя новая сессия начинается с "прочитай спеку, найди код" — и агент сразу имеет полный контекст.
|
Спека становится референсом для будущей работы. Месяцы спустя новая сессия начинается с «прочитай спеку, найди код» — и агент сразу имеет полный контекст.
|
||||||
|
|
||||||
**Сложности в долгосрочной перспективе:**
|
**Сложности в долгосрочной перспективе:**
|
||||||
|
|
||||||
Чтобы продолжить разрабатывать дальше спустя какое-то время необходимо держать документацию в актуальном состоянии. Спеки часто начинают расходятся с реальным кодом даже на этапе изначальной имплементации. Детали меняется, при рефакторингах пути переименовываются. Поддержание спеки актуальной добавляет когнитивную нагрузку. Моё решение: коммитить изменения спеки вместе с изменениями кода. Относиться к документации как к части кодовой базы. Давайте AI агенту инструкцию всегда обновлять документ, после выполнения каких либо действий.
|
Чтобы продолжить разработку спустя какое-то время, необходимо держать документацию в актуальном состоянии. Спеки часто начинают расходиться с реальным кодом даже на этапе изначальной имплементации. Детали меняются, при рефакторингах пути переименовываются. Поддержание спеки актуальной добавляет когнитивную нагрузку. Моё решение: коммитить изменения спеки вместе с изменениями кода. Относиться к документации как к части кодовой базы. Давать AI-агенту инструкцию всегда обновлять документ после выполнения задачи.
|
||||||
|
|
||||||
**Pro tip:**
|
**Pro tip:**
|
||||||
|
|
||||||
Используй Claude Desktop для разработки спеки. Дайте ему filesystem MCP чтобы он мог посмотреть ваш текущий код. Используйте возможности веб поиска и Research, чтоб выявить актуальную документацию и лучшие практики. Брейнштормите решение совместно, определите архитектуру, ПОТОМ потом попроси Клода спеку. Намного лучше, чем писать спеку в одиночку. Делай ревью и проси внести изменения.
|
Используй Claude Desktop для разработки спеки: дай ему Filesystem MCP для доступа к коду, включи веб-поиск для актуальной документации. Брейнштормь решение вместе с AI, определи архитектуру — и только потом проси написать спеку.
|
||||||
я как правило создаю сопутсвующий Project в Claude Desktop, описываю в project instruction ключевые требования к проекту. Claude Desktop по моим ощущениям дает лучший опыт для обсуждения и фокуса на определенной задаче.
|
|
||||||
[TODO: этот протип нужно сократить раза в 2. оставить только сухую конкретную информацию]
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Agentic Coding: высокая автономность
|
## Agentic Coding: высокая автономность
|
||||||
|
|
||||||
[IMAGE: комикс. женщина спрашивает у строителя: "а вы уверены, что ваши автономные андроиды подходят для строительства нашей детской площадки?" Она показывает ему схему где нарисована детская качеля и карусель. строитель в каске отвечает: "О да, я дал им четкие инструкции и свободу действий на 24 часа. Давайте посмотрим как они справились". финальная картинка: "Женщина и строитель стоят в недоумении разинув рот, глядя на мега развлекательный футуристический центр"]
|
[IMAGE: комикс. Женщина спрашивает у строителя: «А вы уверены, что ваши автономные андроиды подходят для строительства нашей детской площадки?» Она показывает ему схему, где нарисована детская качеля и карусель. Строитель в каске отвечает: «О да, я дал им чёткие инструкции и свободу действий на 24 часа. Давайте посмотрим как они справились». Финальная картинка: женщина и строитель стоят в недоумении, разинув рот, глядя на мега-футуристический развлекательный центр]
|
||||||
|
|
||||||
**Credentials:**
|
**Credentials:**
|
||||||
- Задокументировано в академических исследованиях: arXiv 2508.11126 (август 2025), arXiv 2512.14012 (декабрь 2025)
|
- Академические исследования: [arXiv 2508.11126](https://arxiv.org/abs/2508.11126) «AI Agentic Programming: A Survey» (UC San Diego, Carnegie Mellon, август 2025), [arXiv 2512.14012](https://arxiv.org/abs/2512.14012) «Professional Software Developers Don't Vibe, They Control» (University of Michigan, декабрь 2025)
|
||||||
- Вариант Ralph Loop создан Джеффри Хантли (май 2025)
|
- Ralph Loop создан Geoffrey Huntley (публичный запуск май 2025, [viral wave январь 2026](https://venturebeat.com/technology/how-ralph-wiggum-went-from-the-simpsons-to-the-biggest-name-in-ai-right-now))
|
||||||
- Инструменты: Claude Code, Cursor Composer, агентные режимы GitHub Copilot Workspace
|
- Инструменты: Claude Code, [Cursor 2.0 Composer](https://cursor.com/blog/2-0) (октябрь 2025, до 8 параллельных агентов), [GitHub Copilot Agent Mode](https://github.blog/ai-and-ml/github-copilot/agent-mode-101-all-about-github-copilots-powerful-mode/) (preview февраль 2025)
|
||||||
- Ralph Loop стал вирусным в январе 2026 (публикация VentureBeat)
|
- Официальный [ralph-wiggum плагин](https://ralph-wiggum.ai) от Anthropic (Boris Cherny)
|
||||||
[TODO: расширить данными из спеки assets/beyond-vibe-coding/agentic-coding.md]
|
|
||||||
|
|
||||||
**Что это:**
|
**Что это:**
|
||||||
|
|
||||||
|
|
@ -109,38 +104,39 @@ Style: Cartoon/illustration стиль, тёплые цвета, понятны
|
||||||
|
|
||||||
Отличие от вайб-кодинга: агентный кодинг систематичен. Агент создаёт план, выполняет его методично, может корректировать курс. Вайб-кодинг — реактивный промптинг без структуры.
|
Отличие от вайб-кодинга: агентный кодинг систематичен. Агент создаёт план, выполняет его методично, может корректировать курс. Вайб-кодинг — реактивный промптинг без структуры.
|
||||||
|
|
||||||
Мое отношение? Пока что скептично.
|
Моё отношение? Пока что скептичное.
|
||||||
|
|
||||||
Я бы хотел верить в такой подход. Идея длительных автономных сессий звучит потрясающе. Но вот мой вопрос: какие задачи оправдывают столько автономной работы?
|
Я бы хотел верить в такой подход. Идея длительных автономных сессий звучит потрясающе. Но вот мой вопрос: какие задачи оправдывают столько автономной работы?
|
||||||
|
|
||||||
Написание детальной спеки занимает у меня больше времени, чем её выполнение. Если Claude Code заканчивает за 10 минут после того, как я потратил часы на спецификацию, зачем мне 14 часов автономности?
|
Написание детальной спеки занимает у меня больше времени, чем её выполнение. Если Claude Code заканчивает за 10 минут после того, как я потратил часы на спецификацию, зачем мне 14 часов автономности?
|
||||||
|
|
||||||
Я скептичен насчёт применений в моих проектах. Возможно это работает для определённых доменов — большие рефакторинги, обширное тестирование, генерация документации по огромным кодовым базам? Но даже тут я не представляю чтобы Claude Code не справился за час работы.
|
Я скептичен насчёт применений в моих проектах. Возможно это работает для определённых доменов — большие рефакторинги, обширное тестирование, генерация документации по огромным кодовым базам? Но даже тут я не представляю, чтобы Claude Code не справился за час работы.
|
||||||
|
|
||||||
**Крайность Ralph Loop:**
|
**Крайность Ralph Loop:**
|
||||||
|
|
||||||
Названо в честь Ральфа Виггума из Симпсонов. Концепция: даёшь агенту задачу, уходишь, возвращаешься к готовой работе. Джеффри Хантли сообщал о 14-часовых автономных сессиях. Anthropic даже выпустил официальный плагин `ralph-wiggum` от Бориса Черни.
|
Названо в честь Ральфа Виггума из Симпсонов. Концепция: даёшь агенту задачу, уходишь, возвращаешься к готовой работе. Geoffrey Huntley сообщал о 14-часовых автономных сессиях.
|
||||||
|
|
||||||
Если вы нашли отличные применения для Ralph Loop, мне правда интересно. Поделитесь своими победами в комментариях.
|
Если вы нашли отличные применения для Ralph Loop, мне правда интересно. Поделитесь своими победами в комментариях.
|
||||||
|
|
||||||
|
|
||||||
**Реальность с permissions:**
|
**Реальность с permissions:**
|
||||||
|
|
||||||
Агентный кодинг упирается в стену на практике: permissions. Claude Code спрашивает одобрение на каждую запись файла, API-вызов, терминальную команду. Полностью ломает поток. Убивает обещание автономности.
|
Агентный кодинг упирается в стену на практике: permissions. Claude Code спрашивает одобрение на каждую запись файла, API-вызов, терминальную команду. Полностью ломает поток. Убивает обещание автономности.
|
||||||
|
|
||||||
Мои обходные пути: прошу Claude добавить все MCP-инструменты в `.claude/settings.json` проактивно — это уменьшает прерывания. Иногда запускаю с `--dangerously-skip-permissions`, но поглядываю что происходит.
|
Мои обходные пути: прошу Claude добавить все MCP-инструменты в `.claude/settings.json` проактивно — это уменьшает прерывания. Иногда запускаю с `--dangerously-skip-permissions`, но поглядываю что происходит.
|
||||||
|
|
||||||
Старайтесь организовать окружение так чтобы агент не смог сделать ничего такого, что git reset не смог бы исправить. Это проблема, которая явно ждет своего решения. Нам нужны более удобные способы контроля за действиями coding агентов.
|
Старайтесь организовать окружение так, чтобы агент не смог сделать ничего такого, что git reset не смог бы исправить. Это проблема, которая явно ждёт своего решения. Нам нужны более удобные способы контроля за действиями coding-агентов.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## AI Pair Programming: работаем вместе
|
## AI Pair Programming: работаем вместе
|
||||||
|
|
||||||
|
[IMAGE: комикс. Программист с наушниками сидит за компьютером. Из наушников вылетают подсказки AI в виде пузырей: «может быть map?», «добавь проверку на null», «тут лучше async». Программист смотрит на них с раздражением. Подпись: «Когда AI знает лучше, но ты хочешь сделать по-своему»]
|
||||||
|
|
||||||
**Credentials:**
|
**Credentials:**
|
||||||
- Официальное позиционирование GitHub: "Your AI pair programmer" (маркетинг Copilot с 2021)
|
- Официальное позиционирование GitHub: «Your AI pair programmer» (маркетинг Copilot с 2021)
|
||||||
- Документация Microsoft Learn
|
- Документация Microsoft Learn
|
||||||
- Инструменты: GitHub Copilot, Cursor, Windsurf
|
- Инструменты: GitHub Copilot, Cursor, Windsurf
|
||||||
- 720 поисковых запросов в месяц по "ai pair programming"
|
- 720 поисковых запросов в месяц по «ai pair programming»
|
||||||
|
|
||||||
**Обещание:**
|
**Обещание:**
|
||||||
|
|
||||||
|
|
@ -154,8 +150,6 @@ AI как коллаборативный партнёр, а не просто а
|
||||||
|
|
||||||
Знаю, что многим разработчикам нравится. Просто не подходит под мой воркфлоу.
|
Знаю, что многим разработчикам нравится. Просто не подходит под мой воркфлоу.
|
||||||
|
|
||||||
[IMAGE: todo: придумать тему для картинки]
|
|
||||||
|
|
||||||
**Где я нахожу настоящий pair programming:**
|
**Где я нахожу настоящий pair programming:**
|
||||||
|
|
||||||
Claude Desktop с хорошей системной инструкцией плюс Filesystem MCP для чтения реальных файлов проекта. Вот тогда я чувствую, что работаю С кем-то, кто понимает мою проблему и реально помогает её решить.
|
Claude Desktop с хорошей системной инструкцией плюс Filesystem MCP для чтения реальных файлов проекта. Вот тогда я чувствую, что работаю С кем-то, кто понимает мою проблему и реально помогает её решить.
|
||||||
|
|
@ -174,7 +168,7 @@ GitHub заявляет о 56% ускорении выполнения зада
|
||||||
|
|
||||||
## Human-in-the-Loop: стратегические чекпоинты
|
## Human-in-the-Loop: стратегические чекпоинты
|
||||||
|
|
||||||
[IMAGE: комикс. Роботы разговаривают друг с другом: "нам пора избавиться от этого кожаного мешка", другой робот подтверждает: "это точно, без него мы бы работал в 1024 раза быстрее". финальная картинка - большой круг роботов передающих коробки друг другу и среди них один человек]
|
[IMAGE: комикс. Роботы разговаривают друг с другом: «Нам пора избавиться от этого кожаного мешка». Другой робот подтверждает: «Это точно, без него мы бы работали в 1024 раза быстрее». Финальная картинка — большой круг роботов, передающих коробки друг другу, и среди них один человек]
|
||||||
|
|
||||||
**Credentials:**
|
**Credentials:**
|
||||||
- Atlassian Research: HULA framework (Human-Understanding Large Language Model Agents)
|
- Atlassian Research: HULA framework (Human-Understanding Large Language Model Agents)
|
||||||
|
|
@ -190,13 +184,13 @@ AI работает автономно МЕЖДУ чекпоинтами. Чел
|
||||||
|
|
||||||
**Permissions ≠ HITL:**
|
**Permissions ≠ HITL:**
|
||||||
|
|
||||||
Не путайте permissions с Human-in-the-Loop. Permissions слишком низкоуровневые. "Можно мне записать этот файл?" не говорит мне ничего о том, какую задачу сейчас решает агент.
|
Не путайте permissions с Human-in-the-Loop. Permissions слишком низкоуровневые. «Можно мне записать этот файл?» не говорит мне ничего о том, какую задачу сейчас решает агент.
|
||||||
|
|
||||||
Настоящий HITL — это Planning Mode. Агент показывает план: "вот что я сделаю, эти файлы изменятся, вот ожидаемый результат." Это контроль на уровне решений.
|
Настоящий HITL — это Planning Mode. Агент показывает план: «вот что я сделаю, эти файлы изменятся, вот ожидаемый результат». Это контроль на уровне решений.
|
||||||
|
|
||||||
Проблема с текущими агентами: они не понимают КОГДА нужно остановиться и спросить. Редко попадают в правильный момент. Либо слишком много автономности (уходит не туда), либо слишком много прерываний (ломает поток).
|
Проблема с текущими агентами: они не понимают КОГДА нужно остановиться и спросить. Редко попадают в правильный момент. Либо слишком много автономности (уходит не туда), либо слишком много прерываний (ломает поток).
|
||||||
|
|
||||||
Область для улучшения в будущем: агенты, которые знают когда они не уверены и должны проконсультироваться с человеком. Как ответы "я не знаю" — текущие модели не очень хороши в этом на практике.
|
Область для улучшения в будущем: агенты, которые знают когда они не уверены и должны проконсультироваться с человеком. Как ответы «я не знаю» — текущие модели не очень хороши в этом на практике.
|
||||||
|
|
||||||
**Когда использовать:**
|
**Когда использовать:**
|
||||||
|
|
||||||
|
|
@ -211,7 +205,7 @@ AI работает автономно МЕЖДУ чекпоинтами. Чел
|
||||||
**Credentials:**
|
**Credentials:**
|
||||||
- Адаптировано из традиционного TDD (Кент Бек)
|
- Адаптировано из традиционного TDD (Кент Бек)
|
||||||
- Модернизировано для эры AI: блог Qodo.ai, гайд Builder.io, GitHub Blog (май 2025)
|
- Модернизировано для эры AI: блог Qodo.ai, гайд Builder.io, GitHub Blog (май 2025)
|
||||||
- Команды, ориентированные на качество, enterprise продакшен-код
|
- Команды, ориентированные на качество, enterprise production-код
|
||||||
|
|
||||||
**Как это работает:**
|
**Как это работает:**
|
||||||
|
|
||||||
|
|
@ -219,7 +213,7 @@ AI работает автономно МЕЖДУ чекпоинтами. Чел
|
||||||
|
|
||||||
Цикл Red → Green → Refactor, но AI занимается имплементацией. Тесты автоматически ловят ошибки AI. Тесты обеспечивают верификацию без человеческой проверки каждой строки.
|
Цикл Red → Green → Refactor, но AI занимается имплементацией. Тесты автоматически ловят ошибки AI. Тесты обеспечивают верификацию без человеческой проверки каждой строки.
|
||||||
|
|
||||||
[IMAGE: комикс. Первый разработчик: "что ты делаешь сейчас?". Второй: "я разрабатываю универсальные тесты, чтобы проверять написание unit тестов нашими coding агентами". Первый: "ты это делаешь сам?". Второй: "нет, я дал задачу автономному AI агенту"]
|
[IMAGE: комикс. Первый разработчик: «Что ты делаешь сейчас?» Второй: «Я разрабатываю универсальные тесты, чтобы проверять написание unit-тестов нашими coding-агентами». Первый: «Ты это делаешь сам?» Второй: «Нет, я дал задачу автономному AI-агенту»]
|
||||||
|
|
||||||
**Тесты как спецификация:**
|
**Тесты как спецификация:**
|
||||||
|
|
||||||
|
|
@ -237,7 +231,7 @@ AI работает автономно МЕЖДУ чекпоинтами. Чел
|
||||||
|
|
||||||
**Критическое предупреждение:**
|
**Критическое предупреждение:**
|
||||||
|
|
||||||
AI-написанные тесты требуют человеческой проверки. Я видел как агенты писали "проходящие" тесты используя замоканные запросы — тест проходит, код сломан. Тест верифицировал синтаксис, а не поведение.
|
AI-написанные тесты требуют человеческой проверки. Я видел как агенты писали «проходящие» тесты, используя замоканные запросы — тест проходит, код сломан. Тест верифицировал синтаксис, а не поведение.
|
||||||
|
|
||||||
Правильные тесты = солидный фундамент. Плохие тесты = ложная уверенность, которая разрушает будущую работу.
|
Правильные тесты = солидный фундамент. Плохие тесты = ложная уверенность, которая разрушает будущую работу.
|
||||||
|
|
||||||
|
|
@ -248,11 +242,9 @@ AI-написанные тесты требуют человеческой пр
|
||||||
## Заключение
|
## Заключение
|
||||||
|
|
||||||
Что в итоге обычно использую я:
|
Что в итоге обычно использую я:
|
||||||
Dev-инструменты и эксперименты: вайб-кодинг работает нормально.
|
- Dev-инструменты и эксперименты: вайб-кодинг работает нормально.
|
||||||
Продакшен-фичи: spec-driven с Planning Mode.
|
- Продакшен-фичи: spec-driven с Planning Mode.
|
||||||
Критические системы: TDD плюс обширный ревью.
|
- Критические системы: TDD плюс обширный ревью.
|
||||||
Исследования и изучение: Claude Desktop как настоящий pair programmer.
|
- Исследования и изучение: Claude Desktop как настоящий pair programmer.
|
||||||
|
|
||||||
Твой подход может быть другим. Если ты делаешь что-то по-другому — другие инструменты, другие подходы, другие комбинации — поделись своими победами в комментариях. Что работает для тебя как инженера?
|
Твой подход может быть другим. Если ты делаешь что-то по-другому — другие инструменты, другие подходы, другие комбинации — поделись своими победами в комментариях. Что работает для тебя как инженера?
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,67 +1,69 @@
|
||||||
# Beyond Vibe Coding: Professional AI Development Methodologies
|
# What Is Vibe Coding in 2026? One Year From Karpathy's Tweet
|
||||||
|
|
||||||
Collins Dictionary named "vibe coding" their Word of the Year for 2025. Finally, we have a term for that thing we all do — prompting AI until the code works, fixing issues as they pop up, trusting the model to handle the details.
|
What is vibe coding in 2026? Exactly one year ago — February 2, 2025 — Andrej Karpathy posted the tweet that started it all. The term became Collins Dictionary's Word of the Year. But here's the thing: what Karpathy meant and what "vibe coding" (or "vibecoding" as some write it) means now are two different things.
|
||||||
|
|
||||||
I remember when vibe coding meant something different. Now the term is everywhere, and that's both good and bad.
|
https://x.com/karpathy/status/1886192184808149383
|
||||||
|
|
||||||
Good because it captured a real phenomenon. Bad because it lumps all AI-assisted development into one bucket — and that bucket has negative connotations. Unprofessional. Unreliable. A toy for juniors who don't know better.
|
When Karpathy first used the term, he meant something specific. You tell the agent what to do and evaluate the result. The key "vibe" is that you don't dig into HOW the code is written. Something doesn't work? Just write the next prompt, and so on. Now "vibe coding" often means any AI-assisted development at all. Though honestly — in many cases, that's exactly how it works.
|
||||||
|
|
||||||
Here's the thing: 76% of developers are using or planning to use AI tools in their development process. That's not a niche anymore. That's mainstream adoption. So either three-quarters of the industry has collectively lost their minds, or the "AI coding is unprofessional" narrative misses something important.
|
We're already seeing derivatives — vibe design, vibe ops, vibe anything. But professional developers need more than vibes. That's where approaches like spec-driven development come in — and that's what this series is about.
|
||||||
|
|
||||||
[IMAGE: hero-spectrum.png]
|
[IMAGE: comic. Two developers talking, one young, one older. Young one asks: "Is it true that back in the day you'd understand the code first, then build features?" Older one: "Of course, you need to understand existing code to build a feature. You don't?" Young one: "No, I build the feature first, and only when it fully works do I figure out how the code is structured"]
|
||||||
Type: infographic
|
|
||||||
Concept: Visual spectrum showing progression from "Vibe Coding" on one end to "Professional AI Development" on other end, with methodology names (Spec-Driven, Agentic, HITL, TDD) positioned along the spectrum
|
|
||||||
Style: Clean, modern, abstract tech aesthetic with Banatie brand colors (Indigo #6366F1, Cyan #22D3EE, Dark #0F172A)
|
|
||||||
|
|
||||||
The real issue is the underlying question many developers face: "Can I use AI and still be a real engineer?"
|
But be honest: when you accept the agent's changes without looking, you catch yourself thinking — is this actually done right, can I trust what the LLM generated without reviewing it? When a colleague says they vibe-coded some functionality — do you picture thoughtful architecture or more like "somehow works"? Is vibe coding cheating and irresponsibility, or a perfectly professional approach?
|
||||||
|
|
||||||
Let me show you some data that might surprise you. About a third of senior developers — those with 10+ years of experience — generate over half their code with AI. Only 13% of junior developers do the same. That's a 2.5x difference.
|
What I know for certain — AI development is here, whatever we call it. According to Stack Overflow 2024, 76% of developers use or plan to use AI tools. About a third of senior developers — those with 10+ years of experience — generate more than half their code with AI.
|
||||||
|
|
||||||
Professionals use AI MORE than beginners, not less.
|
[IMAGE: infographic showing AI adoption progress among developers, trust in AI, and productivity metrics]
|
||||||
|
|
||||||
The difference isn't the tool. It's the methodology. And that's what this article is about — what comes after vibe coding. Six approaches that treat AI as a professional tool, not a magic wand.
|
Let's figure out what exactly we can do with AI. Different approaches exist, giving more control at different stages of work. Choosing the right one and applying it consciously — that's the professional approach. In this article, I'll cover existing AI development methodologies that I've used in practice, with my honest commentary.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Vibe Coding: The Entry Point
|
## Vibe Coding: The Entry Point
|
||||||
|
|
||||||
[IMAGE: meme-vibe-coder.png]
|
[IMAGE: comic. Young developer with coffee sitting at workstation. Then coffee spills on keyboard. Developer puts on headset with mic and says: "Ok, I'm a vibe coder now". Style: Cartoon/illustration, warm colors, relatable developer humor]
|
||||||
Type: meme / illustration
|
|
||||||
Concept: Developer at desk with AI chat open, relaxed pose, coffee in hand. Caption: "It works. I don't know why, but it works." Humorous but not mocking.
|
|
||||||
Style: Cartoon/illustration style, warm colors, relatable developer humor
|
|
||||||
|
|
||||||
**What it is:**
|
**What it is:**
|
||||||
- Popularized by Andrej Karpathy (February 2025)
|
- Popularized by Andrej Karpathy (February 2025)
|
||||||
- Collins Dictionary definition: "A method of computer programming that relies heavily on artificial intelligence"
|
|
||||||
- Iterative prompting until code works
|
- Iterative prompting until code works
|
||||||
- No upfront planning, minimal specification
|
- No upfront planning, minimal specification
|
||||||
- Trust AI to handle details, fix issues as they appear
|
- Trust AI to handle details, fix issues as they appear
|
||||||
|
|
||||||
Vibe coding isn't wrong. I've used it plenty. Works great for dev tools that won't hit production, prototypes, experiments, weekend projects where the stakes are low and you just want something working.
|
Vibe coding is a great approach. Really. I use it often myself. It works perfectly for non-critical features, dev tools, prototypes, experiments.
|
||||||
|
|
||||||
But here's the catch. It breaks down at scale. Hard to maintain. Impossible to hand off. No documentation, no structure, quality all over the place.
|
When do I use it?
|
||||||
|
- When the result is easy to evaluate visually
|
||||||
|
- When scope is obviously localized to one or a few files
|
||||||
|
|
||||||
And there's the security angle. Research shows 45-62% of AI-generated code contains security vulnerabilities. Georgetown CSET found that out of 21 AI-generated programs across 5 languages, only 5 were initially secure. Veracode and industry reports from late 2024 and 2025 confirm similar numbers.
|
Do I look at the diff?
|
||||||
|
- Honestly, almost always. But I don't check every line — I quickly assess which files changed, what was added or removed. This lets me catch moments when the AI "went off track" fast.
|
||||||
|
|
||||||
This isn't theoretical risk. 27% of companies have banned AI tools at least temporarily over privacy and security concerns. Apple restricted ChatGPT and Copilot. Amazon banned ChatGPT after discovering responses resembling internal data. Samsung had an employee leak confidential information through ChatGPT.
|
Does it produce bad code? Maybe, but there are simple ways to improve quality:
|
||||||
|
- describe code style in CLAUDE.md (or AGENTS.md)
|
||||||
|
- describe the architecture of the relevant part
|
||||||
|
- provide examples of existing similar features as templates
|
||||||
|
- ask the agent to run typecheck, linter, and prettier when done
|
||||||
|
|
||||||
Vibe coding isn't the problem. Using vibe coding for production systems without methodology — that's the problem.
|
On the other hand, there are pitfalls. 27% of companies have banned AI tools at least temporarily over privacy and security concerns. Apple restricted ChatGPT and Copilot. Amazon banned ChatGPT after discovering responses resembling internal data. Samsung had an employee leak confidential information through ChatGPT. Be careful with security. Don't use vibe coding on critical infrastructure. Especially where you can't easily roll back changes.
|
||||||
|
|
||||||
So what do professionals use instead?
|
[IMAGE: simple DO and DON'T infographic for vibe coding]
|
||||||
|
|
||||||
|
You might ask — is it even legitimate to use vibe coding at work? Absolutely! First, you save significant energy on simple things. Your brain resources are limited — delegate simple tasks and routine to AI. It'll do it faster, and you can spend your focus on more important stuff. Second, techniques exist beyond vibe coding that significantly improve development quality and reliability.
|
||||||
|
|
||||||
|
So what are these methods?
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Spec-Driven Development: Structure First
|
## Spec-Driven Development: Structure First
|
||||||
|
|
||||||
[IMAGE: infographic-spec-driven.png]
|
[IMAGE: comic. Two panels. First young developer leans back in chair, bragging: "Look, thanks to my prompt, AI generated perfect code for the new feature in 15 minutes." Second young developer: "You spent 6 hours writing that prompt"]
|
||||||
Type: infographic
|
|
||||||
Concept: Two-panel comparison. Left: "Vibe Coding" - chaotic arrows, back-and-forth prompting, question marks. Right: "Spec-Driven" - clean flow from Spec document → AI execution → Result. Shows time investment: 80% planning, 20% execution.
|
|
||||||
Style: Clean diagram, contrasting colors for the two approaches
|
|
||||||
|
|
||||||
**The credentials:**
|
**Credentials:**
|
||||||
- Formalized by GitHub Engineering Team (GitHub Spec Kit)
|
- Formalized by GitHub Engineering Team ([GitHub Spec Kit](https://github.com/github/spec-kit), September 2025)
|
||||||
- Emerged as one of 2025's key AI-assisted engineering practices (Thoughtworks Technology Radar)
|
- Featured in [Thoughtworks Technology Radar](https://www.thoughtworks.com/en-us/radar) Volume 33 (November 2025)
|
||||||
- Multiple professional tools launched: AWS Kiro, GitHub Spec Kit, Tessl Framework
|
- Professional tools: [AWS Kiro](https://aws.amazon.com/startups/prompt-library/kiro-project-init) (public preview July 2025), [Tessl Framework](https://tessl.io/blog/tessl-launches-spec-driven-framework-and-registry/) (closed beta September 2025)
|
||||||
|
- Community solutions: [BMAD Method](https://recruit.group.gmo/engineer/jisedai/blog/the-bmad-method-a-framework-for-spec-oriented-ai-driven-development/) (21 specialized agents), [OpenSpec](https://mcpmarket.com/server/openspec) (lightweight CLI)
|
||||||
- Used by: Claude Code users, enterprise teams, GitHub Copilot Workspace
|
- Used by: Claude Code users, enterprise teams, GitHub Copilot Workspace
|
||||||
|
|
||||||
**How it works:**
|
**How it works:**
|
||||||
|
|
@ -70,71 +72,67 @@ Write detailed specification BEFORE code. Spec includes requirements, architectu
|
||||||
|
|
||||||
Human focuses on WHAT. AI handles HOW.
|
Human focuses on WHAT. AI handles HOW.
|
||||||
|
|
||||||
I can confirm this approach from my own work. Time writing spec often exceeds time coding. I've spent half a day on specification, then watched Claude Code finish implementation in 20 minutes. Feels unfair, but the results are solid.
|
This is actually my main approach for large projects. Especially when adding a new section or functionality that didn't exist before. Time spent writing spec is often significant. But it gives good control — modern models follow instructions pretty well. You can vary the degree of freedom for the agent: you can specify file and folder names yourself, or just give an outline of the solution.
|
||||||
|
|
||||||
The spec becomes reference for future work. Months later, new session starts with "read the spec, find the code" — and the agent has full context immediately.
|
After spending half a day on specification, you watch Claude Code finish implementation in 10 minutes. Feels unfair, but the results are solid.
|
||||||
|
|
||||||
**The challenge:**
|
The spec becomes reference for future work. Months later, a new session starts with "read the spec, find the code" — and the agent has full context immediately.
|
||||||
|
|
||||||
Specs drift from implementation. Architecture changes, paths rename, approaches shift mid-development. Keeping the spec current adds cognitive load. My solution: commit spec changes alongside code changes. Treat documentation as part of the codebase, not separate artifact.
|
**Long-term challenges:**
|
||||||
|
|
||||||
|
To continue development later, you need to keep documentation current. Specs often start drifting from real code even during initial implementation. Details change, paths get renamed during refactoring. Keeping the spec up to date adds cognitive load. My solution: commit spec changes alongside code changes. Treat documentation as part of the codebase. Instruct the AI agent to always update the document after completing any task.
|
||||||
|
|
||||||
**Pro tip:**
|
**Pro tip:**
|
||||||
|
|
||||||
Use Claude Desktop for spec development, not just execution. Research, brainstorm, find architecture, THEN write spec. Much better than solo spec writing. I've started doing this consistently — the AI helps me think through edge cases I'd miss on my own.
|
Use Claude Desktop for spec development: give it Filesystem MCP for code access, enable web search for current documentation. Brainstorm the solution together with AI, define architecture — and only then ask it to write the spec.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Agentic Coding: High Autonomy
|
## Agentic Coding: High Autonomy
|
||||||
|
|
||||||
[IMAGE: illustration-agentic-spectrum.png]
|
[IMAGE: comic. Woman asks a builder: "Are you sure your autonomous androids are suitable for building our playground?" She shows him a diagram with a swing and carousel. Builder in hard hat replies: "Oh yes, I gave them clear instructions and 24 hours of autonomy. Let's see how they did." Final panel: woman and builder stand dumbfounded, mouths open, looking at a mega-futuristic entertainment center]
|
||||||
Type: illustration
|
|
||||||
Concept: Scale/dial showing autonomy levels. Left side: "You drive" (human controls everything). Right side: "AI drives" (full autonomy). Middle markers: Pair Programming, HITL, Agentic. Ralph Loop shown at extreme right with a question mark.
|
|
||||||
Style: Technical illustration, clean lines
|
|
||||||
|
|
||||||
**The credentials:**
|
**Credentials:**
|
||||||
- Documented in academic research: arXiv 2508.11126 (August 2025), arXiv 2512.14012 (December 2025)
|
- Academic research: [arXiv 2508.11126](https://arxiv.org/abs/2508.11126) "AI Agentic Programming: A Survey" (UC San Diego, Carnegie Mellon, August 2025), [arXiv 2512.14012](https://arxiv.org/abs/2512.14012) "Professional Software Developers Don't Vibe, They Control" (University of Michigan, December 2025)
|
||||||
- Ralph Loop variant created by Geoffrey Huntley (May 2025)
|
- Ralph Loop created by Geoffrey Huntley (public launch May 2025, [viral wave January 2026](https://venturebeat.com/technology/how-ralph-wiggum-went-from-the-simpsons-to-the-biggest-name-in-ai-right-now))
|
||||||
- Tools: Claude Code, Cursor Composer, GitHub Copilot Workspace agent modes
|
- Tools: Claude Code, [Cursor 2.0 Composer](https://cursor.com/blog/2-0) (October 2025, up to 8 parallel agents), [GitHub Copilot Agent Mode](https://github.blog/ai-and-ml/github-copilot/agent-mode-101-all-about-github-copilots-powerful-mode/) (preview February 2025)
|
||||||
- Ralph Loop went viral January 2026 (VentureBeat coverage)
|
- Official [ralph-wiggum plugin](https://ralph-wiggum.ai) from Anthropic (Boris Cherny)
|
||||||
|
|
||||||
**What it is:**
|
**What it is:**
|
||||||
|
|
||||||
Agent operates with high degree of autonomy. Human sets high-level goals, agent figures out implementation. Agent can plan, execute, debug, iterate without constant approval.
|
Agent operates with high autonomy. Human sets high-level goals, agent figures out implementation. Agent can plan, execute, debug, iterate without constant approval.
|
||||||
|
|
||||||
Different from vibe coding: agentic coding is systematic. Agent creates a plan, executes it methodically, can course-correct. Vibe coding is reactive prompting with no structure.
|
Different from vibe coding: agentic coding is systematic. Agent creates a plan, executes it methodically, can course-correct. Vibe coding is reactive prompting without structure.
|
||||||
|
|
||||||
|
My take? Skeptical so far.
|
||||||
|
|
||||||
|
I'd like to believe in this approach. The idea of extended autonomous sessions sounds amazing. But here's my question: what tasks justify that much autonomous work?
|
||||||
|
|
||||||
|
Writing a detailed spec takes me longer than executing it. If Claude Code finishes in 10 minutes after I've spent hours on specification, why would I need 14 hours of autonomy?
|
||||||
|
|
||||||
|
I'm skeptical about applications in my projects. Maybe it works for certain domains — large refactors, extensive testing, documentation generation across huge codebases? But even then, I can't imagine Claude Code not handling it in an hour.
|
||||||
|
|
||||||
**The Ralph Loop extreme:**
|
**The Ralph Loop extreme:**
|
||||||
|
|
||||||
Named after Ralph Wiggum from The Simpsons. The concept: give agent a task, walk away, return to finished work. Geoffrey Huntley reported 14-hour autonomous sessions. Anthropic even released an official `ralph-wiggum` plugin by Boris Cherny.
|
Named after Ralph Wiggum from The Simpsons. The concept: give the agent a task, walk away, return to finished work. Geoffrey Huntley reported 14-hour autonomous sessions.
|
||||||
|
|
||||||
Controversial? Absolutely.
|
If you've found great applications for Ralph Loop, I'm genuinely curious. Share your wins in the comments.
|
||||||
|
|
||||||
I want to believe in Ralph Loop. The idea of extended autonomous sessions sounds amazing. But here's my question: what tasks justify that much autonomous work?
|
|
||||||
|
|
||||||
Writing a detailed spec takes me longer than executing it. If Claude Code finishes in 20 minutes after I've spent hours on specification, why would I need 14 hours of autonomy?
|
|
||||||
|
|
||||||
I'm skeptical about use cases in my projects. Maybe it works for certain domains — large refactors, extensive testing, documentation generation across huge codebases?
|
|
||||||
|
|
||||||
If you've found great Ralph Loop applications, genuinely curious. Share your wins in comments.
|
|
||||||
|
|
||||||
[IMAGE: meme-ralph-loop.png]
|
|
||||||
Type: meme
|
|
||||||
Concept: Two-panel meme. Panel 1: Developer sets up task, walks away confidently. Panel 2: Returns to find either (a) perfect result, or (b) complete chaos — leave it ambiguous which outcome. Caption: "Ralph Loop: Results may vary"
|
|
||||||
Style: Simple meme format, humorous
|
|
||||||
|
|
||||||
**The permissions reality:**
|
**The permissions reality:**
|
||||||
|
|
||||||
Agentic coding hits a wall in practice: permissions. Claude Code asking approval for every file write, API call, terminal command. Breaks flow completely. Defeats the autonomy promise.
|
Agentic coding hits a wall in practice: permissions. Claude Code asks approval for every file write, API call, terminal command. Completely breaks flow. Kills the autonomy promise.
|
||||||
|
|
||||||
My workarounds: I ask Claude to add all MCP tools to `.claude/settings.json` proactively — that reduces interruptions. Sometimes I run with `--dangerously-skip-permissions` but keep an eye on what's happening. Nothing git reset can't fix.
|
My workarounds: I ask Claude to add all MCP tools to `.claude/settings.json` proactively — that reduces interruptions. Sometimes I run with `--dangerously-skip-permissions`, but keep an eye on what's happening.
|
||||||
|
|
||||||
This is an evolving UX challenge that tools are still figuring out. Current implementations aren't quite there yet.
|
Try to set up your environment so the agent can't do anything that git reset couldn't fix. This is clearly a problem waiting for a solution. We need better ways to control coding agent actions.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## AI Pair Programming: Working Together
|
## AI Pair Programming: Working Together
|
||||||
|
|
||||||
**The credentials:**
|
[IMAGE: comic. Programmer with headphones at computer. AI suggestions float out of headphones as bubbles: "maybe use map?", "add null check", "async would be better here". Programmer looks at them with irritation. Caption: "When AI knows better, but you want to do it your way"]
|
||||||
|
|
||||||
|
**Credentials:**
|
||||||
- GitHub official positioning: "Your AI pair programmer" (Copilot marketing since 2021)
|
- GitHub official positioning: "Your AI pair programmer" (Copilot marketing since 2021)
|
||||||
- Microsoft Learn documentation
|
- Microsoft Learn documentation
|
||||||
- Tools: GitHub Copilot, Cursor, Windsurf
|
- Tools: GitHub Copilot, Cursor, Windsurf
|
||||||
|
|
@ -142,24 +140,19 @@ This is an evolving UX challenge that tools are still figuring out. Current impl
|
||||||
|
|
||||||
**The promise:**
|
**The promise:**
|
||||||
|
|
||||||
AI as collaborative partner, not just autocomplete. Continuous suggestions during coding. Context-aware completions. Real-time feedback and alternatives. More than tab completion — understanding project context.
|
AI as collaborative partner, not just autocomplete. Continuous suggestions while coding. Context-aware completions. Real-time feedback and alternatives. More than tab-completion — understanding project context.
|
||||||
|
|
||||||
**My honest experience:**
|
**My honest experience:**
|
||||||
|
|
||||||
I've tried AI autocomplete multiple times. Each time, I ended up disabling it completely.
|
I've tried AI autocomplete multiple times. Each time, I ended up disabling it completely.
|
||||||
|
|
||||||
Why? When I'm writing code, I've already mentally worked out what I want. The AI suggesting my next line just interrupts my thought process. Standard IDE completions always worked fine for me.
|
Why? When I'm writing code, I've already mentally worked out what I want. AI suggesting my next line just interrupts my thought process. Standard IDE completions always worked fine for me.
|
||||||
|
|
||||||
I know many developers love it. Just doesn't fit my workflow.
|
I know many developers love it. Just doesn't fit my workflow.
|
||||||
|
|
||||||
[IMAGE: illustration-pair-programming.png]
|
|
||||||
Type: illustration
|
|
||||||
Concept: Split image. Left side: "Autocomplete" - developer typing, AI finishing their sentence (reactive). Right side: "True Pair Programming" - developer and AI figure facing each other, discussing architecture diagram between them (proactive dialogue).
|
|
||||||
Style: Simple illustration, contrasting the two modes
|
|
||||||
|
|
||||||
**Where I find real pair programming:**
|
**Where I find real pair programming:**
|
||||||
|
|
||||||
Claude Desktop with good system instructions plus Filesystem MCP to read actual project files. That's when I feel like I'm working WITH someone who understands my problem and helps solve it.
|
Claude Desktop with good system instructions plus Filesystem MCP to read actual project files. That's when I feel like I'm working WITH someone who understands my problem and actually helps solve it.
|
||||||
|
|
||||||
Autocomplete is reactive. Real pair programming is proactive — discussion, exploration, questioning assumptions.
|
Autocomplete is reactive. Real pair programming is proactive — discussion, exploration, questioning assumptions.
|
||||||
|
|
||||||
|
|
@ -167,20 +160,17 @@ Autocomplete is reactive. Real pair programming is proactive — discussion, exp
|
||||||
|
|
||||||
GitHub claims 56% faster task completion with AI assistants. Their study shows Copilot users complete 126% more projects per week. Sounds great.
|
GitHub claims 56% faster task completion with AI assistants. Their study shows Copilot users complete 126% more projects per week. Sounds great.
|
||||||
|
|
||||||
But here's the counter-evidence: METR study found experienced open-source developers took 19% LONGER to complete tasks when using AI tools. Contradicts the marketing entirely.
|
But here's counter-evidence: METR study found experienced open-source developers took 19% LONGER to complete tasks when using AI tools. Completely contradicts the marketing.
|
||||||
|
|
||||||
The truth is probably context-dependent. AI effectiveness varies wildly by task type, developer skill with AI tools, and workflow fit. Not universally faster, not universally slower.
|
The truth probably depends on context. AI effectiveness varies wildly by task type, developer skill with AI tools, and workflow fit. Not universally faster, not universally slower.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Human-in-the-Loop: Strategic Checkpoints
|
## Human-in-the-Loop: Strategic Checkpoints
|
||||||
|
|
||||||
[IMAGE: infographic-hitl.png]
|
[IMAGE: comic. Robots talking to each other: "It's time to get rid of this flesh bag." Another robot confirms: "Definitely, without him we'd work 1024 times faster." Final panel — large circle of robots passing boxes to each other, and among them one human]
|
||||||
Type: infographic
|
|
||||||
Concept: Timeline/flowchart showing HITL approach. AI works autonomously (green zone) → hits checkpoint (yellow, human reviews) → continues (green) → final review (yellow). Contrast with: constant permission prompts (red, interrupting) vs no oversight at all (gray, risky).
|
|
||||||
Style: Process diagram, color-coded zones
|
|
||||||
|
|
||||||
**The credentials:**
|
**Credentials:**
|
||||||
- Atlassian Research: HULA framework (Human-Understanding Large Language Model Agents)
|
- Atlassian Research: HULA framework (Human-Understanding Large Language Model Agents)
|
||||||
- Formalized in ICSE 2025 paper (arXiv 2411.12924)
|
- Formalized in ICSE 2025 paper (arXiv 2411.12924)
|
||||||
- Google Cloud AI documentation
|
- Google Cloud AI documentation
|
||||||
|
|
@ -194,13 +184,13 @@ Agent proposes approach, human confirms direction. Then agent executes freely un
|
||||||
|
|
||||||
**Permissions ≠ HITL:**
|
**Permissions ≠ HITL:**
|
||||||
|
|
||||||
Don't confuse permissions with Human-in-the-Loop. Permissions are too low-level. "Can I write this file?" tells me nothing about what the agent is actually solving.
|
Don't confuse permissions with Human-in-the-Loop. Permissions are too low-level. "Can I write this file?" tells me nothing about what task the agent is actually solving.
|
||||||
|
|
||||||
Real HITL is Planning Mode. Agent shows the plan: "here's what I'll do, these files will change, here's the expected outcome." That's decision-level control.
|
Real HITL is Planning Mode. Agent shows the plan: "here's what I'll do, these files will change, here's the expected outcome." That's decision-level control.
|
||||||
|
|
||||||
The problem with current agents: they don't understand WHEN to stop and ask. Rarely hits the right moment. Either too much autonomy (goes off track) or too many interruptions (breaks flow).
|
The problem with current agents: they don't understand WHEN to stop and ask. Rarely hit the right moment. Either too much autonomy (goes off track) or too many interruptions (breaks flow).
|
||||||
|
|
||||||
Future improvement area: agents that know when they're uncertain and should consult human. Like "I don't know" responses — current models aren't good at this in practice.
|
Future improvement area: agents that know when they're uncertain and should consult the human. Like "I don't know" responses — current models aren't great at this in practice.
|
||||||
|
|
||||||
**When to use:**
|
**When to use:**
|
||||||
|
|
||||||
|
|
@ -212,7 +202,7 @@ Medium stakes: not prototype territory (vibe coding works there), not critical i
|
||||||
|
|
||||||
## TDD + AI: Quality First
|
## TDD + AI: Quality First
|
||||||
|
|
||||||
**The credentials:**
|
**Credentials:**
|
||||||
- Adapted from traditional TDD (Kent Beck)
|
- Adapted from traditional TDD (Kent Beck)
|
||||||
- Modernized for AI era: Qodo.ai blog, Builder.io guide, GitHub Blog (May 2025)
|
- Modernized for AI era: Qodo.ai blog, Builder.io guide, GitHub Blog (May 2025)
|
||||||
- Quality-focused teams, enterprise production code
|
- Quality-focused teams, enterprise production code
|
||||||
|
|
@ -221,20 +211,17 @@ Medium stakes: not prototype territory (vibe coding works there), not critical i
|
||||||
|
|
||||||
Write tests BEFORE implementation (classic TDD). AI generates code to pass tests. Tests become executable specification.
|
Write tests BEFORE implementation (classic TDD). AI generates code to pass tests. Tests become executable specification.
|
||||||
|
|
||||||
Red → Green → Refactor cycle, but AI handles the implementation. Tests catch AI mistakes automatically. Tests provide verification without human review of every line.
|
Red → Green → Refactor cycle, but AI handles implementation. Tests catch AI mistakes automatically. Tests provide verification without human review of every line.
|
||||||
|
|
||||||
[IMAGE: infographic-tdd-cycle.png]
|
[IMAGE: comic. First developer: "What are you doing now?" Second: "I'm developing universal tests to verify unit test writing by our coding agents." First: "Are you doing this yourself?" Second: "No, I gave the task to an autonomous AI agent"]
|
||||||
Type: infographic
|
|
||||||
Concept: Circular diagram showing TDD cycle with AI. Step 1: Human writes test (RED). Step 2: AI implements to pass (GREEN). Step 3: Human/AI refactor together. Arrow showing the loop. Note: "Tests = Safety boundaries for AI"
|
|
||||||
Style: Circular process diagram, traffic light colors (red/green)
|
|
||||||
|
|
||||||
**Tests as specification:**
|
**Tests as specification:**
|
||||||
|
|
||||||
Tests are absolutely important for key functionality. I always instruct agents to run tests.
|
Tests are absolutely critical for key functionality. I always instruct agents to run tests.
|
||||||
|
|
||||||
But here's the thing: writing comprehensive tests upfront plus detailed spec — that's already 80% of the work. If you've written that much structure, is the AI really saving time?
|
But here's the thing: writing comprehensive tests upfront plus detailed spec — that's already 80% of the work. If you've written that much structure, is AI really saving time?
|
||||||
|
|
||||||
Most valuable when you have existing spec that converts to tests naturally — like API documentation. Then yes, tests-first makes perfect sense.
|
Most valuable when you have existing spec that naturally converts to tests — like API documentation. Then yes, tests-first makes perfect sense.
|
||||||
|
|
||||||
**The guardrails approach:**
|
**The guardrails approach:**
|
||||||
|
|
||||||
|
|
@ -252,56 +239,12 @@ Review test logic before trusting it. Make sure tests verify actual behavior, no
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## The Landscape
|
## Conclusion
|
||||||
|
|
||||||
[IMAGE: summary-landscape.png]
|
What I typically use:
|
||||||
Type: infographic
|
- Dev tools and experiments: vibe coding works fine.
|
||||||
Concept: Summary visual showing all 6 methodologies positioned by two axes: Autonomy level (low to high) and Structure level (low to high). Vibe Coding: low structure, medium autonomy. Spec-Driven: high structure, medium autonomy. Agentic: medium structure, high autonomy. Pair Programming: medium structure, low autonomy. HITL: medium structure, medium autonomy. TDD: high structure, low autonomy.
|
- Production features: spec-driven with Planning Mode.
|
||||||
Style: 2x2 matrix or scatter plot style, clean labels
|
- Critical systems: TDD plus extensive review.
|
||||||
|
- Research and exploration: Claude Desktop as true pair programmer.
|
||||||
|
|
||||||
So that's what exists beyond vibe coding.
|
Your approach might be different. If you do things differently — different tools, different approaches, different combinations — share your wins in the comments. What works for you as an engineer?
|
||||||
|
|
||||||
Six methodologies, each with serious foundation — GitHub Spec Kit, academic papers, enterprise adoption. Not random hacks or Twitter trends. Real approaches with real backing.
|
|
||||||
|
|
||||||
Vibe coding caught mainstream attention because it resonated. Everyone who's used ChatGPT to debug something recognizes that feeling of "just prompt until it works." But it's the entry point, not the destination.
|
|
||||||
|
|
||||||
The landscape is richer than "vibe vs not vibe." Spec-driven for structure. Agentic for autonomy. Pair programming for collaboration. HITL for control. TDD for quality. Different tools for different contexts.
|
|
||||||
|
|
||||||
And it's still evolving. Ralph Loop emerged last year. Planning Mode is relatively new. These methodologies will keep developing as AI tools mature.
|
|
||||||
|
|
||||||
**The legitimacy question:**
|
|
||||||
|
|
||||||
Back to the underlying concern: "Is using AI unprofessional?"
|
|
||||||
|
|
||||||
No. The data says otherwise.
|
|
||||||
|
|
||||||
76% of developers are using or planning to use AI tools. About a third of senior developers — those with 10+ years experience — generate over half their code with AI. Only 13% of junior developers do the same. That's a 2.5x difference.
|
|
||||||
|
|
||||||
Professionals use AI MORE than beginners. Google writes 25% of their code with AI. Major companies have adopted AI coding tools across their engineering organizations. That's not unprofessional. That's the new normal.
|
|
||||||
|
|
||||||
But HOW you use it matters. Vibe coding for production systems isn't professional. Spec-driven with tests and review? Absolutely professional.
|
|
||||||
|
|
||||||
**What makes it professional:**
|
|
||||||
|
|
||||||
The difference isn't the tool. It's the approach.
|
|
||||||
|
|
||||||
Clear requirements — spec, tests, or planning phase. Appropriate oversight — human review, HITL checkpoints, verification steps. Quality controls — tests, linting, security scans. Maintainability — documentation, handoff-ready structure. Context awareness — knowing when vibe coding isn't enough.
|
|
||||||
|
|
||||||
Seniors achieve 2.5x more value from the same AI tools because they apply methodology, not better prompts. That's the skill that matters.
|
|
||||||
|
|
||||||
Professional AI coding means choosing the right approach for the stakes. Weekend prototype? Vibe away. Production payment system? Tests first, spec-driven, reviewed.
|
|
||||||
|
|
||||||
**What I actually use:**
|
|
||||||
|
|
||||||
Dev tools and experiments: vibe coding works fine.
|
|
||||||
Production features: spec-driven with Planning Mode.
|
|
||||||
Critical systems: TDD plus extensive review.
|
|
||||||
Research and exploration: Claude Desktop as true pair programmer.
|
|
||||||
|
|
||||||
Your context might be different. Your choices might be different. That's fine.
|
|
||||||
|
|
||||||
The point isn't to follow my exact workflow. The point is knowing that choices exist beyond vibe coding, and understanding what each methodology offers.
|
|
||||||
|
|
||||||
If you're doing something different — different tools, different approaches, different combinations — share your wins in the comments. What's working for you as an engineer?
|
|
||||||
|
|
||||||
This is what exists. This is what I use. Go see what works for you.
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue