- O efeito de imprinting deixado pela primeira linguagem gera um carinho singular por Ruby, fazendo com que muitos desenvolvedores aceitem seus defeitos quase como “personalidade”.
- Quando se conhece Ruby tardiamente, sob o acabamento elegante aparecem falhas da tipagem dinâmica, footgun e desempenho lento, deixando uma sensação muito forte de que ele ficou preso a uma geração passada.
- O episódio do Fail Whale do Twitter e a migração para Scala, junto à onda de fuga do Ruby ao longo de toda a década de 2010, comprovam os limites de desempenho da linguagem.
- O Rails reinou em uma era, mas hoje sua filosofia unificada virou uma parede de escalabilidade, e não se encaixa mais naturalmente no contexto de crescimento explosivo da web.
- O que sustenta Ruby hoje é principalmente o legado do Rails, a lealdade emocional de desenvolvedores inicialmente impressos e a nostalgia por um nome bonito.
O poder do imprinting nas linguagens de programação
- Em psicologia, imprinting funciona de modo parecido na programação
Assim como um ganso recém-nascido enxerga o primeiro ser visto como mãe, a primeira linguagem aprendida domina por muito tempo a percepção do desenvolvedor.
- Ruby foi um beneficiário clássico desse imprinting
Ele fica profundamente ligado ao momento em que a programação parecia “fazer sentido naturalmente pela primeira vez”, deixando uma forte afeição pela linguagem.
- Quem aprende primeiro tende a ser guiado pelo encanto, e os defeitos ficam obscurecidos; quem aprende mais tarde, enxerga a essência sem esse efeito de filtro.
Nascimento e características do Ruby
- Ruby foi criado em 1995 por Yukihiro Matsumoto (Matz), desenvolvedor de Osaka, Japão. É a única linguagem de programação de destaque nascida fora do Ocidente.
- Há o lema comunitário MINASWAN (Matz Is Nice And So We Are Nice), vindo da personalidade cordial de Matz.
- Com sintaxe concisa sem pontos e vírgulas ou parênteses, Ruby é frequentemente percebido como uma leitura mais simples até que Python.
- É frequentemente citada como linguagem que dá aos iniciantes aquela sensação de que a programação de fato “faz sentido”.
O lado oculto de Ruby quando aprendida mais tarde
- Ao chegar ao Ruby depois de passar por outras linguagens, o que aparece primeiro é um aspecto ultrapassado e descuidado, antes da tal elegância esperada.
- Por trás de uma sintaxe desenhada para parecer bonita, permanece a ambiguidade da tipagem dinâmica e comportamentos imprevisíveis.
- Ruby é uma linguagem de tipagem dinâmica: em projetos pequenos oferece flexibilidade, mas em estruturas grandes os erros tendem a surgir apenas em tempo de execução.
- Python e JavaScript evoluíram por anos com ferramentas de tipagem e ecossistema de análise estática mais robusto (por exemplo: TypeScript, mypy).
- Como Ruby não possui ferramentas equivalentes, ela é mais vulnerável a riscos conhecidos como “footgun” (uma funcionalidade que pode atirar no próprio pé).
- Em escala pequena isso pode parecer suave, mas quando o sistema cresce, o risco de os erros emergirem apenas em runtime permanece.
Limite de desempenho consistente do Ruby
- Em comparações de desempenho entre linguagens, Ruby quase sempre fica entre os piores da categoria.
- O período do Fail Whale no Twitter foi um marco que simbolizou os limites da infraestrutura baseada em Ruby, e durante a Copa de 2010 a ocorrência de grande incidente deixou esse limite ainda mais evidente.
- O Twitter migrou para Scala e, depois disso, conseguiu processar 32 milhões de tweets na final da Copa de 2010 sem problemas; o novo backend funcionava até 100 vezes mais rápido.
- Ao longo de toda a década de 2010, muitas empresas saíram da infraestrutura Ruby; o que restou ficou majoritariamente em modo legado.
O espaço que Ruby perdeu
- Linguagens que um dia disputaram com Ruby — Python, JavaScript e Perl — consolidaram áreas mais claras para si mesmas.
Python dominou AI, ciência e educação; JavaScript passou a dominar a web inteira.
Perl está em declínio, mas não houve espaço para Ruby substituí-la.
- Com a falta de um domínio próprio claro, Ruby hoje permanece em uma faixa intermediária ambígua.
Rails, o último bastião
- O principal motivo de Ruby ainda estar vivo no trabalho real é o Rails.
- Depois de ser lançado publicamente pelo David Heinemeier Hansson (DHH) em 2004, Rails liderou a era Web 2.0 e, à época, oferecia todos os elementos do desenvolvimento web dentro de uma visão integrada.
- O desenvolvedor dinamarquês DHH é conhecido como uma figura contenciosa e carismática, em contraste com Matz.
- No início do Web 2.0, Rails era atraente para startups por oferecer pacote all-in-one para banco de dados, front-end e back-end.
- Empresas como Airbnb, GitHub, Twitter, Shopify e Stripe começaram com Ruby on Rails.
- Porém, com o crescimento explosivo da web, a arquitetura integrada do Rails passou a atuar como obstáculo de escalabilidade.
Como a Usonian House de Frank Lloyd Wright, tornou-se uma estrutura que parecia bela no começo, mas quase impossível de reformar mais tarde.
A queda de Ruby e o que ainda a mantém
- No survey de desenvolvedores da Stack Overflow, Ruby caiu do Top 10 em 2013 para a 18ª posição em 2025, ficando até atrás da Assembly.
- Novos desenvolvedores estão se concentrando em Python e JavaScript, e Ruby ficou como linguagem de alguns desenvolvedores que guardam memórias da era passada.
- Hoje, o que sustenta Ruby são o legado de Rails, a lealdade emocional de desenvolvedores fortemente imprintados e apenas a imagem emocional de uma sintaxe bonita e fácil de ler.
- No entanto, emoção por si só não consegue reposicionar uma linguagem; a realidade já migrou para ferramentas mais rápidas, seguras e escaláveis do que Ruby
3 comentários
É um texto tão fraco em fundamentos que chega a ser desconcertante...
Resposta a "Ruby não é uma linguagem de programação séria"
Comentários do Hacker News
O link alternativo é archive.is/O7rEl
Os argumentos apresentados no artigo parecem bem fracos: “não gosto”, “odeio por causa da tipagem dinâmica”, “o Twitter travou no passado”, “é lento”, “só entra no top 20 da pesquisa do Stack Overflow”
Minha primeira linguagem foi BASIC, a segunda foi assembly para Z80A e 6502, e a terceira foi Pascal. Mas nenhuma delas definiu meu gosto para sempre
Na verdade, o que foi realmente uma experiência formativa foi um professor na faculdade dizendo: “quem aprende BASIC vira um programador quebrado para o resto da vida”. Foi ali que aprendi que até pessoas com autoridade podem prejudicar os outros por puro preconceito
No fim, este texto parece uma tentativa do autor de mostrar o quanto ele é inteligente. Dá até para ler como algo divertido, como os textos do Steve Yegge, mas o Yegge pelo menos tinha mais conteúdo para contar
Se a tese dele fosse correta, nem haveria necessidade de escrever um texto agressivo desses. O fato de Ruby continuar produzindo muitos resultados reais e de a linguagem seguir evoluindo já serve como refutação
Eu também não discordo totalmente do artigo, mas, com esse critério, daria para escrever exatamente a mesma crítica sobre a maioria das “linguagens profissionais”, como Python, JS e C++
“Computação é cultura pop” continua sendo uma frase válida, e o fato de um texto desses sair em um veículo como a Wired é prova disso
Li até o fim e não encontrei nenhum motivo prático para não usar Ruby.
O texto pareceu uma falha jornalística feita em poucas horas com ChatGPT. Talvez o primeiro codebase em Ruby que o autor viu fosse especialmente desastroso
Acho que já houve uma época em que a Wired era uma revista que valia a pena ler, mas agora nem lembro mais quando foi
Não acho que a reescrita para Scala tenha sido uma boa decisão de negócio. Passados 15 anos, Scala é muito menos popular do que Ruby. Hoje nem sei o que eles usam
Isso parece só um artigo clickbait para paywall
Isso me lembrou que eu deveria cancelar minha assinatura esquecida da Wired