O que é Vibe Coding e por que evitá-lo?

Entenda o conceito de Vibe Coding e saiba por que muitos especialistas recomendam evitá-lo.
Atualizado há 1 dia
Vibe coding

Outros destaques

Earbuds com inteligência artificial
IA generativa para dados
Gemini Live com vídeo
Google Gemini Chatbot
Deslocamento de empregos por IA
CONTINUA DEPOIS DA PUBLICIDADE

A **vibe coding** está ganhando espaço como uma nova abordagem no desenvolvimento de software, onde a inteligência artificial (IA) é usada para gerar código a partir de prompts em linguagem natural. Mas será que essa tendência é realmente útil ou apenas uma moda passageira? Vamos explorar o que é vibe coding e por que você deveria pensar duas vezes antes de adotá-la.

O termo “vibe coding” surgiu de um post na rede social X (antigo Twitter) feito por Andrej Karpathy, cofundador da OpenAI. A ideia é criar softwares sem escrever código diretamente, usando ferramentas de IA para interpretar e executar os comandos. Parece tentador, mas será que funciona na prática?

## O que é exatamente Vibe Coding?

As ferramentas de IA para codificação geralmente oferecem três funcionalidades principais:

* Sugestões de autocompletar enquanto o usuário digita o código.
* Explicação, resumo, depuração ou aconselhamento sobre trechos de código fornecidos.
* Geração de partes do código baseadas em comandos de linguagem natural.

CONTINUA DEPOIS DA PUBLICIDADE

Leia também:

Essas ferramentas são projetadas para auxiliar desenvolvedores que já possuem conhecimento em programação. Até mesmo o Cursor, uma das principais ferramentas utilizadas no vibe coding, é voltado para desenvolvedores, com o objetivo de agilizar processos simples para quem já codificava antes mesmo da existência da ferramenta.

A proposta do vibe coding é que pessoas sem conhecimento em desenvolvimento de software consigam criar algo, simplesmente descrevendo em linguagem natural o que desejam ver como resultado final.

## Por que a Vibe Coding pode ser um problema para seus usuários?

Quando uma pessoa sem conhecimento técnico começa a usar o Cursor para vibe coding, os resultados podem ser bem diferentes daqueles obtidos por alguém como Andrej Karpathy. Enquanto Karpathy pode pedir ao Cursor para “Gerar um código que faça hashing e salting de senhas para autenticação de usuários”, um vibe coder não técnico poderia dizer “Cursor, crie um banco de dados seguro para armazenar minhas senhas”.

Embora a palavra “seguro” tenha sido usada, um modelo de linguagem (LLM) pode ignorar esse detalhe. Ou, a interpretação de “seguro” pode não atender aos padrões de softwares comerciais, implementando medidas de segurança apenas em algumas áreas. Há outro problema: a ideia de “armazenar minhas senhas”. É comum pensar que as senhas são “armazenadas” em algum lugar, mas quem entende de password salting e hashing sabe que as senhas dos usuários não são armazenadas tecnicamente.

CONTINUA DEPOIS DA PUBLICIDADE

Em vez disso, o salt e o valor hash da combinação de salt e senha são armazenados. Apesar dos termos técnicos, o conceito não é tão complexo, mas é algo que você só aprende ao estudar sobre o assunto. E se você não sabe disso, não pode pedir por isso.

Então, você pede um banco de dados seguro, mas qual versão do gênio LLM você vai receber? A que entende o comando ao pé da letra e armazena as senhas em um banco de dados qualquer? Ou a que considera o que você realmente quer e cria um processo de autenticação adequado?

A resposta mais provável é que você receba algo intermediário, sem muita lógica. Poderia funcionar 100%, 90% ou 5%. Com um comando tão vago, tudo é possível. O problema é que um vibe coder não técnico não tem como avaliar o resultado ou determinar sua qualidade.

É impossível escrever testes adequados para verificar o que está acontecendo se você não entende as medidas de segurança necessárias, o que foi implementado, o que deveria ser feito e como identificar sucesso ou falha.

A falta de medidas de segurança adequadas não impede o software de funcionar. Ele pode parecer correto para o usuário, mas, nos bastidores, informações sensíveis (dados pessoais, informações de pagamento, histórico de uso) estarão desprotegidas e vulneráveis a ataques. Isso é prejudicial para você e para seus clientes, já que violações de segurança causam estresse, escândalos e perdas financeiras.

Karpathy mencionou que o código produzido por ele e pelo Cursor “funciona na maior parte do tempo”. No entanto, “funcionar na maior parte do tempo” não é suficiente. Sempre haverá soluções rápidas, gambiarras, bugs e outros problemas em qualquer código. Dada a complexidade dos softwares atuais, isso é inevitável.

Se você pretende lançar um projeto público e cobrar pelo uso, é sua responsabilidade garantir a segurança. Deixar informações sensíveis desprotegidas é inaceitável, assim como presumir que elas estão protegidas sem confirmar adequadamente.

