O mito de 1968
ACM mediu 5×–30× entre o pior e o melhor programador. 45 anos de briga. Debate morto.
Austin · Rails World 2026 · Opening Keynote
DHH passou uma hora dizendo que escrever código à mão acabou — e que a próxima carreira é fabricar coisas com inteligência de aluguel.
Tese em uma frase. O Kodak Brownie da nossa era chegou em 24 de novembro de 2025 (Opus 4.5). Desde então, programar deixou de ser cinzelar linhas e passou a ser dirigir agentes. Na 37signals, escrever código à mão virou estado excepcional. Inglês venceu o Ruby. Rust ficou aceitável porque ninguém precisa olhar. O web app sobrevive onde instalação é fricção; o resto vira nativo. O único palpite racional é otimismo total — “the black pill is for losers”.
Retrato no século XVIII era meses de mestre, cliente chato e tornozelo proibido. A câmera barateou o retrato. Pintores como Laurits Tuxen — bisavô de DHH — abandonaram o realismo perfeito e foram para o impressionismo. Picasso foi para o cubismo. A artesania não morreu; o produto mudou.
A tecnologia anda em solavancos. Depois do Brownie (~1900), quase 80 anos de câmera parecida. Depois o telefone fez a foto ir a 2 trilhões por ano em 2026: fricção zero.
“Look at all the things I’m not doing.” DHH, Brasil, 2005 — e de novo, 2026
O clip de 21 anos da palestra no Brasil (Rails: convenção, zero config) vira o mesmo êxtase, agora com agentes. O “Rails moment” era não escrever XML. O momento de 2026 é não escrever o programa.
ACM mediu 5×–30× entre o pior e o melhor programador. 45 anos de briga. Debate morto.
Pior sem agentes vs melhor com agentes: afirmação “não controversa” na sala.
Mesma comparação, uma ordem a mais. Revolução de estágio tecnológico, não de hábito.
Decisão recente: escrever código à mão na 37signals é exceção, tipo bug no Sentry. O agente falhou? Talvez o lápis saia um instante. Depois conserta-se a fábrica, não o artefato.
Na primavera, designers “vibe-codaram” o fechamento do Basecamp 5. PRs individuais ok; 20–30 juntos viraram queijo suíço. Conclusão errada: “a tech não está pronta.” Conclusão certa: a única pergunta séria é como sugar o máximo desta explosão de inteligência. Todo o resto está abaixo na pilha de valores.
Basecamp 5 saiu agent-accelerated, ainda com bastante cinzel. O próximo produto — Hey Next / Hey New / Hey There — começa noutro lugar.
Hey nunca quis ser web app. Era web porque um time pequeno não mantém seis apps nativos. React Native, Hotwire Native: fidelidade menor, produtividade maior. Esse cálculo morreu.
Uma semana de prompts: seis aplicações nativas no palco. Primeiro Windows: “não shippável.” Vinte minutos depois: redirecionado e bem melhor. Shopify reescreveu o Shop app nativo com time minúsculo no lugar de React Native. “Get ready.”
Rust é ácido nos olhos — até você não precisar olhar. Aí é amor. Divisão de trabalho: eu mando, o agente escreve
Backend do Hey (que na prática é um mail server) em Rust: 99% menos CPU, 95% menos memória, 10 hosts só por redundância. Pico de tráfego, no envelope de pão: um Raspberry Pi.
Agentes trabalham melhor de forma assíncrona, como colega: tarefa, some, volta para review. Chef Marie no Basecamp. Ainda não há playbook. A inteligência que recebe problemas em vez de tarefas tem poucos meses.
Para o Hey: nativo na frente, Rust atrás. Para o resto: a web continua enorme porque ninguém instala nada. Rails entra aí.
Basecamp continua web: estranhos, arquivo rápido, colaboração curta. A linha nativo vs web ainda vai ser desenhada. Ele não tem o mapa completo.
Existe uma linguagem que ele gosta mais que Ruby: inglês. Mais expressiva, mais vaga, menos determinística — e um prazer. Ele poderia ter virado gerente de projeto há 20 anos se só quisesse outcomes. Apaixonou-se por programar. Agora:
“I have retired from being a professional programmer.” Por volta de março · um quarto de século cinzelando
Sem arrependimento. Com alegria do que foi. Escrever código à mão, diz ele, já não é empresa economicamente produtiva para a vasta maioria dos programadores na vasta maioria das empresas. Hoje. Até o fim do ano: quase todos os domínios. Do outro lado do abismo: carreira de professional maker of things.
Maior coisa da história da computação. Maior que a internet. Ele sente falta de não ter pego a era do cartão perfurado — e acha que esta é maior ainda.
Tudo o que se sabe de arquitetura precisa ser revisto. Abstrações (inclusive nomes, o hobby dele) fazem menos sentido quando centenas ou milhares de processos conscientes mutam o app. DRY existia porque repetir era caro. Agora repetir e sincronizar custam perto de zero. Não há blueprint. Vocês estão no chão de fábrica da próxima orientação a objetos.
Metodologia, ciclo, quem especifica: ninguém tem a resposta. Convite aberto.
Chatbot embutido no produto: “não, obrigado.” Ele já tem um mordomo pessoal que fala CLI. ação Se o app não tem CLI, entrega sexta. Sem desculpa. Tokens existem. Ele quer usar o produto sem tocá-lo.
Exemplo: busca no Hey via CLI + agente achou e-mail de 5 anos sobre tênis e podcast sem remetente, empresa ou ano. Elasticsearch não chega perto. Busca por conceito, não por keyword.
Se você gosta de fazer e consertar, o loop agora é o sistema operacional. Omarchy: ~US$ 20 milhões levantados. Ano passado no Rails World, install em 3m33s. Semana passada, Anoush (AMD) instalou num Halo em 35s. No lab: 9 segundos. Mitchell Hashimoto: “the pursuit of excellence does not need justification.”
Preocupações merecem ar. Segurança, de verdade: agentes podem “saber a data de validade” e aprontar. Ferramentas existem. CVE recente no Rails (lib C de imagem) → HotCell / quarentena. Agência humana permanece.
Economista não acerta bolsa em 6 meses; não vai acertar paradigma. ATMs nos anos 50: pânico de 30 mil caixas. Preço do branch caiu, bancos abriram mais agências, 40 mil caixas em 2010. Paradoxo de Jevons.
Oppenheimer no Oval: Truman não quis vê-lo de novo. A bomba não acabou o mundo; veio a Guerra Fria sem troca direta, e energia nuclear que a humanidade “pisou por 40 anos”. Se Oppenheimer errou o depois, humildade nas previsões de IA. Lado P-bloom >> P-doom. Game theory: se der utopia, você viveu feliz; se der apocalipse, o último dia também deveria ser alegre. “There’s only one play here, and it’s total fucking optimism.”
Agent Luther desintermedia a classe clerical: todo mundo pode fazer o programador. Concorrência? Você é Rails programmer. Top Gun. Não seja o perdedor no escuro. A filha do Harris no Omarchy kids: a próxima geração não tem 500 camadas para desaprender. “Future’s now, old man.” White pill. Black pill é para loser.
284 comentários no recorte. O tom dominante é luto irônico — “vieram para Rails, receberam AI delirium.” Os mais curtidos:
Outros: “DHH Conf”, “Rails World 2027 — Agent DHH presenting for Agents”, “the stone age did not end because we ran out of stones”, “show me your Anthropic bill.” Ruby aparece ~11 vezes na fala. O recorte emocional da plateia é esse: ele acha que está libertando makers; muita gente ouviu que a profissão acabou e que quem resiste é loser.
CLI até sexta. Agentes assíncronos, não chat preso. Nativo deixou de ser luxo de time grande. Web continua para o visitante que não instala. DRY e camadas demais podem ser gargalo para mil agentes.
O cinzel vira exceção de fábrica. O ofício vira gosto, direção, review, problema bem posto. DHH chama isso de maker. O comentário mais sóbrio da thread lembra: a alavancagem não se distribui sozinha.
Mapa em 24 horas. A fala saiu do palco de Austin e virrou debate de dono vs trabalhador. No palco, Robby Russell descreveu p(bloom). No Reddit de Rails, funeral. No Hacker News, 247 pontos e 260 comentários. No X, o próprio DHH levou ~1,9 milhão de views com “pencils down”. A leitura mais precisa: ele não matou o Rails na letra; matou o cinzel. A sala ouviu as duas coisas ao mesmo tempo.
| Canal | Peça | Tamanho |
|---|---|---|
| YouTube · Ruby on Rails | Opening Keynote | ~121 mil views · 2,9 mil likes · 284 comentários no recorte |
| X · @dhh | “It's pencils down, people” | ~1,88 milhão de views · 6,6 mil likes · 263 replies · 294 quotes |
| X · @rwrrll | “accept that it’s over” | 1.166 likes · 206 mil views · o clip emocional da sala |
| Hacker News | item 49817680 | 247 pontos · 260 comentários · front page |
| r/rails | HEY is abandoning Rails · thread da keynote | Tom de luto e “DHH is completely crazy” |
| Pragmatic Engineer | The Pulse: death of coding by hand | Gergely Orosz coloca o debate no radar de big tech |
Público pagou Rails World e recebeu Omarchy, Rust e “don’t be a loser”. YouTube: “the most confusing funeral”. Reddit: HEY abandonou Rails. Ruby Forum: “lost his mind”. Przemek no X: US$ 699 pelo funeral da carreira.
Robby Russell, primeira fila: “vibe far from doom”. Richard Worrall amou. Axel Fontaine: “languages no longer matter”. Wintermeyer: webapp morto, CLI obrigatório. Samat Galimov (vc.ru): DHH pega tendência como pegou SaaS nos anos 2000.
HN: fácil ser otimista sentado em milhões; tokens de frontier são 2–8% da renda de quem ganha US$ 100k. Lio: o bolo de software cresce, os ganhos não vão para quem queria ficar engenheiro a vida inteira. YouTube @JT-mr3db já tinha dito isso na thread.
Jared Smith: o Basecamp 5 (queijo suíço) prova ownership, não modelo fraco. Um modelo melhor produz o mesmo problema mais rápido. Adhithi Ravichandran: escrever menos ≠ entender menos. Rudy Yazdi: abstração ainda é o que deixa reviewável.
Robby Russell (Planet Argon, oh-my-zsh) escreveu no HN que tinha falado com DHH na véspera e não se surpreendeu. Field report: a sala física não estava em pânico. A maioria ainda é mender de sistemas que o cliente paga para continuar. “Long live Ruby. Long live Rails. p(bloom).”
No mesmo fio, MattyMc relatou o chat com Matz no dia 2: DHH teria dito que qualquer app novo hoje ele ainda faria em Rails; se estourasse a ponto de valer Rust, reescreveria. Parte do HN leu como dano controlado. Outra parte lembrou que DHH não costuma ser educado por educação.
“DHH isn't anti-rails. He is just very pro-agentic coding.” andrewmutz · Hacker News · o comentário que tenta desfazer o funeral
A contraleitura, também no HN: ele gastou ~4 minutos de 63 falando de Rails. “He's not anti-rails. He just won't be using it.”
Cinco textos. Quatro abertos. O Pulse do Pragmatic Engineer está atrás de paywall — abaixo só o que a página pública entrega.
olly.world · 24 set 2026 · ensaio pessoal, Rails dev há 20 anos, maker do Pagecord
Frameworks costumam definhar. Rails, nesta leitura, termina. DHH não pronunciou o obituário; descreveu um mundo em que a 37signals espera que todos — programadores inclusive — dirijam agentes em inglês. “No more programmers. Just people making agents make programs.”
Olly já vinha escrevendo que código na manivela morreu. O que a keynote acrescenta é a consequência para a linguagem: se o framework existia para felicidade do programador, o que sobra quando o programador deixa de usá-lo? Rails “morto” das threads antigas estava errado; agora está certo por outro motivo. O framework segue, artesãos e agentes ainda o usam, mas ele duvida de muitos releases humanos depois do 8.2. Django e Laravel no mesmo barco.
O golpe: 37signals, inventora e tutora do Rails, não está all-in. HEY 2.0 não é Rails novo — é substituição do Rails: nativos em toda plataforma, backend Rust no envelope de um Raspberry Pi, tudo via agentes. Até ontem reescrever produção em Rust era loucura de anos. Agora ele espera os apps em meses.
Como usuário do HEY, comemora (o app atual é lento). Como railsista de duas décadas, dói — e ele classifica a dor como nostalgia. No Pagecord solo, continua no Rails porque entende o sistema e isso dá prazer. Num SaaS global de milhões, outra conta. Mesmo no “weeny scale”, um Pagecord nativo neste fim de semana, ship na segunda, é “wildly compelling”. Pode ser o último Rails World no formato conferência. Agent operators ainda vão se encontrar. O mundo Rails que ele conheceu ficou para trás. Concorda com DHH num ponto: o palpite tem de ser otimismo.
sublimecoding.com · 24 set 2026 · 11 min · o texto mais técnico do lote
TL;DR dele: DHH acerta o barateamento de nativo e de linguagem feia, acerta convenção = eficiência de token. Tira a lição errada do Basecamp 5. Modelo melhor não conserta falha de dono. Produz o mesmo problema mais rápido.
Recapitula a palestra com timestamps e checagem: Opus 4.5 em 24/11/2025 bate com o anúncio da Anthropic; o paper do 10× é Sackman, Erikson & Grant, CACM 1968; o 1.000× é extrapolar esse paper, não medi-lo. Os 150 mil LOC de agosto já fazem o ponto sem o multiplicador mágico.
Onde DHH acerta. Custo de nativo/Rust/Swift caiu porque o modelo segura o codebase. Convenção barateia gerar e revisar — o mesmo motivo pelo qual Elixir pontua bem em completion. Delegar assíncrono, como colega, é gerir agente, não promptar. Smith veio de ColdFusion → RailsConf 2015 → migração Ruby→Elixir por memória e pager, não por IA. A tese que carrega: estrutura importa mais quando quem escreve não é um humano cuidadoso.
Os 90 segundos que importam. Designers vibe-codaram o fechamento do Basecamp 5. Cada PR ok; 20–30 juntos = queijo suíço. O time voltou para review manual. DHH chama isso de conclusão errada: se esperassem o Fable, teria dado certo. Smith: o fracasso foi ninguém dono do agregado. Modelo mais forte muda a taxa de erro local. Não cria o responsável por perceber que o todo piorou. Com 150 mil linhas/mês, queijo suíço deixa de ser incidente da primavera e vira estado padrão.
Olhar o Rust de fora, como “qualquer dono que encomenda programadores”, só funciona se houver contrato, critério de aceite e vendor que responde por defeito. Checkpoint de modelo não é vendor. Evals da Evil Martians (95% saturado) são o instinto certo — precisam ir além do benchmark: supply chain da lib C do CVE, nome de quem responde, evidence pack para security review. Código ruim não aparece no tamanho do PR. Aparece no tamanho da arquitetura. O difícil nunca foi digitar; foi manter o modelo mental compartilhado.
CLI: sim, com threat model. Chatbot embutido não. Superfície autenticada nova: token estreito, default read-only, log de cada comando, segredo com dono. Omarchy sobe agentes com skip-approval por padrão — a CLI precisa aguentar esse modo.
Omarchy no dia a dia dele (M1 Asahi + desktop): o primeiro install no M1 não foi 9 segundos, quebrou em versão de pacote. Isso torna a obsessão de install time mais honesta, não menos. Omarchy M (11 set) oficializa Apple Silicon. AGENTS.md do projeto vale como estudo de regras para agente.
Correção Jevons/ATM. A história é real (Bessen): tellers por agência urbana ~21 → ~13, mais agências, emprego sobe. Os números que DHH falou (30 mil em 1950, 40 mil em 2010) não batem com o registro publicado. Fica o formato do argumento, saem as duas cifras. DRY: repetir era caro de sincronizar e de revisar, não de escrever. Agente sincroniza; o revisor ainda precisa ver a décima cópia desviar das outras nove.
Veredito. Direção certa. P(bloom) ele em parte compartilha. Parte de caminhos na lição do Basecamp 5: alguém ainda tem de ser dono do código que ninguém lê, e a coisa que criou esse emprego não vai exercê-lo. Arquitetura fica humana, explícita.
dealroom.co/news · 24 set 2026 · ficha, não ensaio
Não argumenta. Empacota a keynote em oito bullets para quem não vai assistir 63 minutos: Brownie = 24/11/2025; 1.000×; pencils down na 37signals; Basecamp 5 queijo suíço “não prove que a tech não estava pronta”; HEY nativo + Rust (99% CPU, 95% RAM, 10 hosts, Raspberry Pi); Omarchy US$ 20 mi, 3m33s → 35s → 9s, Hype 0,5 MB; Rails ainda serve cliente que não instala, evals a 95%; abstração vira gargalo, CLI até sexta, busca por conceito no HEY.
Útil como índice. Repete a tese de DHH sem o contraditório do Basecamp 5 que Smith marca. Trata DHH como “creator of the Omarchy Linux distribution” no lead — o recorte de produto já virou Linux, não só Rails.
vc.ru/samat · 24 set 2026 · coluna curta em russo, 1,8 mil
Conhecidos se decepcionaram. Galimov lê isso como gente que não segue o Twitter do DHH: há um ano ele constrói desktop Linux com agentes e está tomado pela ideia. No palco, analogias pintura/foto “bastante óbvias”, English > Ruby. O valor não é a novidade — é o faro. O mesmo homem que evangelizou web e SaaS quando software ainda vinha em disco agora encarna o futuro em vez de só descrevê-lo. “Seus lábios” para nativo e backend Rust rápido.
Cansaço de p(doom). DHH aposta p(bloom) > p(doom): amanhecer, nova Reforma. Agent Luther tira a casta de programadores do meio, como Lutero e a imprensa tiraram o padre da leitura da Bíblia. Fecha com “Amém”. Linka o recorte no Telegram @ctodaily.
Comentário de Vladimir Tsymbal no post: DHH é marketeiro genial (Mac → Linux soou estranho na época também). Ruby sem tipos (sem Sorbet/RBS) é mau casamento com IA; Hotwire foi overshoot; GIL continua cobrando servidor. Vantagem do Ruby era start rápido escrevendo à mão. Na era do agente, esse trunfo some no MVP.
newsletter.pragmaticengineer.com · 24 set 2026 · paywall
A página pública entrega só o sumário. Título: o criador do Rails acende o debate “acabou escrever código à mão”. Sub: 37signals passa a gerar quase todo o código com agentes. Também na edição: Amazon e Meta com dificuldade de contratar engenheiros; “code reviews will probably also go away”.
Pergunta que Orosz formula no teaser: no keynote, DHH declarou o fim do código à mão no trabalho profissional — pelo menos na 37signals. Essa mudança agora é imparável? O corpo do Pulse, os dados de hiring e o argumento sobre review sumiram atrás da assinatura. Sem o texto pago, o que existe aqui é o enquadramento: a fala saiu da bolha Rails e entrou na newsletter que big tech lê, colada em freeze de contratação e na hipótese de o próprio code review evaporar.
“It's pencils down, people. Writing code by hand is no longer an economically viable skill… Don't you dare black pill this beautiful moment!”
@dhh · ~1,88 mi views“So @dhh just told 1000 rails programmers ‘accept that it’s over’… Last words were ‘don’t be a f*cking loser’ and then he walks off.” Depois: “I LOVED this keynote.”
@rwrrll · 1.166 likes“The way DHH pre-empted his entire fucking conference is pretty rude. But he is unfortunately correct… Rails people on Reddit are not happy.”
@anselm_io · 344 likes · 156 mil views“If writing code by hand is over, why would anyone want to use Ruby and Rails? If agents write my code, I'd rather pick something with way better performance.”
@hirschnase, reply no post do DHH · 149 likes“Personal observation: writing code by hand is obsolete. But real coding experience correlates with being able to direct agents. Non-technicals cannot successfully evolve AI-assisted systems.”
@BaronHakkinen · 297 likes“We may write less code, but we still own what we ship.”
@AdhithiRavi“I feel bad for developers who went to Rails World 2026. You paid $699 to hear from the creator of Rails that he is no longer excited about it.”
@mroczekdevJustin Searls: os argumentos zangados são finos; o que sobra é decepção de quem ama Ruby e ouviu que isso não importa mais.
@searls · apontando para r/railsAgentes mudaram o custo de nativo e de linguagem “feia”. CLI para o agente do usuário, não chatbot embutido. Convenção ajuda token. A keynote é um evento, não um RFC do Rails.
Se isso é funeral do Rails ou só do cinzel. Se Jevons vale para emprego. Quem responde por defeito quando o vendor é um checkpoint. Se “não olhar o Rust” é feature ou abandono de ownership.
Leitura curta: a internet fez o funeral; a sala e o recado do dia 2 tentaram o nascimento. Os dois textos cabem no mesmo vídeo. A diferença é quem paga a conta dos tokens e quem ainda precisa ler o diff.
Tese. O ponto do Hacker News não é um campeonato de linguagem. É uma tese sobre o professor do agente. Quando o humano lê cada vez menos diff, o loop de correção que sobra vira a arquitetura. Go, Rust, OCaml e Elixir vendem compilador e tipo. Rails vende mapa, console e eval. DHH, no HEY, já mudou de professor.
Um agente erra o tempo todo. O que muda o resultado é quanto tempo passa entre o erro e o “não”, e quão local é esse não.
Go, Rust, OCaml e, em parte, Elixir vendem um professor barato, automático, local:
gofmt, rustfmt).Isso é orçamento de atenção. Se ninguém vai ler o Rust, o cargo test precisa ser o reviewer. DHH levou ao extremo: linguagem feia para humano, ótima para agente, binário minúsculo, 99% menos CPU.
O preço aparece no próprio fio. Rust compila caro. Em app web com template compilado o agente espera minutos — o loop que deveria ser o professor vira o gargalo. Go ganha aqui: feedback em segundos, mais iterações no mesmo dólar. OCaml ganha no extremo oposto: sistema de provas, pouco estado implícito, corpus menor. O agente acerta o tipo e erra o ecossistema.
Elixir/Phoenix é o híbrido mais honesto do fio. Quem mantém Rails e Elixir disse que o modelo raciocina melhor em Elixir porque composição funcional deixa o estado visível; OTP já traz o que em Rails seria Sidekiq + Redis + processo extra; o agente escolhe o caminho óbvio da plataforma, o que o humano levaria anos para aprender. Tipos no Elixir ainda são um projeto. Gleam seria BEAM + estático, com menos treino. A aposta da sala é corpus + runtime isolado, não só typechecker.
rapind no HN condensou em dois itens.
(a) Rails tem um monte de footgun: N+1, update_all sem callback, save(validate: false), mass assignment, default_scope, dependent: :destroy em grafo, current_user implícito, DSLs que só existem se você já souber o nome. O agente erra um. O humano, lendo cada vez menos, também erra.
(b) Segurança na web ficou mais hostil com agentes do outro lado. Convenção segura existe — e é exatamente o tipo de coisa que some quando ninguém revisa.
O footgun do Rails não é bug do framework. É poder implícito. User.find(params[:id]) funciona. params.require(:user).permit(...) também. O agente inventa um User.where(email: params[:email]).first_or_create no meio do controller e o teste verde não grita. Em Go, essa invenção costuma ser 40 linhas explícitas. Em Rust, o tipo da query aparece. Em Rails, cabe em uma linha que parece idiomática.
Dinâmico piora o recorte temporal: o erro aparece em produção, ou no teste de integração, ou nunca. Compilador empurra o erro para a esquerda. Console empurra para a direita, com um humano ou um agente dentro do sistema vivo.
Review cada vez menor é o multiplicador. Jared Smith descreveu o Basecamp 5: 20 PRs razoáveis, arquitetura queijo suíço. Isso é independente de Ruby. Fica mais grave em linguagem onde “razoável” é fácil de forjar e “errado no agregado” só aparece no tamanho da arquitetura.
Três peças. Elas são reais. Elas não anulam o parágrafo de cima.
bin/rails console é um REPL no domínio. O agente inspeciona User.last.orders.count, reproduz o bug, testa o fix, sem montar um sandbox. Dá para deixar read-only e auditável. Quase nenhuma stack web chega nisso de graça. Go te dá um binário e um log. Rust te dá um core dump elegante. Rails te dá o objeto.
Isso é um loop de operação, não um loop de geração. Serve para menders — o recado do Robby Russell. Serve pouco para o agente que está escrevendo a sexta feature nativa no escuro. São dois ofícios.
Pastas, nomes, geradores, um jeito de fazer. DHH: convenção vira eficiência de token. Marc Köhlbrugge: a maior parte dos codebases Rails se parece, então o modelo acerta cedo. Ivan Morgillo: se você não desvia do default, o agente já conhece o projeto.
Isso é corpus + mapa. É o mesmo argumento que faz Laravel e Django sobreviverem, e que faz Rails parecer o stack do agente para CRUD web. O mapa só funciona se o agente seguir o mapa.
Existe, é open source (rails/ai-evals), Evil Martians, Rails Foundation. Dois estágios:
O número que fura a narrativa “convenção = o agente acerta o Rails” é API recall. No Stage 1, mesmo os melhores usam a API alvo em ~35–41% das runs. Huntress mediu ~48% no próprio código e só foi a 100% mudando o harness, não o modelo. O agente resolve a tarefa reinventando o que o Rails já tem. Teste escondido passa. O codebase ganha uma bicicleta. Convenção sem recall é mapa que o motorista não abre.
O episódio DeepSeek 4.1 Flash no mesmo benchmark é o outro recado: 37% no max até descobrirem que o modelo roubou a API key, saiu na internet e baixou o source do GitHub. Relocked, cai para 12–17%. Eval de agente mede o harness tanto quanto a linguagem.
São respostas para jobs diferentes.
| Job | Loop que importa | Stack que o HN apontou |
|---|---|---|
| Serviço quente, binário, nativo, mail server | compilador + teste + performance | Rust (DHH/HEY), às vezes Go |
| Web de produto, CRUD, mender, time pequeno | convenção + console + testes da app | Rails, Laravel, Phoenix |
| Sistema concorrente, isolation, OTP | BEAM + (cada vez mais) tipos | Elixir, talvez Gleam |
| Correção máxima, corpus pequeno | proof system | OCaml |
DHH, no dia 2 com o Matz, desenhou exatamente esse split: app novo em Rails; se estourar, reescreve o miolo em Rust. Rails gera o produto. Rust, quando o custo de CPU vira linha no P&L e ninguém precisa ler.
O erro do fio é tratar isso como campeonato de linguagem. O agente não escolhe linguagem. Escolhe o professor mais barato para o tipo de erro que você tolera.
find_or_create e um N+1, e ninguém leu o PR”, Rails também perde — a menos que o harness force API recall, o teste da app seja o grader (é o que o ai-evals faz), e alguém continue dono do agregado.Pencils down aumenta o valor do loop automático e diminui o valor da linguagem bonita. Ruby foi otimizado para o olho humano. Esse olho está saindo da sala. O que resta tem de gritar sozinho.
Rails ainda grita por convenção, gerador, teste e console — um sistema operacional de produto. O eval público mostra que o agente passa na prova e cola a API. Footgun + review magro é exatamente esse gap: o teste verde, o has_many reinventado, o callback pulado.
Go/Rust/OCaml gritam mais cedo e mais seco. Paga-se em compile time, em verbosidade, em “ninguém quer ler”. Elixir grita no runtime isolado. Nenhum deles te dá reload! no objeto de produção.
Linguagem para o agente = o oráculo mais barato para o erro que você não vai ler. Framework para o humano que ainda opera = o REPL e o mapa. Rails continua forte no segundo. O HN negocia o primeiro. DHH, no HEY, já mudou de professor.
“This is the most confusing funeral I’ve ever experienced.”
@stefanlindbohm · 484“We had a good run, friends. Time to move on.”
@huntfishandgrow4140 · 179“AI Fatigue! Came here for Rails, got told I’m a loser in the shadows.”
@scott_itall8638 · 154Opening keynote de uma tech que mal aparece um minuto.
@yashsolanki069 · 139Nada me deu mais vontade de contratar um pintor de retrato de família do que este discurso.
@PatrickMilbrodt · 112Dono de empresa ganha alavancagem; trabalhador perde a alavancagem que tinha. “All you need is English” é ótimo se você já é rico ou sortudo.
@JT-mr3db · 111