"Vibe coding" é um termo novo e vagamente definido no desenvolvimento de software que se refere à prática de solicitar que as ferramentas de IA gerem código em vez de escrever código manualmente.
Na engenharia de software, o desenvolvimento está se transformando, deixando de ser uma programação estritamente manual para se tornar mais flexível, assistida e impulsionada por IA, através de IA generativa e programação assistida por IA. A vibe coding está na vanguarda dessa mudança, ela representa uma mudança em direção ao desenvolvimento de software orientado por intenção, em que os sistemas de IA auxiliam os desenvolvedores gerando código a partir de instruções em linguagem natural.
A "vibe coding" foi introduzido pelo renomado cientista da computação Andrej Karpathy em fevereiro de 2025. Segundo Andrej Karpathy, trata-se de uma estratégia de programação que envolve o mínimo de programação humana, pois os programadores e codificadores utilizam códigos de IA em suas tarefas de programação, mas se concentram mais em como os resultados são obtidos, testando e ajustando. Ele também enfatizou a importância das ferramentas de IA, das ferramentas de programação e dos assistentes de AI coding no desenvolvimento de softwares.
O campo da vibe coding passou da simples solicitação de código para uma compreensão mais profunda de como a programação funciona quando focada em contexto, intenção e orquestração. Com a implementação mais aprofundada da IA em tarefas reais, a distinção não será mais entre linguagens de programação e sintaxe específicas, mas sim entre a especificação de intenções e contextos.
Mantenha-se atualizado sobre as tendências mais importantes (e intrigantes) do setor em IA, automação, dados e muito mais com o boletim informativo Think. Consulte a Declaração de privacidade da IBM.
Para implementar a vibe coding na prática, o usuário precisa seguir as seguintes etapas:
Comece escolhendo uma plataforma de AI Coding e ferramentas de vibe coding que atendam às suas necessidades. Plataformas atuais de AI Coding como Replit, Cursor, GitHub Copilot, Windsurf e bolt.new oferecem mais do que funcionalidades de preenchimento automático. Elas podem gerar código em tempo real, raciocínio sobre múltiplos arquivos, depuração, execução de comandos, ajuda de implementação e memória de espaço de trabalho no IDE, ambiente de desenvolvimento ou editor de código.
A vibe coding não depende fortemente dos prompts fornecidos, mas sim do contexto apresentado. Antes de desenvolver o código, é importante definir o objetivo e os requisitos da aplicação, juntamente com as restrições, o stack de tecnologia preferido e o estilo de design.
Vamos usar um exemplo para entender.
Crie um aplicativo web para uma nova startup que será usado para rastrear hábitos. Os usuários devem ser capazes de criar hábitos e acompanhar sua taxa de conclusão diariamente. Crie gráficos que ilustrem o desempenho do usuário e forneça uma interface minimalista em modo escuro. Use React para front-end e Node.js ou Python para desenvolvimento back-end. Incorporar os requisitos juntamente com o contexto correto facilita para os assistentes de IA de fornecedores como a Anthropic produzirem soluções mais corretas e que estejam em conformidade com a arquitetura adequada. O prompt é claramente específico, relevante ao contexto e orientado para objetivos.
Com a entrada da intenção e do contexto fornecidos, a IA produz o primeiro rascunho da aplicação. A produção pode abranger desde arquitetura de aplicação, código front end, código back end, API, design de banco de dados e documentação relevante. O que é produzido é apenas o ponto de partida para a criação da aplicação.
O processo de desenvolvimento de código de IA é iterativo, exigindo iterações constantes. Depois de fazer avaliações do que foi criado inicialmente, os desenvolvedores trabalharão para refinar a aplicação e adicionar novas funcionalidades. Eles podem ajustar os requisitos, alterar a funcionalidade, melhorar o desempenho, melhorar a usabilidade, realizar refatoração de código, redesenhar a arquitetura da aplicação ou qualquer outra coisa. Isso significa que os desenvolvedores seguem este ciclo: Intenção → Gerar → Revisar → Refinar → Gerar
Assim como o código de software escrito da maneira tradicional, o software gerado ainda precisa de esforços de engenharia para ser colocado em produção. Exige revisão de código, testes, verificação de dependências, avaliação de segurança para possíveis vulnerabilidades, verificação de conformidade e muito mais para garantir a alta qualidade do código. Isso significa que os desenvolvedores buscam criar softwares seguros, confiáveis, escaláveis, fáceis de manter e prontos para produção.
O motivo da falha de qualquer modelo de IA nunca é um prompt ruim. Os modelos de IA falham devido à ausência de qualquer contexto. Os avanços futuros em grandes modelos de linguagem (LLMs) virão da área de contexto, e não dos prompts. Para que um modelo de IA como o Gemini produza uma saída confiável, ele deve receber contextos como:
Se um modelo de IA não levar em consideração alguma dessas questões ao gerar produção, poderá criar um código tecnicamente correto, mas inadequado em um ecossistema operacional do mundo real. Portanto, a engenharia de contexto se tornará uma competência essencial na IA empresarial para gerar resultados sensíveis ao contexto.
A vibe coding foi um avanço que provou que a IA poderia gerar código a partir de prompts de linguagem natural, tornando a prototipagem de software mais rápida e eficiente. No entanto, a geração de código não é o caminho completo para a engenharia de software. O desenvolvimento de software de produção requer planejamento, projeto de arquitetura, geração de código, testes, avaliações de segurança, implementação e governança. É aqui que o vibe coding começa a mostrar suas falhas.
O que estamos vendo agora nos setores é a migração do prompt para o código, para a intenção, para o agente de IA e, finalmente, para o software. Com essa abordagem, a ênfase não está na geração de código baseada em prompt, mas sim em todo o processo de engenharia de software. Dessa forma, o desenvolvimento de software moderno não enfrenta mais o desafio da geração de código, pois abrange a automação e a orquestração de diferentes tarefas de engenharia de software em todos os estágios de desenvolvimento.
A vibe coding é, sem dúvida, potente. No entanto, apresenta alguns desafios técnicos e práticos. Aqui estão alguns dos principais desafios listados:
A vibe coding causou um novo tipo de dívida técnica chamada dívida de segurança. Quanto mais os desenvolvedores adotarem a AI Coding sem validação, mais vulnerabilidades provavelmente surgirão e precisarão ser corrigidas em algum momento no futuro.
Exemplos dessas vulnerabilidades incluem: chaves e senhas de API codificadas na aplicação, vulnerabilidades a injeções de SQL, APIs não seguras, aplicações com privilégios excessivos, autenticação inadequada e bibliotecas de terceiros com vulnerabilidades.
Em relação aos ambientes de nível corporativo, os riscos são maiores porque o protótipo vulnerável inicial criado usando a vibe coding pode mais tarde se transformar em uma aplicação real pronta para produção. Essa aplicação gerencia informações dos clientes, detalhes financeiros, informações médicas, direitos de propriedade intelectual e outros processos da empresa. O que inicialmente é um protótipo rápido pode se transformar em uma aplicação de negócios essencial sem passar pela análise de segurança necessária. A questão passa de "podemos criar isso" para "podemos confiar nisso?".
A engenharia de software está passando por mudanças em seus modelos econômicos devido à vibe coding. Tradicionalmente, a produção de software tem sido limitada pela experiência em programação e pelos esforços necessários, principalmente entre os iniciantes.
Com o surgimento da inteligência artificial, o gargalo passa da programação em si para ideias e decisões, porque a programação estará disponível em abundância. Há muito tempo existe uma discussão sobre se a IA pode ser usada para escrever softwares. No entanto, a questão mais relevante que surge no mundo de hoje é se a IA pode ser aproveitada adequadamente para acelerar a inovação e lançar produtos no mercado.
1 “Andrej Karpathy on X: “There’s a new kind of coding I call “vibe coding”, where you fully give in to the vibes, embrace exponentials, and forget that the code even exists.” Consultado em 7 de março de 2025.
2 Mehta, Ivan, “A quarter of startups in YC’s current cohort have codebases that are almost entirely AI- based generated,” TechCrunch, 6 de março de 2025.
3 Edwards, Benj, “AI coding assistant refuses to write code, tells user to learn programming instead,” Ars Technica, 16 de março de 2025.
4 Edwards, Benj, “Will the future of software developement run on vibes?” Ars Technica, 6 de março de 2025.
5 Naughton, John, “Now you don’t even need code to be a programmer. But you still need expertise,” The Observer, 16 de março de 2025.
6 Chowdhury, Hasan; Mann, Jyoti, “Silicon Valley’s next act: bringing ‘vibe coding ‘ to the world,” Business Insider, 26 de fevereiro de 2025.