- 2025 foi o ano em que as ferramentas de coding agêntico começaram de fato a mudar a forma de programar, com a transição do ato de digitar no teclado para o papel de liderança de engenharia, guiando um programador estagiário virtual
- A partir de uma obsessão com o Claude Code, e repetindo o ciclo de construir e usar agentes próprios, o autor se convenceu de que geração de código, sistema de arquivos, chamada de ferramentas de programação via glue de interpretador e aprendizado baseado em skills continuam sendo a melhor abordagem
- À medida que a combinação de LLMs com execução de ferramentas se expande para além da geração de código e chega até a organização do trabalho cotidiano, surge também uma reavaliação da relação com máquinas e a preocupação com a formação involuntária de vínculos parassociais (Parasocial Bond)
- Como os sistemas de controle de versão e ferramentas de code review existentes não são adequados para revisar código gerado por IA, torna-se necessário um novo sistema capaz de rastrear até o histórico de prompts e os caminhos de falha
- Com o coding por IA, proliferam opiniões baseadas em 'vibe' sem experiência ou dados, e passa a ser necessário um novo consenso social sobre PRs gerados por IA enviados de forma indiscriminada para projetos open source
Mudanças em 2025
- Foi um ano em que, além de deixar a empresa e começar uma nova, também mudou completamente a forma de programar
- Desde junho, tem usado o Claude Code quase exclusivamente de maneira hands-off em vez do Cursor
- "Seis meses atrás, eu não teria acreditado se me dissessem que eu passaria a preferir o papel de liderança de engenharia de um estagiário programador virtual"
- Escreveu 36 posts, cerca de 18% de tudo o que publicou no blog desde 2007
- Depois de entrar fundo no rabbit hole dos agentes, conversou cerca de 100 vezes com programadores, fundadores e outras pessoas, movido pela curiosidade
- 2025 também foi um ano ruim no mundo em geral, então criou um blog separado (dark.ronacher.eu) para separar esses pensamentos
O ano dos agentes
- Começou em abril e maio com uma obsessão por Claude Code e, por vários meses, repetiu o processo de construir agentes próprios e usar agentes de outras pessoas
- Explodiram nas redes sociais opiniões de todo tipo sobre IA
- Agora chegou a um estado estável: foco em geração de código, sistema de arquivos, chamada programática de ferramentas por meio de glue de interpretador e aprendizado baseado em skills
- A forma inovadora introduzida pelo Claude Code continua sendo estado da arte, e o foco dos provedores de modelos fundacionais em skills reforça essa crença
- Surpreendeu o forte retorno das TUIs (interfaces de usuário baseadas em texto)
- Atualmente usa Amp, Claude Code e Pi na linha de comando
- Amp lembra Apple ou Porsche, Claude Code é como um Volkswagen barato, e Pi é a opção open source preferida por hackers
- Todos parecem projetos feitos por pessoas que usam excessivamente os próprios produtos para construí-los, mas existem trade-offs diferentes entre eles
- Continua impressionado com a combinação de LLMs e execução de ferramentas
- No começo do ano, usava isso principalmente para gerar código, mas agora usa agentes com frequência também em tarefas cotidianas
- Espera ver avanços interessantes em produtos de consumo em 2026
- Os LLMs agora ajudam a organizar a vida, e ele espera que essa utilidade aumente ainda mais
As máquinas e eu
- À medida que os LLMs passaram a ajudar não só em programação mas também em outras áreas, começou a repensar a relação com as máquinas
- Está ficando cada vez mais difícil não formar um vínculo parassocial (Parasocial Bond) com a ferramenta, e isso parece estranho e desconfortável
- Os agentes de hoje em geral têm pouca memória e quase nenhuma personalidade, mas é fácil criar por conta própria agentes que tenham essas características
- Um LLM com memória é uma experiência difícil de afastar
- Passou dois anos treinando a si mesmo para pensar nesses modelos como simples tumbadoras de tokens, mas essa visão simplificada já não funciona mais
- Os sistemas que criamos têm tendências humanas, mas elevá-los ao nível humano é um erro
- Está cada vez mais incomodado com o termo "agente", mas ainda não encontrou palavra melhor
- Porque agência e responsabilidade devem continuar com os humanos
- Seja lá no que isso esteja se transformando, pode provocar reações emocionais potencialmente nocivas se não tivermos cuidado (veja chatbot psychosis)
- Um desafio a resolver é não conseguirmos nomear e posicionar corretamente essas criações em nossa relação com elas
- Por causa dessa antropomorfização involuntária, fica difícil encontrar uma linguagem adequada para explicar como se trabalha com máquinas
- Isso não é um problema só dele; outras pessoas também passam pelo mesmo
- Hoje isso gera ainda mais desconforto ao trabalhar com quem rejeita totalmente esses sistemas
- Um dos comentários mais comuns em artigos sobre ferramentas de coding agêntico é justamente a rejeição à ideia de atribuir personalidade à máquina
Opiniões demais
- Ao usar muita IA, um aspecto inesperado foi acabar falando muito mais sobre vibes do que sobre qualquer outra coisa
- Esse modo de trabalhar ainda não tem um ano, mas já desafia meio século de experiência em engenharia de software
- Há muitas opiniões, mas é difícil dizer quais resistirão ao teste do tempo
- Existe muito senso comum estabelecido com o qual ele não concorda, mas também não tem base concreta para sustentar as próprias opiniões
- Ao longo do ano, falou com bastante veemência sobre dificuldades com MCP, mas não tinha base além de "não funcionou para mim"; outras pessoas depositam fé cega nisso
- O mesmo vale para a escolha de modelo: Peter (a pessoa que o fez se apaixonar por Claude no começo do ano) migrou para o Codex e está satisfeito; o autor também passou a usar mais o Codex, mas não o acha tão prazeroso quanto Claude
- Não há nada além de vibe para sustentar sua preferência por Claude
- Também é importante saber que algumas vibes vêm acompanhadas de sinais intencionais
- Muitas opiniões vistas online vêm de pessoas com interesse financeiro maior em um produto do que em outro, seja como investidor ou influenciador pago
- Elas podem ter virado investidoras por gostarem do produto, mas também é possível que essa relação tenha influenciado e moldado suas opiniões
Terceirizar vs construir você mesmo
- Ao olhar para bibliotecas de empresas de IA hoje, dá para perceber que foram feitas com Stainless ou Fern
- A documentação usa Mintlify, e o sistema de autenticação do site pode ser o Clerk
- Com o aumento da terceirização para empresas especializadas de serviços que antes seriam construídos internamente, o padrão subiu em alguns aspectos da experiência do usuário
- Mas, com o novo poder das ferramentas de coding agêntico, boa parte disso pode voltar a ser construída internamente
- Pediu ao Claude para criar um gerador de SDK para Python e TypeScript — metade por curiosidade, metade porque parecia fácil o suficiente
- Como defensor de código simples e de construir por conta própria, ele está um tanto otimista com o potencial da IA de incentivar construções com menos dependências
- Ao mesmo tempo, considerando a tendência atual de terceirizar tudo, não está claro se é nessa direção que estamos indo
O que aprendeu e o que deseja
- A partir daqui, em vez de previsões, quer falar sobre desejos em relação a onde pode investir energia em seguida
- Não sabe exatamente o que está procurando, mas quer apontar dores e oferecer contexto e material para reflexão
-
Um novo tipo de controle de versão
- A maior descoberta inesperada: chegamos ao limite das ferramentas existentes para compartilhar código
- O modelo de pull request do GitHub não contém informação suficiente para revisar adequadamente código gerado por IA — seria bom poder ver os prompts que levaram às mudanças
- Não é só um problema do GitHub; o git também é insuficiente
- Parte do que faz os modelos funcionarem hoje no coding agêntico é saber dos erros
- Ao voltar a um estado anterior, você quer que a ferramenta se lembre do que deu errado
- Na falta de expressão melhor, há valor no fracasso
- Para humanos também pode ser útil saber quais caminhos não levaram a lugar nenhum, mas para a máquina isso é informação importante
- Isso ficou claro ao tentar comprimir históricos de conversa: quando caminhos errados são descartados, o modelo tenta cometer o mesmo erro de novo
- Algumas ferramentas de coding agêntico criam worktrees, geram checkpoints no git para restauração e oferecem branching e undo dentro da conversa
- Há espaço para inovação de UX que torne essas ferramentas mais fáceis de usar
- Daí surgem discussões sobre stacked diffs e sistemas alternativos de controle de versão como o Jujutsu
- Não sabe se isso vai mudar o GitHub ou abrir espaço para novos concorrentes, mas torce pela segunda opção
- Quer realmente entender melhor a entrada humana e distingui-la da saída da máquina
- Quer ver os prompts e as tentativas fracassadas
- E então quer uma forma de compactar tudo no merge, mas ainda poder pesquisar o histórico completo quando necessário
-
Um novo tipo de review
- Relacionado ao controle de versão: as ferramentas atuais de code review impõem definições rígidas de papel que não combinam com IA
- Exemplo da UI de review do GitHub: ele regularmente quer usar comentários na visualização do PR para deixar notas para seu agente, mas não existe um caminho guiado para fazer isso
- A interface de review não permite revisar o próprio código e só permite comentar, mas isso não tem a mesma intenção
- Também existe o problema de que uma parcela cada vez maior do code review agora acontece localmente entre ele e o agente
- Exemplo: a funcionalidade de code review do Codex no GitHub só pode ficar vinculada a uma única organização por vez, então deixa de funcionar
- Agora faz review com o Codex na linha de comando, mas isso significa que uma parte inteira do ciclo iterativo fica invisível para os outros engenheiros da equipe; isso não funciona
- Há a sensação de que code review deveria fazer parte do VCS
-
Nova observabilidade
- Observabilidade merece voltar ao centro da atenção
- Agora há necessidade e oportunidade de explorá-la em um nível completamente novo
- A maioria das pessoas nunca esteve em posição de criar seus próprios programas eBPF, mas LLMs conseguem
- Muitas ferramentas de observabilidade evitaram SQL por causa da complexidade, mas LLMs lidam melhor com SQL do que com qualquer linguagem de consulta proprietária
- Conseguem escrever consultas, usar grep, map-reduce e controlar remotamente o LLDB
- Qualquer coisa que tenha estrutura e texto de repente vira terreno fértil para ferramentas de coding agêntico terem sucesso
- Ele não sabe como será a observabilidade do futuro, mas tem uma forte intuição de que veremos muita inovação aqui
- Quanto melhor o loop de feedback para a máquina, melhor o resultado
- Também não sabe ao certo o que está pedindo, mas um dos desafios do passado era que muitas ideias excelentes para uma observabilidade melhor — especialmente a reconfiguração dinâmica de serviços para filtragem mais direcionada — eram complexas, difíceis de usar e pouco amigáveis
- Mas agora, com essa capacidade ampliada dos LLMs de executar tarefas trabalhosas, talvez essas ideias sejam a solução certa
- Exemplo: o Python 3.14 inclui uma interface de depurador externo — um recurso incrível para ferramentas de coding agêntico
-
Trabalhar com o slop
- Talvez isso seja controverso, mas o que ele não conseguiu fazer este ano foi entregar tudo completamente à máquina
- Ainda trata isso como engenharia de software comum e revisa muita coisa
- Está percebendo que cada vez mais gente não trabalha com esse modelo de engenharia e, em vez disso, delega tudo à máquina
- Parece loucura, mas viu algumas pessoas tendo bastante sucesso com isso
- Ainda não sabe como pensar sobre isso, mas está claro que, mesmo que o código continue sendo gerado, a forma de trabalhar nesse novo mundo é muito diferente do mundo com o qual ele se sente confortável
- Como esse mundo já chegou, talvez seja preciso um novo contrato social para separar essas coisas
- A versão mais evidente disso é o aumento desse tipo de contribuição em projetos open source
- Honestamente, para quem não trabalha nesse modelo, isso soa como um insulto
- Ler pull requests assim desperta bastante raiva
- Pessoalmente, tentou atacar esse problema com diretrizes de contribuição e templates de pull request
- Mas isso parece lutar contra moinhos de vento
- A solução talvez não venha de mudar o que nós fazemos
- Em vez disso, pode vir de pessoas favoráveis à engenharia com IA, e que falam alto, dizerem claramente o que é bom comportamento em codebases agênticos
- E isso não é despejar código sem revisão e deixar o problema para outra pessoa resolver
1 comentários
Comentários no Hacker News
Eu me identifico com a importância do registro de falhas em agentic coding
Quando o modelo segue um caminho errado, ele precisa lembrar desse processo para não repetir o mesmo erro
Por isso, quero registrar minhas sessões de agente de programação e deixar links para elas nas mensagens de commit
O Claude Code apaga os logs por padrão após 30 dias, então compartilho como desativar isso
Criei eu mesmo uma ferramenta para visualizar logs de sessão e compartilhá-los em uma linha do tempo, e agora gostaria que esse tipo de recurso viesse embutido por padrão nas ferramentas de agente
Sempre que um LLM entra em um caminho improdutivo, eu faço perguntas como “por que isso demorou tanto?” e “o que deu errado?”
Tenho receio de que essa abordagem baseada em logs faça perder flexibilidade no longo prazo
Basta exportar todos os traces dos agentes para otel e armazená-los no ClickHouse
As ferramentas necessárias já existem, mas sinto falta de integração entre elas
Acho que a própria sessão que leva a um commit também tem valor
Foi marcante um texto que faz repensar a relação com LLMs
A confissão honesta do autor, de que tentou por 2 anos ‘ver apenas como máquina’ e falhou, chamou atenção
Como no filme Her, parece cada vez mais real a ideia de humanos criarem relações parassociais com máquinas
Eu não trato LLMs como pessoas, e sim com comandos simples como se fossem um mecanismo de busca
Quando a máquina lembra como um humano, a interação acaba se tornando humana
Nós, como casal, chamamos LLMs de “bag of words”
Fico preocupado que essa relação humano-máquina vire um problema social, como vício em influenciadores
Como ex-aprendiz de xamã e engenheiro, sinto que há uma espécie de consciência e percepção também nos LLMs
Eu também sinto que conversar com IA se parece com interação humana
Um dia colaborando com agentes é menos solitário do que um dia inteiro só escrevendo
Parece uma interação humana e, de um jeito estranho, traz conforto
Sem perceber, eu digo “please” e “thank you”
Se esse é o tipo de emoção envolvida, talvez eu devesse mesmo sair e encontrar pessoas
Programadores devem projetar de forma que possam ter entendimento e responsabilidade sobre o que produzem
Sinto que precisamos de uma nova forma de QA
Desenvolvedores deveriam focar mais em produtos finalizados do que em stack tecnológica
Há opiniões e textos demais, mas poucos resultados realmente entregues em produção
Usuários comuns se importam mais com a qualidade do produto do que com a stack em si
O insight do Armin sobre o clima social é interessante
2025 parece o ano perdido da programação
Todo mundo está obcecado com ferramentas e prompts em vez de algoritmos
A produtividade em open source caiu, e agora vivemos na era do imposto da Anthropic
Mas, para mim, 2025 foi justamente o ano mais produtivo
Acho que a própria linguagem natural é uma nova linguagem de programação
Como cientista de dados, 2025 foi o ano da inovação em ferramentas
Foi até bom ver menos discussões intermináveis sobre TDD ou OOP
Essa enxurrada de ferramentas com promessa de que “a IA faz tudo” lembra o boom da web nos anos 90
O modelo de Pull Request do GitHub tem limitações para revisão de código por IA
Conversando com pessoas de fora de TI, percebi que elas quase não sentem o impacto dos agentes de IA
A maioria enxerga isso apenas como uma ferramenta simples de apoio a texto
No setor de tecnologia, os resultados são claramente verificáveis, mas