Terça-feira, 20 de outubroEdição para quem toma decisão
bash//Tecnologia
TECNOLOGIAApurado

IA está matando a programação — ou tornando programadores melhores?

Ferramentas de inteligência artificial já escrevem código, encontram bugs e criam aplicações inteiras. Mas isso significa que os programadores estão ficando obsoletos?

Ator will smith olhando para um robo
"I, Robot (2004)"

Faz alguns meses eu pedi para uma IA resolver um problema chato de integração. Em trinta segundos veio o código: bonito, comentado, com tratamento de erro, nomes de variável melhores que os meus. Colei, rodou, funcionou. Fechei o ticket e fui almoçar.

Três semanas depois o sistema quebrou de um jeito que ninguém entendia. O código estava certo. O problema era que ele resolvia um caso que não era exatamente o nosso — e eu não tinha percebido porque nunca parei pra ler direito. Eu não escrevi aquilo. Eu aceitei aquilo.

Essa é a discussão inteira em um parágrafo.

A IA escreve código melhor que humanos?

Em trechos isolados, quase sempre sim. Peça uma função de validação de CPF, um parser de CSV, um endpoint REST básico. O que sai é melhor que o que 90% dos desenvolvedores escreveriam às 17h50 de uma sexta-feira. Sem preguiça, sem gambiarra, sem // TODO: arrumar isso depois.

Só que software raramente é um trecho isolado.

A IA não sabe que aquele campo do banco tem lixo desde uma migração mal feita em 2019. Não sabe que o cliente jura que o processo é A, mas na prática o time faz B. Não sabe que aquela regra "óbvia" tem três exceções que só existem na cabeça de uma pessoa do financeiro. Ela escreve um código excelente para o problema que você descreveu — e o trabalho difícil nunca foi escrever, foi descobrir qual é o problema.

Programar sempre foi 20% digitar e 80% entender. A IA automatizou muito bem os 20%.

O que muda de verdade na rotina

Muda o gargalo. E quando o gargalo muda, o trabalho todo muda de forma.

Antes, a parte lenta era produzir. Você passava a tarde escrevendo, testando, ajustando. Hoje o código aparece mais rápido do que você consegue avaliar. O tempo migrou de "escrever" para "decidir se aceito".

Na prática isso significa que passei a fazer mais revisão de código do que escrita de código — e revisão de código que ninguém escreveu, o que é uma categoria nova e estranha. Quando um colega manda um pull request, você sabe como ele pensa, conhece os vícios dele, sabe onde olhar. Com IA não existe padrão de erro: o mesmo modelo que acerta uma arquitetura complexa inventa um método de biblioteca que nunca existiu, com uma confiança absoluta.

Mudou também o custo de tentar. Antes, testar uma abordagem alternativa custava dois dias, então você defendia a primeira escolha até a morte. Hoje custa vinte minutos. Isso é libertador — e é um convite e tanto pra ficar refazendo coisa que já estava boa.

Mais produtivos ou mais dependentes?

Os dois, e a resposta honesta é que depende de como você usa.

A analogia do GPS é batida, mas funciona. Quem usa GPS chega mais rápido. Quem só usa GPS nunca aprende a cidade — e no dia que o sinal cai, está perdido em um bairro onde passa toda semana.

O sintoma é fácil de identificar em você mesmo: se travar a internet por uma hora, você ainda consegue trabalhar? Se a resposta for "mais ou menos", tudo bem. Se for "não faço ideia de como isso funciona", aí tem um problema — e o problema não é a ferramenta.

Existe um detalhe cruel aqui. A IA acelera muito quem já é bom e acelera aparentemente quem está começando. O júnior entrega rápido, o código passa na revisão, todo mundo fica feliz. Só que ele pulou justamente a parte que formava a intuição: quebrar a cara, debugar por três horas, entender por que aquilo não funcionava. Essa dor tinha função.

Ainda vale a pena aprender a fundo?

Vale mais do que antes, e por um motivo pouco intuitivo: revisar é mais difícil que escrever.

Escrever código você faz no seu ritmo, com o seu vocabulário, dentro do que você domina. Revisar código alheio exige entender uma solução que você não teria construído, avaliar decisões que você não tomou e detectar o que não está ali. Debugar código que você não escreveu é notoriamente mais caro que debugar o seu próprio.

Ou seja: a IA transformou todo desenvolvedor em revisor sênior em tempo integral, sem perguntar se ele tinha a senioridade pra isso.

Fundamento não virou opcional. Virou pré-requisito pra usar a ferramenta sem se machucar.

Os riscos de simplesmente colar

Alguns são clássicos, outros são novos:

Código que parece certo. É o mais perigoso. Um erro de sintaxe o compilador pega. Uma lógica sutilmente errada, bem formatada e bem comentada, passa por três revisões e chega em produção.

Segurança por omissão. Modelos aprenderam com código público, e código público está cheio de exemplo didático sem validação, chave hardcoded e query concatenada. O modelo entrega o que é comum, não o que é seguro.

Dependências que não existem. É comum a IA sugerir um pacote com nome plausível que simplesmente nunca foi publicado. Já existe gente registrando esses nomes inventados justamente pra plantar código malicioso — e você instala sem pensar duas vezes, porque o nome fazia todo sentido.

Dívida técnica invisível. Cada trecho funciona. O conjunto não tem coerência nenhuma: cinco estilos diferentes, três formas de tratar erro, nenhuma decisão arquitetural explicada. Ninguém documenta o "porquê" de um código que ninguém pensou.

Responsabilidade. Quando dá ruim, o cliente não quer saber qual modelo você usou. Seu nome está no commit.

O programador do futuro

A pergunta costuma ser colocada como escolha: será quem sabe programar ou quem sabe usar IA pra programar?

É uma falsa escolha. Em 2005 dizia-se que o futuro era de quem soubesse pesquisar no Google. Estava certo — e nem por isso quem só sabia pesquisar substituiu quem sabia programar. A ferramenta virou parte do ofício, não o ofício.

O que muda é onde está o valor. Ele sai da produção e vai pro julgamento: saber o que construir, o que não construir, quando a resposta bonita da IA está errada, quando aceitar 80% e seguir, quando parar tudo e entender de verdade. Esse tipo de julgamento não vem de prompt. Vem de ter errado bastante.

A IA não está matando a programação. Está matando um perfil específico de programador — aquele cujo diferencial era digitar rápido e lembrar de sintaxe. Esse já estava com os dias contados de qualquer jeito.

Pra quem restar, o trabalho ficou melhor: menos código repetitivo, mais problema de verdade. Contanto que a gente não esqueça de ler o que colou.

Imagem: "I, Robot (2004)"


bash//