×

Educando um computador – Meio

Educando um computador – Meio

Educando um computador – Meio

Era uma fresca tarde de primavera em Pittsburgh, a então poderosa capital da indústria do aço americana. Naquele sábado, 3 de maio de 1952, cerca de 500 dos maiores especialistas no nascente campo da computação atravessaram as portentosas colunas de mármore do Instituto Mellon para um dos primeiros encontros nacionais da Associação das Máquinas Computacionais (ACM na sigla em inglês). Entre os palestrantes daquele dia estava Grace Hopper, primeira mulher a obter um PhD em matemática por Yale, e já reconhecida como uma experiente cientista daquele novo ramo que estava surgindo. Em sua palestra, chamada A Educação de um Computador, Hopper fez o que talvez seja a primeira descrição do que seria um compilador. Ou seja, um programa de computador que “traduzia” um texto escrito, seguindo certas regras, para códigos de máquina que os computadores entendiam.

Naquele tempo quase toda a programação era feita no que se chamava de Assembly, uma linguagem crua, com mnemônicos que eram convertidos nos comandos primários que os processadores usavam. Para programar era preciso entender a fundo como o processador daquele computador operava, os endereços de memória onde cada função ficava e como toda a arquitetura do hardware funcionava.

Embora o Assembly fosse um salto imenso em relação a escrever direto o código de máquina em hexadecimal, ele ainda era extremamente complexo. O que Hopper estava propondo era criar uma nova linguagem, simplificada, e desenvolver um programa que, lendo códigos escritos nessa linguagem, os convertesse para Assembly, para então poder ser executado nos grandes computadores. Hopper levou para o evento 200 cópias de seu paper. Ao final de sua palestra, mais da metade das cópias seguiam intocadas.

A resistência dos programadores de mais de sete décadas atrás até ameaçou se reproduzir agora, diante dos avanços inimagináveis da inteligência artificial. Só durou bem menos. Enquanto a maior parte da sociedade usa apenas as ferramentas de chat, na maioria das vezes gratuitas, e faz piadas dos seus erros grosseiros, a evolução assombrosa da capacidade da IA de codificar passa despercebida por muitos. Hoje, um grupo cada vez maior de programadores e cabeças experientes do mundo da tecnologia já assume que escreve cada vez menos linhas de código. Eles passaram esse trabalho para as IAs, buscando educá-las para programar cada vez melhor. E estão percebendo um aumento exponencial de suas produtividades.

Mas revisitar a história desse progresso pode ser bastante revelador. Ainda em 1952, Hopper lançou o A-0, que convertia fórmulas matemáticas para código de máquina. Para os padrões atuais, o A-0 não chegava a ser um compilador completo, mas é certamente um antepassado dos compiladores. Tempos depois Hopper contou que, quando finalizou o A-0, ninguém queria nem chegar perto dele. Programadores de verdade, de acordo com a mentalidade da época, escreviam código em Assembly e não estavam preparados para deixar um computador escrever código para e por eles. Foram necessários alguns anos, e um homem, para a história começar a mudar.

A primeira geração

John Backus era um pesquisador da divisão de ciência aplicada da IBM. Ele tinha desenvolvido uma linguagem chamada Speedcode para o IBM 701, o novo computador comercial de alto desempenho da empresa. Eram ainda tempos pré-transistores e o Speedcode, apesar de simplificar a programação, era uma linguagem interpretada, rodava muito mais lenta do que códigos escritos em Assembly. Isso deixou claro para Backus que, para que esse conceito funcionasse, era preciso que o código fosse tão eficiente quanto códigos de máquina.

No final de 1953, a IBM começou a desenvolver o 704, sucessor do 701. Backus escreveu uma carta para seu chefe, Cuthbert Hurd, propondo o projeto de uma nova linguagem compilada, o Fortran (FORmula TRANslation). A principal justificativa para o projeto era que o custo de contratar programadores para os computadores IBM já era mais alto do que o custo dos próprios computadores, e uma parte imensa do poder de computação estava sendo gasta para corrigir bugs. Backus garantia que o Fortran era a solução para esse dilema.

O projeto foi aprovado e Backus montou uma pequena equipe de formação bem pouco usual: um mago do xadrez, um especialista em cristais, um criptógrafo e a única mulher do time, Lois Haibt, recém-formada pelo mesmo Vassar College onde Grace Hopper havia estudado. O objetivo deles era transformar uma linguagem matemática rica em um programa de máquina econômico, a um custo suficientemente baixo para tornar viável todo o projeto. Em entrevistas posteriores, Backus admitiu que ele e seu time eram muito otimistas e acreditavam que sua linguagem eliminaria todo tipo de bugs e problemas de desenvolvimento. Backus confessou também que seu desejo por criar o Fortran em parte era causado por sua preguiça em programar em Assembly.

