- Um texto com uma reflexão crítica sobre o Vibe Coding, que consiste em vivenciar o "estado de fluxo (Flow)" durante o desenvolvimento junto com a AI
- Nos últimos dois meses, o autor dependeu do Vibe Coding, mas concluiu que não ficou satisfeito em termos de produtividade e custo
- Vibe Coding não é uma metodologia específica de desenvolvimento, mas um estilo de programar centrado em um certo estado ou emoção
- O código é escrito seguindo o fluxo, com dependência de assistentes de programação com AI (Cline, Roo Code, Cursor etc.)
- O trabalho avança sem um plano claro, guiado apenas pela intuição e pela imersão, buscando a sensação de progresso movida por dopamina
Problemas do Vibe Coding
- Perda de tempo: no começo parece que tudo anda rápido, mas, como não há estrutura, o processo fica à mercê de erros e mudanças
- Aumento de custos: quanto maior a janela de contexto da AI, maior também o custo das chamadas de API
- Ex.: envio de centenas de milhares de tokens, geração de milhares de linhas → no fim, o custo pesa
- Mais retrabalho: o código feito rapidamente no início acaba não servindo ao objetivo, gerando uma situação em que é preciso refazer tudo
Também há vantagens
- Por meio da depuração repetitiva e da reinterpretação do código, há melhora na compreensão da estrutura do código e da própria linguagem
- O autor está focado em aprender Python e vem desenvolvendo, aos poucos, a capacidade de entender erros e orientar o modelo corretamente
Vibe Coding vs. AI Chat vs. busca na web
- Vibe Coding: útil para exploração inicial ou tentativas experimentais, mas inadequado para desenvolvimento estruturado
- AI Chat (ChatGPT etc.): útil para respostas rápidas e geração de boilerplate, mas confiar cegamente é arriscado (há possibilidade de alucinação da AI)
- Busca na web: essencial para encontrar conceitos e soluções corretas, mas pode levar mais tempo
Combinação preferida atualmente: Gemini + Open WebUI
- Gemini Code Assist (usado no VS Code):
- Gratuito e forte na geração de código de teste e correção de erros
- Especialmente útil para quem está tendo o primeiro contato com testes unitários
- Open WebUI:
- Suporta vários modelos e permite personalização
- Dá para configurar prompts para objetivos específicos (programação, artigos acadêmicos, patentes etc.)
- Adequado para tarefas com boa relação custo-benefício, como alinhamento de texto e conversão de tabelas
Escolha ineficiente: agentes de AI ilimitados
- Roo Code, Cline etc. rodam por muito tempo e consomem muitos tokens
- Em especial, os baseados em Claude têm bom desempenho, mas o custo é excessivamente alto
- Em vez disso, Gemini 2.0, DeepSeek V3/Chat etc. são gratuitos ou baratos e ainda entregam desempenho decente
Conclusão: em busca de equilíbrio
- Não dá para dizer que o Vibe Coding seja totalmente ruim
- Ele ajuda na criatividade e na exploração de ideias
- Porém, não é uma forma sustentável de desenvolver
- Diante de prazos e custos, é preciso uma alternativa mais realista
- A combinação ideal atual do autor:
- Gemini Code Assist (gratuito, forte em testes unitários)
- Open WebUI (vantajoso em controle e custo)
- Planos futuros:
- Considerar apps de chat pagos como o Perplexity (US$ 20/mês, com tier gratuito também disponível)
- Como os custos de API passam de US$ 30 por mês, é necessário reduzir custos de forma estruturada
- No longo prazo, também considerar rodar modelos localmente, com possibilidade de migrar quando surgirem modelos mais eficientes
1 comentários
Comentários do Hacker News
É interessante ler relatos sobre como outras pessoas usam LLMs para programar
Vibe coding é adequado para protótipos exploratórios, não para escrever código de produção
Vibe coding é entrar no "fluxo" e gerar código com facilidade
Acho que vibe coding não tem relação com programar
Gasto $30 por dia usando Claude Code
Trabalhar em uma estrutura de árvore é útil
Karpathy é bom em dar nomes
Uso muito LLM, mas o conceito de vibe começou como uma piada online
Há valor em expressar seus pensamentos em uma linguagem formal
Chat com IA oferece resultados melhores do que busca na web