Olá, Rubista! Tudo bem com você?
Tenho duas notícias essa semana que dão um destaque para o Ruby, que talvez, poucos esperavam: um benchmark do core team mostrou que Ruby é a linguagem que LLMs entendem melhor, e a Shopify formalizou internamente a migração de RSpec para Minitest. Enquanto o ecossistema se movimenta, a pergunta que fica é: como você está colocando seus projetos no ar?
Esta é a edição #02 do Radar da Semana. Vem comigo!
Ruby & Rails
Ruby ficou em primeiro lugar como linguagem para Claude Code
Yusuke Endoh, pesquisador do Ruby core team, publicou um teste comparando a qualidade de código gerado pelo Claude Code em diferentes linguagens. Ruby liderou!
A metodologia envolveu submeter problemas idênticos ao agente e avaliar correção e idiomaticidade das soluções. Ao fazer isso, o código Ruby gerado foi consistentemente mais correto e natural do que em Python, JavaScript ou Go.
O resultado não é acidental. Ruby foi desenhado para ser lido e escrito por humanos. LLMs foram treinados em texto humano. A correlação é direta: uma linguagem que prioriza expressividade e legibilidade produz menos ambiguidade para modelos de linguagem. Para quem precisa de munição técnica na hora de defender Ruby em uma decisão de stack, este é um dado empírico e recente.
Shopify desencoraja RSpec internamente, favorecendo Minitest
A informação circulou pelo Nate Berkopec em seu X/Twitter: a Shopify sinalizou internamente que não recomenda mais RSpec, preferindo Minitest. Não há post oficial, mas o peso da decisão é difícil de ignorar — estamos falando de uma das maiores codebases Rails do planeta.
Isso reacende o debate que nunca se resolve. RSpec oferece expressividade e uma DSL poderosa — uma linguagem específica para descrever comportamento de código — para escrever testes. Minitest oferece simplicidade, velocidade e alinhamento direto com o Ruby core. O DHH e o Rails core team sempre preferiram Minitest.
Agora a maior empresa do ecossistema concorda formalmente. Isso não significa que RSpec morreu — significa que a pressão por simplicidade e performance em escala está ganhando mais um argumento de peso. Se você está começando um projeto novo, vale ao menos considerar Minitest como primeira opção, não como alternativa.
E aí, devemos ter um curso na Academia também focado em MiniTest?
Gravação de vídeo no browser com Stimulus e MediaRecorder API — sem React
O Rails Designer publicou um tutorial demonstrando como construir uma interface completa de gravação de vídeo usando apenas Stimulus e a MediaRecorder API nativa do browser. Nenhuma dependência JavaScript externa. O Stimulus controller encapsula toda a lógica de captura de stream, controle de gravação e geração do blob — o arquivo de vídeo em memória — que depois sobe ao servidor via form convencional.
O valor prático está na demonstração: features de mídia que muitos assumem exigir React ou bibliotecas especializadas funcionam perfeitamente no stack Rails + Hotwire. Gravação de mensagens de vídeo, envio de provas de vida, plataformas de educação, interfaces de recrutamento — tudo isso é viável hoje sem adicionar complexidade ao seu frontend. Para quem trabalha com Hotwire, é um exemplo concreto de até onde o poder do Stimulus pode chegar.
Gems & Bibliotecas
RubyLLM 1.13.0 — Agentic Workflows atingem v1.0
A gem ruby_llm lançou a versão 1.13.0 com a estreia oficial do sistema de Agentic Workflows. A diferença em relação a uma chamada simples de completion: workflows agênticos permitem orquestrar sequências de chamadas a LLMs com uso de tools — funções que o modelo pode invocar para buscar dados ou executar ações — memória de contexto entre etapas e lógica condicional.
Para aplicações Rails, o impacto é direto: agentes que leem dados do banco, tomam decisões e executam ações — tudo em Ruby puro, sem Python, sem LangChain, sem overhead de serviços externos. Se você está explorando integração com IA na sua aplicação, esta gem elimina a necessidade de sair do ecossistema Ruby.
lumitrace — Rastreamento inline de expressões, direto do criador da VM do Ruby
Koichi Sasada — autor do YARV, a máquina virtual que interpreta e executa todo código Ruby — lançou lumitrace, uma gem para rastreamento inline de expressões durante a execução. Em vez de espalhar puts ou levantar um debugger pesado, a gem anota o output com o valor de cada expressão avaliada, linha a linha.
O caso de uso apresentado pelo próprio Sasada foi identificar conversões de tipo desnecessárias — situações onde um valor é transformado múltiplas vezes sem necessidade, prejudicando performance. A gem torna esse tipo de problema visível sem precisar de um profiler completo. O ponto relevante: não é uma gem qualquer. É o criador da VM dizendo "eu preciso disso no meu dia a dia". Quando quem construiu o motor do Ruby cria uma ferramenta de debug, vale prestar atenção.
Performance & Infraestrutura
Shopify contribui otimizações de pool HTTP e clones paralelos para o Bundler
A equipe da Shopify apresentou duas otimizações para o repositório oficial do Bundler: um pool de conexões HTTP para downloads paralelos de gems e clones git paralelos para gems apontando para repositórios externos. Ambas as mudanças foram incorporadas ao Bundler oficial.
O contexto importa: a Shopify opera um dos maiores monorrepos Rails do mundo — um repositório único que abriga dezenas de projetos e serviços internos. Cada segundo economizado no bundle install, o comando que instala as dependências do projeto, se multiplica por centenas de desenvolvedores e pipelines de CI. Para projetos de médio porte, a diferença pode ser imperceptível. O ganho real aparece em projetos com muitas gems vindas de fontes git. Ainda assim, é o tipo de melhoria silenciosa que beneficia todo o ecossistema sem exigir nenhuma ação da sua parte.
Comunidade & Ecossistema
O debate RSpec vs Minitest volta com força — e agora tem dados novos
A movimentação da Shopify reacendeu uma novela que não tinha continuação [ainda]. O ponto interessante desta vez não é o debate filosófico (expressividade vs simplicidade), mas o argumento pragmático: em codebases muito grandes, a complexidade acumulada da DSL do RSpec se torna um custo real de manutenção. Mocks elaborados, contexts aninhados em cinco níveis, shared examples que ninguém lembra onde foram definidos.
Ao mesmo tempo, o benchmark de Ruby com Claude Code levanta uma questão adjacente: se LLMs geram código Ruby melhor do que em outras linguagens, qual framework de testes eles geram melhor? A tendência parece apontar para Minitest — por ser mais próximo de Ruby puro, sem DSL intermediária. É uma convergência que vale observar.
Destaque da Academia do Ruby
A IA não vai tirar seu emprego de dev júnior. Mas de alguém vai.
O Daniel publicou esta semana um artigo que toca em um tópico sensível. O argumento é preciso: a IA não substitui devs juniores que pensam — substitui devs que operam como executores de tarefas mecânicas, independentemente do nível de senioridade no LinkedIn.
O ponto mais incômodo do texto é sobre a armadilha da eficiência de curto prazo. Delegar tudo para a IA antes de entender o porquê de cada decisão elimina exatamente o atrito cognitivo que constrói competência. É a diferença entre usar a IA como alavanca — quando você já entende o problema e quer acelerar a execução — e usar como muleta — quando você pula a fase de luta que é responsável pelo aprendizado real. O resultado é o mesmo no curto prazo: código entregue. A diferença aparece algumas semanas depois, quando surge um bug em produção que exige entendimento profundo do sistema, e o dev que sempre delegou não consegue diagnosticar sem colar o erro no ChatGPT.
Isso se conecta diretamente com o benchmark de Ruby para LLMs. Sim, Ruby é a linguagem que agentes de IA entendem melhor. E sim, isso é uma vantagem competitiva. Mas essa vantagem só se materializa para quem entende Ruby o suficiente para avaliar, corrigir e direcionar o que a IA produz. O artigo completo está disponível na comunidade da Academia do Ruby e vale a leitura integral. Não porque diz o que você quer ouvir — mas porque diz o que o mercado não vai te avisar antes de agir.
Conselho da Semana
Código em produção é melhor que código em desenvolvimento. Sempre. A feature imperfeita que está rodando ensina mais do que a arquitetura perfeita que nunca saiu do branch. Se alguém que aprendeu a programar com vibecoding conseguiu vender uma ideia e colocar no ar, você — que estuda, que entende o stack, que sabe o que está fazendo — também consegue. A diferença é que você pode fazer isso com muito mais fundamento.
Vai com medo mesmo. Mas vai sabendo o que está fazendo.
Ainda não há comentários. Seja o primeiro a comentar!