Apesar disso, Backus e seu time foram extremamente detalhistas e focados em desenvolver um compilador que gerava códigos muito otimizados. Backus teve inclusive de convencer o time de arquitetura do 704 a modificar alguns detalhes do processador para funcionar melhor com seu compilador. O otimismo inicial era que a linguagem seria lançada em 6 meses. Eles precisaram de mais de 2 anos para desenvolver o projeto. Quando foi finalmente lançado, em 1957, o Fortran gerava códigos muito eficientes e logo caiu nas graças de cientistas e desenvolvedores. Em 1958, um estudo feito pela IBM indicava que metade dos 26 IBM 704 vendidos já rodavam programas em Fortran para mais da metade dos seus trabalhos. Alguns chegavam a usar o Fortran em 80% dos seus programas.

A barreira havia caído e logo vieram diversas novas linguagens como Cobol, Lisp e tantas outras. Atualmente, poucos programadores ainda sabem algo de Assembly.

Criador e criatura

Donald Knuth é o autor de The Art of Computer Programming, obra considerada a grande bíblia da programação. Os três primeiros volumes foram publicados entre o final dos anos 1960 e início dos anos 1970. Os livros são, como revela o título, uma ode à arte de programar. Profundamente analíticos, formam uma grande enciclopédia, organizando algoritmos de toda sorte em meio a citações, referências e comentários bibliográficos.

Knuth não só definiu em detalhes toda a estrutura do que viria a ser a ciência da computação como serviu como um grande arquivista e historiador da área. O lançamento dos três primeiros volumes foi tão impactante que Donald Knuth recebeu em 1974 o prestigioso prêmio Turing da mesma ACM em cujo congresso anual Grace Hopper fez sua apresentação. De lá pra cá gerações de programadores aprenderam algoritmos usando seus livros.

Em fevereiro deste ano, Knuth, agora com 88 anos, publicou um paper no site do departamento de ciência da computação da Universidade de Stanford. O artigo abre com a dupla exclamação “Choque! Choque!”. O que o deixou abismado foi saber que na véspera o Claude Opus 4.6 havia resolvido um problema matemático de circuitos hamiltonianos dirigidos em que o professor estava trabalhando havia algumas semanas para o próximo volume de The Art of Computer Programming.

Knuth já tinha resolvido esse problema para grafos de tamanho m=3. Um amigo dele, chamado Filip Stappers, que tinha conseguido uma solução empírica para tamanhos entre 4 e 16, resolveu passar para o Claude o problema usando as anotações de Knuth e pedindo para o modelo ficar rodando de forma iterativa testando soluções diferentes e aprendendo com seus erros. Em cerca de uma hora o Claude havia criado um algoritmo que resolve o problema para qualquer tamanho ímpar.

Em abril, Knuth revisou seu paper, dizendo que depois de sua publicação, outras pessoas utilizando o Claude e o GPT resolveram também o problema para os casos de tamanho par. Knuth fecha seu artigo dizendo que o caso o fez mudar sua opinião sobre IA generativa e que o que estamos vendo é um avanço dramático da tecnologia. E encerra dizendo que o trabalho conjunto entre humanos e LLMs deve gerar significativas implicações sobre como resolvemos problemas.

As rédeas

O termo vibe coding surgiu de um post de Andrej Karpathy no X, em fevereiro de 2025. Karpathy nasceu em 1986 numa ainda comunista Tchecoslováquia. Era muito novo para entender a Revolução de Veludo que derrubou o regime comunista e viu alguns anos depois o país ser dividido em dois. Viveu em Brastislava, na Eslováquia, até os 15 anos, quando se mudou com a família para o Canadá, no início dos anos 2000. Lá, Karpathy se matriculou na Universidade de Toronto, onde inicialmente queria estudar computação quântica. Acabou se envolvendo com inteligência artificial e machine learning e chegou a ter aulas com Geoff Hinton, um dos papas da IA.

Depois de formado, fez um mestrado em ciência da computação na University of British Columbia e partiu para um doutorado em Stanford. Em 2015, estava conduzindo pesquisas de IA na fronteira entre visão e linguagem e começando a aparecer como uma das jovens promessas do campo. Isso lhe garantiu um convite para fazer parte do time fundador da OpenAI. Ficou na empresa até 2017, quando foi convidado por Elon Musk para desenvolver o sistema de direção automática do Tesla.

