O Que É a Linguagem de Programação Ruby? Um Guia Simples da Linguagem Feita para a Felicidade
Um guia simples e sem jargões sobre o Ruby, a linguagem de programação feita para deixar os programadores felizes. Entenda por que o código Ruby parece inglês, como o Ruby on Rails move sites como GitHub e Shopify, e onde o Ruby brilha.

Nesta página
A maioria das linguagens de programação é pensada em torno do que é mais fácil para o computador. O Ruby foi pensado em torno de outra coisa: o que deixa os programadores felizes.
Criado no Japão nos anos 1990, o Ruby ficou famoso no mundo todo graças ao Ruby on Rails, uma caixa de ferramentas para construir sites que ajudou a lançar empresas como GitHub, Shopify e Airbnb. Este artigo explica, em linguagem simples, o que é o Ruby, por que o código dele parece quase inglês, o que o Rails faz e onde o Ruby brilha e onde tem dificuldades.
Uma linguagem feita para dar alegria
Em 1993, um programador japonês chamado Yukihiro Matsumoto, conhecido como "Matz", decidiu criar uma linguagem que ele gostasse de usar todo dia. Ele gostava de ideias de várias linguagens existentes e queria misturá-las em algo poderoso e agradável ao mesmo tempo.
O nome foi uma escolha brincalhona. Uma linguagem popular na época se chamava Perl, e a pérola (pearl, em inglês) é a pedra do mês de junho. Matz escolheu a pedra do mês seguinte: o rubi (ruby).
O Ruby foi lançado ao público em 1995. Matz já disse muitas vezes que o objetivo do Ruby é ajudar os programadores a serem produtivos e a gostarem de programar. Essa ideia guiou quase todas as decisões da linguagem.
Ruby parece inglês
O jeito mais fácil de sentir a personalidade do Ruby é compará-lo com outra linguagem. Veja a mesma tarefa, mostrar "Hello!" três vezes, em Java e em Ruby:

O Java detalha cada passo: crie uma classe, comece um contador em zero, continue enquanto for menor que três, some um a cada vez. O Ruby simplesmente diz 3.times { puts "Hello!" }, que em inglês se lê quase como uma frase: 3 vezes, diga "Hello!" (puts vem de "put string", o jeito do Ruby de escrever uma linha).
Esse estilo de frase aparece em todo o Ruby:
![Código Ruby muitas vezes parece uma frase, com código Ruby de verdade e o que o Ruby respondeu. 5.even? pergunta "o 5 é um número par?" e o Ruby responde false. [].empty? pergunta "esta lista está vazia?" e o Ruby responde true. "hello".upcase quer dizer "deixe hello em maiúsculas" e o Ruby responde "HELLO". [3, 1, 2].sort.reverse quer dizer "ordene a lista e depois inverta" e o Ruby responde [3, 2, 1]. palavras.tally quer dizer "conte quantas vezes cada palavra aparece" e o Ruby responde red 3 vezes, e assim por diante. No Ruby tudo é um objeto, até um simples número, então o próprio 5 sabe responder "você é par?". Nomes que terminam com ? são perguntas](https://nbkmundotech.us-southeast-1.linodeobjects.com/static/images/ae0296c3-d7d9-4927-84cf-c89dee7fa6ed.png?v=1792085431351)
Dois detalhes deixam o Ruby amigável:
- Tudo é um objeto. No Ruby, até o número
5é um objeto com as suas próprias habilidades, então dá para perguntar direto para ele:5.even?("5 é par?"). Você não precisa de um "ajudante de matemática" separado para descobrir. - Pontuação com significado. Nomes que terminam com
?são perguntas que respondem verdadeiro ou falso, comoempty?("está vazio?"). Nomes que terminam com!são um aviso de que algo vai ser alterado ali mesmo:nome.upcase!transforma o texto guardado emnomeem letras maiúsculas, em vez de criar uma cópia nova.
Como é o Ruby
Este é o primeiro programa clássico:
puts "Hello, world!"Esse é o programa inteiro. Sem classes, sem main, sem ponto e vírgula.
Assim como o Java e o C#, o Ruby deixa você descrever um tipo de coisa como uma classe (uma planta) e criar objetos a partir dela. Veja um carrinho:
1class Carro
2 attr_reader :cor, :velocidade
3
4 def initialize(cor)
5 @cor = cor
6 @velocidade = 0
7 end
8
9 def acelerar
10 @velocidade += 10
11 end
12
13 def frear
14 @velocidade = 0
15 end
16end
17
18meu_carro = Carro.new("vermelho")
19meu_carro.acelerar
20meu_carro.acelerar
21puts "O meu carro #{meu_carro.cor} anda a #{meu_carro.velocidade} km/h"Quando roda, ele mostra: O meu carro vermelho anda a 20 km/h. Algumas coisas para reparar: def começa cada ação e end a termina, nomes que começam com @ pertencem ao objeto, e #{...} encaixa um valor direto no meio de uma frase.
E veja como separar os adultos de uma lista de pessoas e ordenar os nomes:
1pessoas = [
2 { nome: "Maria", idade: 34 },
3 { nome: "Ana", idade: 17 },
4 { nome: "Pedro", idade: 25 },
5 { nome: "Lucas", idade: 15 },
6]
7
8adultos = pessoas
9 .select { |pessoa| pessoa[:idade] >= 18 }
10 .map { |pessoa| pessoa[:nome] }
11 .sort
12
13puts adultos.join(", ") # Maria, PedroSelect (selecionar) as pessoas com 18 anos ou mais, map (transformar) cada uma no seu nome, sort (ordenar) os nomes. A parte entre |...| dá um nome a cada item enquanto o Ruby percorre a lista.
Ruby on Rails: a caixa de ferramentas que deixou o Ruby famoso
Na primeira década, o Ruby era popular principalmente no Japão. Isso mudou em 2004, quando um programador dinamarquês, David Heinemeier Hansson, lançou o Ruby on Rails (normalmente chamado só de "Rails"). Ele o construiu enquanto criava o Basecamp, um app de gestão de projetos, e o compartilhou de graça.
O Rails é um framework web: uma estrutura pronta para construir sites. Ele cuida das partes repetitivas que todo site precisa (conversar com um banco de dados, mostrar páginas, tratar formulários, fazer login de usuários), para que os desenvolvedores se concentrem no que torna o site deles único:

Pense num restaurante. O roteador é o recepcionista que leva você à mesa certa, o controller é o gerente que coordena o seu pedido, o model busca os ingredientes na despensa (o banco de dados) e a view monta o prato bonitinho antes de servir.
O Rails é famoso por duas ideias:
- Convenção em vez de configuração: em vez de obrigar os desenvolvedores a configurar tudo, o Rails assume padrões sensatos. Se você tem um model chamado
Product, o Rails já sabe que os dados dele ficam numa tabela do banco de dados chamadaproducts. - Não se repita (don't repeat yourself): cada informação deve morar num lugar só, para que as mudanças precisem ser feitas uma vez só.
Um vídeo famoso dos primeiros tempos mostrava alguém construindo um blog funcionando em uns 15 minutos com o Rails, algo que levava dias com outras ferramentas da época. As startups adoraram, e muitas das grandes empresas de tecnologia de hoje começaram como apps em Rails.
Onde o Ruby é usado

- O GitHub, a maior casa de código do mundo, roda em Rails desde o seu lançamento, em 2008.
- A Shopify, que move lojas on-line de milhões de negócios, roda uma das maiores aplicações Rails do mundo, e os engenheiros dela contribuem bastante para o próprio Ruby.
- O GitLab, o Basecamp e o serviço de e-mail HEY também são apps em Rails.
- O Airbnb fez o seu primeiro site com Rails, e o Twitter começou em Rails em 2006, antes de passar boa parte do sistema para outras linguagens conforme cresceu.
- O Homebrew, a ferramenta popular para instalar programas no Mac, é escrito em Ruby.
Ele é rápido?
O Ruby foi pensado primeiro para a felicidade dos programadores e depois para a velocidade. Cronometramos o mesmo programa simples, que conta os números primos abaixo de 2 milhões, em quatro linguagens:

O Ruby levou uns 5 segundos: bem mais lento que C e JavaScript, mas mais rápido que o Python neste teste em particular. Duas coisas valem saber:
- O Ruby agora inclui o YJIT, um acelerador criado por engenheiros da Shopify que compila o código mais usado para código de máquina rápido enquanto o programa roda. Ele não estava disponível na versão para Windows que testamos, então o Ruby no Linux ou no Mac pode se sair bem melhor.
- Para a maioria dos sites, a velocidade bruta de cálculo importa menos do que parece. Uma página típica passa boa parte do tempo esperando o banco de dados ou a rede, e a produtividade do Rails muitas vezes importa mais que alguns milissegundos.
Os pontos fracos
- Não é o mais rápido. Para cálculos pesados, jogos ou outros trabalhos em que a velocidade é crítica, linguagens como C++, Rust ou Go combinam melhor.
- Os erros aparecem tarde. O Ruby não confere os tipos dos valores antes de rodar, então alguns erros, como chamar um método em algo que não o tem, só aparecem com o programa rodando. Bons testes automatizados (o Ruby tem uma forte cultura de testes) ajudam a pegá-los.
- A "mágica" pode confundir iniciantes. O Rails faz muita coisa por trás das cortinas, o que é ótimo até você precisar entender por que algo aconteceu.
- Menos badalação que antes. O Ruby viveu o auge da popularidade no fim dos anos 2000 e começo dos anos 2010. Ele continua muito usado e em desenvolvimento ativo, mas linguagens mais novas recebem mais atenção, e há menos vagas de Ruby do que de JavaScript ou Python.
Uma breve história

Uma tradição bonita: uma versão nova do Ruby é lançada todo ano no dia de Natal, 25 de dezembro.
Vale a pena aprender Ruby?
- Ótimos motivos: você quer construir apps web rapidamente, entrar numa startup ou trabalhar num código em Rails como o do GitHub ou da Shopify. O Ruby também é uma primeira linguagem gentil e divertida: o estilo legível deixa os iniciantes se concentrarem nas ideias, e não na pontuação.
- Bom saber: o Ruby é gratuito e roda no Windows, no Mac e no Linux. Ele vem com o irb ("Ruby interativo"), onde dá para digitar Ruby uma linha de cada vez e ver a resposta na hora, um ótimo jeito de experimentar.
Um pequeno glossário
- Ruby: uma linguagem de programação criada por Yukihiro "Matz" Matsumoto, lançada em 1995.
- Matz: o criador do Ruby, que ainda lidera o seu desenvolvimento.
- Objeto: uma coisa com os seus próprios dados e habilidades. No Ruby, tudo é um, até os números.
- Método: uma ação que um objeto sabe fazer, como
upcaseoueven?. - Bloco: um pedaço de código entre
{ }oudo ... endentregue a um método, como{ puts "Hello!" }. - Gem: um pacote pronto de Ruby que você pode acrescentar a um projeto.
- Ruby on Rails (Rails): um framework para construir sites rapidamente, lançado em 2004.
- Roteador / controller / model / view: as partes de um app Rails que encaminham um pedido, o coordenam, cuidam dos dados e montam a página.
- Convenção em vez de configuração: seguir padrões sensatos em vez de configurar tudo à mão.
- YJIT: o compilador embutido do Ruby que acelera o código mais usado enquanto ele roda.
- irb: uma janela interativa para experimentar Ruby uma linha de cada vez.
Concluindo
O Ruby é aquela linguagem rara pensada em torno das pessoas, e não das máquinas. O código dele parece quase inglês, tudo nele é um objeto com que você pode conversar diretamente, e pequenos toques, como os métodos com ponto de interrogação, o deixam amigável. Graças ao Ruby on Rails, essa simpatia ajudou a lançar algumas das empresas mais conhecidas da web.
Ele não é a linguagem mais rápida nem a mais na moda, mas, se você visita o GitHub, compra numa loja on-line feita com a Shopify ou instala um app com o Homebrew, ainda está aproveitando o trabalho de uma linguagem criada, como Matz queria, para fazer da programação uma alegria.
Read next

O Que É um Transformer na IA? A Ideia por Trás do ChatGPT, Explicada de Forma Simples
Um guia simples e sem jargões sobre os transformers, a arquitetura de IA por trás do ChatGPT, do Claude e do Gemini. Entenda como a "atenção" ajuda a IA a entender palavras no contexto e por que isso mudou a IA tão rápido.

O Que É Aprendizado por Reforço? Como a IA Aprende com Tentativa, Erro e Recompensa
Uma introdução simples e sem jargões ao aprendizado por reforço, o jeito como a IA aprende com tentativa, erro e recompensa, como um cachorro aprendendo com petiscos. Veja um robô aprender um labirinto e como isso molda os chatbots.

O Que É Engenharia de Grafos? Como a IA Trabalha em Equipe para Fazer Coisas de Verdade
Um guia simples e sem jargões sobre engenharia de grafos, a ideia de 2026 de montar a IA como um mapa de etapas conectadas. Veja como os agentes de IA funcionam, por que pequenos erros se acumulam e como revisões e trabalho em equipe resolvem isso.
Comentários
Be kind and specific. Comments with links from new accounts appear after a moderator reviews them.