Um exemplo real é o caso de [@leojr94](https://x.com/leojr94_) no X, que compartilhou sua experiência em três posts:

* O primeiro post: “Criei uma API com segurança zero, tudo visível.”
* O segundo post: “Alguém descobriu a API e gastou 15 dólares.”
* O terceiro post: “Agora preciso adicionar autenticação.”

## Por que a Vibe Coding é problemática para você?

O desenvolvimento de softwares é caro. Mesmo eliminando os custos de desenvolvimento com vibe coding, ainda é preciso pagar pelo armazenamento de dados, transferência entre você e seus usuários e interação com outros serviços por meio de APIs.

Serviços como a AWS geralmente são pay-as-you-go, o que significa que você paga apenas pelo que usa. Isso parece ótimo, mas, quando você não tem controle sobre o software que está desenvolvendo, também não tem controle sobre o uso de dados. Seu código, gerado e montado aleatoriamente, pode ser extremamente ineficiente. Algumas linhas mal projetadas podem gerar de 3 a 10 vezes mais dados do que o necessário, aumentando seus custos. O pior cenário ocorre quando as coisas dão certo.

Imagine que você tem poucos usuários, as contas estão sob controle e o crescimento é lento, mas constante. De repente, seu conteúdo viraliza nas redes sociais, atraindo milhares de novos usuários. Isso seria ótimo, exceto pelo fato de que sua conta da AWS explode e você percebe que os custos de tráfego de rede por usuário são maiores do que o valor da assinatura que eles pagam.

## Qual a solução?

Alguns sugerem mais produtos, plataformas para vibe coders e “não-técnicos” que oferecem suporte extra para segurança, servidores e outros aspectos do backend. Outros argumentam que, com alguns ajustes, o vibe coding poderia democratizar o desenvolvimento de software e torná-lo mais inclusivo.

A realidade é que qualquer pessoa com um computador e acesso à internet pode aprender sobre ciência da computação, codificação, programação ou desenvolvimento de software. Muitos programadores são autodidatas e sempre serão. Se você quer criar um software, precisa aprender a fazê-lo.

Se você tem uma ideia, deve se esforçar para aprender a desenvolvê-la ou encontrar parceiros e investidores que possam ajudar a concretizá-la. Não existe uma opção mágica, sem esforço, onde você cria um produto funcional em pouco tempo e não precisa dividir os lucros com ninguém.

Se você quer falar outro idioma, precisa aprendê-lo. Se quer tocar guitarra, precisa aprender. E se quer criar um software, precisa aprender a desenvolver softwares. Se o caminho DIY (faça você mesmo) parece interessante, saiba que quem tem condições de usar vibe coding também pode estudar programação por meio de cursos gratuitos ou pagos. Talvez até usar ferramentas de IA para acelerar o processo.

E não é brincadeira: a programação é tão inclusiva que existe um “tipo de programação” para quase todos. Nem todo mundo será um arquiteto de software em uma grande empresa, mas alguns aprenderão o suficiente para criar jogos em C++, outros para criar aplicativos com Python e, mesmo que você decida que codificar não é para você, ainda poderá criar websites com HTML. Seja você um estudante dedicado ou alguém que nunca estudou, um gênio da matemática ou péssimo com números, você poderá criar algo.

## Quanto tempo a Vibe Coding vai durar?

É impossível saber o que Karpathy pretendia ao realizar esse experimento e compartilhá-lo online. Para alguns, parece que ele quis mostrar que é possível criar algo funcional mesmo tomando decisões ruins e pedindo coisas sem sentido.

Outros interpretaram como “Agora dá para criar softwares mesmo sem saber programar”. Mas isso não é verdade. A barreira entre você e o aplicativo que deseja criar não é a digitação de códigos. Você pode começar a entender isso com algumas horas de estudo. É apenas uma linguagem, um método de comunicação entre você e o computador, e é menos importante do que a informação que você quer comunicar. Se seu objetivo é ter uma conversa técnica com um físico experimental espanhol em seu idioma nativo, não basta aprender espanhol.

Projetar softwares, entender algoritmos, gerenciar dados, atender a padrões de segurança, construir para escalabilidade, otimizar e depurar são as habilidades que criam softwares. Então, não importa se o Cursor permite evitar a digitação de código, você não pode criar um aplicativo adequado se não souber nada sobre aplicativos.

Não se sabe o quão popular ou duradouro será o vibe coding, mas não vale a pena para uma pessoa não técnica tentar criar um produto dessa forma. Também não vale a pena para os consumidores arriscarem usar um produto desenvolvido com vibe coding, já que não há como saber se suas senhas e informações de pagamento estão seguras. Se você encontrar um novo produto independente que lhe interesse, descubra quem o criou e como antes de dar seu dinheiro.

Este conteúdo foi auxiliado por Inteligência Artificial, mas escrito e revisado por um humano.

Via Digital Trends

André atua como jornalista de tecnologia desde 2009 quando fundou o Tekimobile. Também trabalhou na implantação do portal Tudocelular.com no Brasil e já escreveu para outros portais como AndroidPIT e Techtudo. É formado em eletrônica e automação, trabalhando com tecnologia há 26 anos.