Em seu tweet, Karpathy explica o que chamou de vibe coding. Diz que é uma forma de programação na qual você se entrega totalmente às vibes, abraça os exponenciais e esquece que o código sequer existe. Funciona, garante ele, porque os LLMs estão ficando muito bons. Diz ainda que mal toca no teclado, usa transcrição automática da sua voz, pede o que quer, aceita quase todas as decisões da máquina e raramente olha o que está mudando no código. Quando não funciona, copia a mensagem de erro e devolve para a IA que, em geral, resolve o bug. Termina dizendo que o resultado final não é tão ruim, e que, para projetos simples de fim de semana, entrega bem.

Foi uma febre. De um dia para o outro, milhares de pessoas resolveram virar “vibe coders” e, apesar de resultados iniciais muito impressionantes, problemas de segurança, bugs esquisitos e muitos memes, fizeram grande parte dos profissionais da programação descartar a coisa como uma moda passageira.

Mas um ano é uma infinidade de tempo na forma como a inteligência artificial está progredindo. Entre o final de 2025 e o início de 2026, desenvolvedores começaram a comentar entre si sobre os resultados que estavam tendo com o Claude Code. Não estavam usando a ferramenta da forma como Karpathy descreveu e indo só pelas “vibrações”, mas sim usando de forma estruturada, criando agentes separados para escrever o código, testar e avaliar. Cada agente especializado em uma função, rodando em loop.

O papel do desenvolvedor deixou de ser escrever o código em si e passou a ser escrever especificações detalhadas do que ele deveria fazer. Criar agentes específicos, dar trabalhos para esses agentes e usar um agente para avaliar o trabalho de outro. Isso coincidiu com o lançamento da versão 4 do Opus, o modelo de alto desempenho da Anthropic, disponível no Claude, que começou a ser lançada em agosto de 2025.

No final de janeiro, Karpathy fez um novo post no X, explicando como o uso da ferramenta fez ele reverter a proporção de escrever 80% do seu código enquanto IAs escreviam 20% para o inverso, com a IA escrevendo já 80% de todo código que ele produziu em dezembro, com ele cuidando de editar e corrigir os 20% restantes. Seu post descreve um método muito diferente do que o vibe coding de um ano atrás. É um processo extremamente estruturado e organizado de uso das novas ferramentas.

O que Karpathy está descrevendo é o que em inglês tem sido chamado de harness, as rédeas que controlam o LLM selvagem. É na verdade uma camada de orquestração que controla os agentes, decide o que cada um sabe e o que cada um faz. O trabalho de um programador está se tornando menos o trabalho de escrever código e mais o de educar o computador para escrever o código da forma desejada.

Boris Cherny, chefe de desenvolvimento do Claude Code, respondeu contando da experiência de seu time. Ele próprio estava havia dois meses escrevendo 100% de seu código com o Claude. Um porta-voz da Anthropic disse à Fortune que 70% a 90% de todo código gerado na empresa estava sendo escrito por IAs. Em abril foi a vez de o Google anunciar que 75% de todo código desenvolvido por eles já é escrito por IAs. O volume impressionante de lançamentos da Anthropic nesses últimos meses mostra bem o ganho de produtividade que essas ferramentas estão gerando.

Da mesma forma que os compiladores enfrentaram resistência no seu surgimento, mas ganharam ampla adoção quando começaram a gerar códigos eficientes, o mesmo está acontecendo com a inteligência artificial. A mudança que isso vai gerar é muito mais ampla do que apenas para empresas de tecnologia e já começa a entrar em grandes e médias empresas. Essa semana a Harvard Business Review publicou um artigo que explora como essa nova forma de programar deve afetar esses negócios.

Nas últimas décadas, um dos principais pontos de venda dos grandes sistemas de software corporativo era de softwares customizados caros demais para desenvolver e manter e as empresas deveriam se adaptar ao que chamavam de boas práticas do mercado e contratar soluções como ERPs. CRMs e etc desses fornecedores e adaptar seus processos a eles. Agora, com IA, as empresas começam a ter incentivos para criar suas próprias soluções e voltar a inovar em processos para se diferenciar de seus concorrentes.

Estamos entrando em um mundo novo. Com riscos, claro, mas também com muitas oportunidades para quem se movimentar rápido e abraçar esse novo e fascinante mundo.

Créditos