<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Henrique Silva</title>
    <description>The latest articles on DEV Community by Henrique Silva (@henriquesilvadev).</description>
    <link>https://dev.to/henriquesilvadev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3356865%2F1e1f96ca-a67f-4dae-a9f6-8e41a403ce86.jpg</url>
      <title>DEV Community: Henrique Silva</title>
      <link>https://dev.to/henriquesilvadev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/henriquesilvadev"/>
    <language>en</language>
    <item>
      <title>Números em Ruby</title>
      <dc:creator>Henrique Silva</dc:creator>
      <pubDate>Wed, 16 Jul 2025 18:27:16 +0000</pubDate>
      <link>https://dev.to/henriquesilvadev/numeros-em-ruby-4l18</link>
      <guid>https://dev.to/henriquesilvadev/numeros-em-ruby-4l18</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi81c6uxtd6r7maopxz6j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi81c6uxtd6r7maopxz6j.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;br&gt;
O Ruby oferece todos os operadores matemáticos básicos que você espera encontrar:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="c1"&gt;# Adição&lt;/span&gt;
&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;   &lt;span class="c1"&gt;#=&amp;gt; 3&lt;/span&gt;

&lt;span class="c1"&gt;# Subtração&lt;/span&gt;
&lt;span class="mi"&gt;4&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;   &lt;span class="c1"&gt;#=&amp;gt; 1&lt;/span&gt;

&lt;span class="c1"&gt;# Multiplicação&lt;/span&gt;
&lt;span class="mi"&gt;8&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;   &lt;span class="c1"&gt;#=&amp;gt; 16&lt;/span&gt;

&lt;span class="c1"&gt;# Divisão&lt;/span&gt;
&lt;span class="mi"&gt;102&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;  &lt;span class="c1"&gt;#=&amp;gt; 51&lt;/span&gt;

&lt;span class="c1"&gt;# Expoente&lt;/span&gt;
&lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="o"&gt;**&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;  &lt;span class="c1"&gt;#=&amp;gt; 4&lt;/span&gt;
&lt;span class="mi"&gt;3&lt;/span&gt; &lt;span class="o"&gt;**&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;  &lt;span class="c1"&gt;#=&amp;gt; 27&lt;/span&gt;

&lt;span class="c1"&gt;# Módulo (resto da divisão)&lt;/span&gt;
&lt;span class="mi"&gt;8&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;   &lt;span class="c1"&gt;#=&amp;gt; 0  (8 / 2 = 4; sem resto)&lt;/span&gt;
&lt;span class="mi"&gt;10&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;  &lt;span class="c1"&gt;#=&amp;gt; 2  (10 / 4 = 2 com resto 2)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Números inteiros e números com ponto decimal
&lt;/h2&gt;

&lt;p&gt;No Ruby, trabalhamos basicamente com dois tipos de números: os inteiros, como 10, e os de ponto flutuante (ou floats), como 10.5, 10.0 ou 0.25.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Um detalhe importante:&lt;/strong&gt; quando você realiza uma operação entre dois inteiros, o Ruby também retorna um inteiro — ou seja, nada de casas decimais no resultado, mesmo que você espere. Para resultados mais precisos, é bom usar pelo menos um número com ponto decimal na conta.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="mi"&gt;27&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;    &lt;span class="c1"&gt;#=&amp;gt; 5, não 5.4&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para obter um resultado com ponto decimal, basta substituir um dos inteiros por um float:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="mi"&gt;27&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mf"&gt;5.0&lt;/span&gt;  &lt;span class="c1"&gt;#=&amp;gt; 3.4&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Convertendo tipos numéricos
&lt;/h2&gt;

&lt;p&gt;Para conversão entre floats e inteiros basta:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="c1"&gt;# Para converter um inteiro em float:&lt;/span&gt;
&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;to_f&lt;/span&gt;   &lt;span class="c1"&gt;#=&amp;gt; 3.0&lt;/span&gt;

&lt;span class="c1"&gt;# Para converter um float em inteiro:&lt;/span&gt;
&lt;span class="mf"&gt;23.5&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;to_i&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; 23&lt;/span&gt;
&lt;span class="mf"&gt;23.0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;to_i&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; 13&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Alguns métodos úteis para números
&lt;/h2&gt;

&lt;p&gt;Ruby oferece métodos úteis para trabalhar com números:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="c1"&gt;# even? (verifica se é par)&lt;/span&gt;
&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;even?&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; true&lt;/span&gt;
&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;even?&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; false&lt;/span&gt;

&lt;span class="c1"&gt;# odd? (verifica se é ímpar)&lt;/span&gt;
&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;odd?&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; false&lt;/span&gt;
&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;odd?&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; true&lt;/span&gt;

&lt;span class="c1"&gt;# abs&lt;/span&gt;
&lt;span class="c1"&gt;# Retorna o valor absoluto (sem sinal negativo)&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;abs&lt;/span&gt;   &lt;span class="c1"&gt;#=&amp;gt; 10&lt;/span&gt;
&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;abs&lt;/span&gt;    &lt;span class="c1"&gt;#=&amp;gt; 10&lt;/span&gt;

&lt;span class="c1"&gt;# ceil&lt;/span&gt;
&lt;span class="c1"&gt;# Arredonda um número para cima&lt;/span&gt;
&lt;span class="mf"&gt;1.2&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;ceil&lt;/span&gt;  &lt;span class="c1"&gt;#=&amp;gt; 2&lt;/span&gt;
&lt;span class="mf"&gt;3.9&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;ceil&lt;/span&gt;  &lt;span class="c1"&gt;#=&amp;gt; 4&lt;/span&gt;

&lt;span class="c1"&gt;# floor&lt;/span&gt;
&lt;span class="c1"&gt;# Arredonda um número para baixo&lt;/span&gt;
&lt;span class="mf"&gt;1.9&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;floor&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; 1&lt;/span&gt;
&lt;span class="mf"&gt;3.1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;floor&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; 3&lt;/span&gt;

&lt;span class="c1"&gt;# round&lt;/span&gt;
&lt;span class="c1"&gt;# Arredonda um número para o inteiro mais próximo&lt;/span&gt;
&lt;span class="mf"&gt;3.14159&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;round&lt;/span&gt;    &lt;span class="c1"&gt;#=&amp;gt; 3&lt;/span&gt;
&lt;span class="mf"&gt;3.5&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;round&lt;/span&gt;        &lt;span class="c1"&gt;#=&amp;gt; 4&lt;/span&gt;
&lt;span class="mf"&gt;3.14159&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;round&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; 3.14 (com casas decimais)&lt;/span&gt;

&lt;span class="c1"&gt;# to_s&lt;/span&gt;
&lt;span class="c1"&gt;# Converte o número para uma string&lt;/span&gt;
&lt;span class="mi"&gt;42&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;to_s&lt;/span&gt;     &lt;span class="c1"&gt;#=&amp;gt; "42"&lt;/span&gt;

&lt;span class="c1"&gt;# next&lt;/span&gt;
&lt;span class="c1"&gt;# Retorna o próximo número inteiro&lt;/span&gt;
&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;next&lt;/span&gt;      &lt;span class="c1"&gt;#=&amp;gt; 6&lt;/span&gt;

&lt;span class="c1"&gt;# pred&lt;/span&gt;
&lt;span class="c1"&gt;# Retorna o número anterior (predecessor)&lt;/span&gt;
&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;pred&lt;/span&gt;      &lt;span class="c1"&gt;#=&amp;gt; 4&lt;/span&gt;

&lt;span class="c1"&gt;# zero?&lt;/span&gt;
&lt;span class="c1"&gt;# Verifica se o número é zero&lt;/span&gt;
&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;zero?&lt;/span&gt;     &lt;span class="c1"&gt;#=&amp;gt; true&lt;/span&gt;
&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;zero?&lt;/span&gt;     &lt;span class="c1"&gt;#=&amp;gt; false&lt;/span&gt;

&lt;span class="c1"&gt;# positive?&lt;/span&gt;
&lt;span class="c1"&gt;# Verifica se o número é positivo&lt;/span&gt;
&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;positive?&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; true&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;positive?&lt;/span&gt;&lt;span class="c1"&gt;#=&amp;gt; false&lt;/span&gt;

&lt;span class="c1"&gt;# negative?&lt;/span&gt;
&lt;span class="c1"&gt;# Verifica se o número é negativo&lt;/span&gt;
&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;negative?&lt;/span&gt;&lt;span class="c1"&gt;#=&amp;gt; true&lt;/span&gt;
&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;negative?&lt;/span&gt; &lt;span class="c1"&gt;#=&amp;gt; false&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esses métodos ajudam bastante no desenvolvimento com Ruby, tornando o código mais expressivo e direto.&lt;/p&gt;

</description>
      <category>ruby</category>
      <category>rails</category>
      <category>programming</category>
    </item>
    <item>
      <title>A História do Ruby</title>
      <dc:creator>Henrique Silva</dc:creator>
      <pubDate>Wed, 16 Jul 2025 14:54:19 +0000</pubDate>
      <link>https://dev.to/henriquesilvadev/a-historia-do-ruby-ihc</link>
      <guid>https://dev.to/henriquesilvadev/a-historia-do-ruby-ihc</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F00mhtvoqv7oj5ira3z0c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F00mhtvoqv7oj5ira3z0c.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O Ruby nasceu em &lt;strong&gt;24 de fevereiro de 1993&lt;/strong&gt;, quando Yukihiro “Matz” Matsumoto decidiu criar uma linguagem mais poderosa que Perl e mais orientada a objetos que Python (&lt;a href="https://www.youtube.com/watch?v=4MM5b2F9zrM&amp;amp;utm_source=chatgpt.com" rel="noopener noreferrer"&gt;YouTube&lt;/a&gt;, &lt;a href="https://en.wikipedia.org/wiki/Ruby_%28programming_language%29?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipedia&lt;/a&gt;). A inspiração veio de diversas linguagens: Perl, Smalltalk, Eiffel, Ada, Lisp e Python (&lt;a href="https://en.wikipedia.org/wiki/Ruby_%28programming_language%29?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipedia&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Em &lt;strong&gt;21 de dezembro de 1995&lt;/strong&gt;, Matz lançou a primeira versão pública, o &lt;strong&gt;Ruby 0.95&lt;/strong&gt;. Já nessa primeira versão, já estavam presentes conceitos que viriam a ser marcas da linguagem: orientação a objetos, classes, mixins, iterators, exceptions e garbage collection (&lt;a href="https://en.wikipedia.org/wiki/Ruby_%28programming_language%29?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipedia&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Nos anos seguintes, Ruby conquistou o Japão: em 1997 surgiu o primeiro artigo sobre a linguagem; em 1999 foi lançado o &lt;em&gt;Ruby Application Archive&lt;/em&gt;, e no mesmo ano Matz publicou o primeiro livro em japonês (&lt;a href="https://en.wikipedia.org/wiki/Ruby_%28programming_language%29?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipedia&lt;/a&gt;). Em 2000, com o lançamento de “Programming Ruby” em inglês, Ruby começou a ganhar visibilidade mundial (&lt;a href="https://pt.wikipedia.org/wiki/Ruby_%28linguagem_de_programa%C3%A7%C3%A3o%29?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipédia&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Em meados de 2005, Ruby decolou com o 👑 framework &lt;strong&gt;Ruby on Rails&lt;/strong&gt;, lançado oficialmente em &lt;strong&gt;2004&lt;/strong&gt; por David Heinemeier Hansson e que revolucionou o desenvolvimento web (&lt;a href="https://en.wikipedia.org/wiki/Ruby_on_Rails?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipedia&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Desde então, Ruby evoluiu constante:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;1.8&lt;/strong&gt; em 2003, com manutenção até 2013.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;2.x&lt;/strong&gt; a partir de 2013, trazendo melhorias como garbage collector incremental, safe navigation (&lt;code&gt;&amp;amp;.&lt;/code&gt;) e novos métodos (&lt;code&gt;dig&lt;/code&gt;, &lt;code&gt;grep_v&lt;/code&gt;, etc).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;3.x&lt;/strong&gt; a partir de 2020, com foco em performance (“3×3”), suporte a JITs (MJIT, YJIT), Ractors e Fiber Scheduler. Em 2024, a versão &lt;strong&gt;3.4&lt;/strong&gt; trouxe o parser Prism, RJIT e coletor modular (&lt;a href="https://en.wikipedia.org/wiki/Ruby_%28programming_language%29?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipedia&lt;/a&gt;).&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🎥 Indicação de vídeo
&lt;/h2&gt;

&lt;p&gt;Para uma visão condensada e bem divertida sobre a história do Ruby, dá uma olhada nesse vídeo:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=XrsDyT_nfKA&amp;amp;utm_source=chatgpt.com" rel="noopener noreferrer"&gt;23 years of Ruby (Interview) – Matz fala sobre os primeiros passos, filosofia da linguagem e os rumos de Ruby 3.x e além cite&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  💡 Em resumo
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Fase&lt;/th&gt;
&lt;th&gt;Ano&lt;/th&gt;
&lt;th&gt;Principais marcos&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Concepção&lt;/td&gt;
&lt;td&gt;1993&lt;/td&gt;
&lt;td&gt;Ideia para balancear Perl e Python&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Lançamento inicial&lt;/td&gt;
&lt;td&gt;1995&lt;/td&gt;
&lt;td&gt;Ruby 0.95 com OO, mixins e closures&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Popularização&lt;/td&gt;
&lt;td&gt;1999–2000&lt;/td&gt;
&lt;td&gt;Livros, comunidades, mailing lists&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Explosão global&lt;/td&gt;
&lt;td&gt;2005&lt;/td&gt;
&lt;td&gt;Ruby on Rails impulsiona adoção&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Evolução constante&lt;/td&gt;
&lt;td&gt;2003–presente&lt;/td&gt;
&lt;td&gt;1.x → 3.x, foco em performance e modernidade&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  🎯 Conclusão
&lt;/h2&gt;

&lt;p&gt;Ruby foi pensado desde o princípio para proporcionar uma &lt;strong&gt;experiência de programação agradável&lt;/strong&gt;, dando ênfase à felicidade do programador — a famosa filosofia &lt;strong&gt;MINASWAN&lt;/strong&gt; ("Matz is nice and so we are nice") (&lt;a href="https://www.akitaonrails.com/2011/08/05/journey-to-japan-2-the-final-rubykaigi/?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;akitaonrails.com&lt;/a&gt;, &lt;a href="https://en.wikipedia.org/wiki/Yukihiro_Matsumoto?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipedia&lt;/a&gt;, &lt;a href="https://en.wikipedia.org/wiki/Ruby_%28programming_language%29?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipedia&lt;/a&gt;, &lt;a href="https://en.wikipedia.org/wiki/Ruby_on_Rails?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Wikipedia&lt;/a&gt;).&lt;/p&gt;

</description>
      <category>ruby</category>
      <category>rails</category>
      <category>programming</category>
    </item>
    <item>
      <title>Instalando Ruby no Mac</title>
      <dc:creator>Henrique Silva</dc:creator>
      <pubDate>Tue, 15 Jul 2025 14:42:25 +0000</pubDate>
      <link>https://dev.to/henriquesilvadev/instalando-ruby-no-mac-h66</link>
      <guid>https://dev.to/henriquesilvadev/instalando-ruby-no-mac-h66</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftatp3ksclmj9qavmzxrv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftatp3ksclmj9qavmzxrv.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;br&gt;
Antes de começarmos a aprender, precisamos instalar o Ruby.&lt;/p&gt;
&lt;h2&gt;
  
  
  Etapa 1: instalar pacotes e bibliotecas
&lt;/h2&gt;

&lt;p&gt;Antes de instalar o Ruby, precisamos instalar alguns pacotes base. Usaremos o terminal para instalar todos os programas.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 1.1:&lt;/strong&gt; Abra o terminal&lt;br&gt;
Na pasta Aplicativos, encontre “Utilitários” e clique duas vezes em “Terminal”. Como alternativa, usando o Spotlight &lt;code&gt;( Cmd+ Space)&lt;/code&gt; ou o Launchpad, digite “Terminal”.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 1.2:&lt;/strong&gt; Instalar o Xcode&lt;br&gt;
Primeiro, você precisa instalar o Xcode, um programa fornecido pela Apple para programação. O Xcode instalará muitos programas necessários para Ruby e Git e deve levar de 10 a 15 minutos para ser instalado.&lt;/p&gt;

&lt;p&gt;Digite &lt;code&gt;xcode-select --install&lt;/code&gt; no seu terminal e pressione &lt;code&gt;Enter&lt;/code&gt;. Pode ser necessário clicar em “Instalar” quando solicitado.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 1.3:&lt;/strong&gt; Instalar o Homebrew&lt;br&gt;
O próximo programa que você precisa instalar é o &lt;code&gt;Homebrew&lt;/code&gt;, que facilita a instalação de outros programas que você precisará. No terminal, digite o seguinte:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Você será solicitado a digitar sua senha. Ao digitar sua senha, você pode não receber nenhum feedback visual, mas fique tranquilo, pois sua senha está sendo inserida. Após terminar de digitar sua senha, pressione &lt;code&gt;Enter&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Para verificar a instalação do Homebrew, podemos executar&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;which brew
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Parabéns! Você instalou os pré-requisitos!&lt;/p&gt;

&lt;h2&gt;
  
  
  Etapa 2: Instalar o Ruby
&lt;/h2&gt;

&lt;p&gt;Agora você está pronto para instalar o Ruby. Usaremos uma ferramenta chamada rbenv, que facilita o gerenciamento de versões do Ruby.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 2.1:&lt;/strong&gt; Instalar ruby-build&lt;br&gt;
Primeiro, vamos instalar ruby-build:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;brew install ruby-build
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;ruby-build&lt;/code&gt; tornará possível instalar a versão Ruby de nossa escolha.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 2.2:&lt;/strong&gt; Instalar o rbenv&lt;br&gt;
Para instalar rbenv, execute o seguinte no seu terminal:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;brew install rbenv
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Em seguida, execute este comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rbenv init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Neste ponto, abra uma nova aba de terminal para que as alterações tenham efeito.&lt;/p&gt;

&lt;p&gt;Para confirmar se tudo ocorreu como deveria, abra uma nova aba de terminal e execute:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rbenv -v
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Você deve obter uma saída com um número de versão semelhante a este:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rbenv 1.2.0-14-gc6cc0a1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se você não obtiver um número de versão (qualquer coisa que não comece com rbenv 1...), peça ajuda em nosso servidor Discord .&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 2.3:&lt;/strong&gt; Instalar o Ruby&lt;br&gt;
Agora podemos (finalmente) instalar o Ruby! Nosso currículo atualmente usa a versão 3.4.2, o que permitirá que você conclua os materiais e o conteúdo desta trilha sem erros. Atualizaremos o material para acomodar versões mais recentes conforme necessário. Sem mais delongas, vamos começar!&lt;/p&gt;

&lt;p&gt;Primeiro, vamos atualizar &lt;code&gt;ruby-build&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;brew upgrade ruby-build
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Agora estamos prontos para instalar a versão desejada do Ruby:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rbenv install 3.4.2 --verbose
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Este comando levará de 10 a 15 minutos para ser concluído. A --verbosebandeira mostrará o que está acontecendo para que você tenha certeza de que não travou.&lt;/p&gt;

&lt;p&gt;Após a instalação do Ruby, você precisa informar ao rbenv qual versão usar por padrão. No terminal, digite:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rbenv global 3.4.2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Você pode verificar se isso funcionou digitando &lt;code&gt;ruby -v&lt;/code&gt; e verificando se a saída diz versão 3.4.2:&lt;/p&gt;

&lt;p&gt;Você deve obter uma saída com um número de versão semelhante a este:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ruby 3.4.2pxx (20xx-xx-xx revision xxxxx) [x86_64-darwin18]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se você não vir a saída acima, feche e reabra a janela do terminal e execute o comando novamente.&lt;/p&gt;

&lt;p&gt;Parabéns! Dê um tapinha nas costas! A parte difícil já passou, e é hora de passar para a próxima lição!&lt;/p&gt;

</description>
      <category>ruby</category>
      <category>rails</category>
      <category>sistema</category>
      <category>rbenv</category>
    </item>
    <item>
      <title>Instalando Ruby no Linux</title>
      <dc:creator>Henrique Silva</dc:creator>
      <pubDate>Tue, 15 Jul 2025 14:17:56 +0000</pubDate>
      <link>https://dev.to/henriquesilvadev/instalando-ruby-no-linux-2ke6</link>
      <guid>https://dev.to/henriquesilvadev/instalando-ruby-no-linux-2ke6</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fndr9d8c5khi8bv1f47ap.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fndr9d8c5khi8bv1f47ap.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Introdução
&lt;/h2&gt;

&lt;p&gt;Antes de começarmos a aprender, precisamos instalar o Ruby. Esta seção é onde você pode encontrar muitos erros.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Antes de continuar, vamos rever algumas práticas recomendadas que você deve ter em mente:&lt;/li&gt;
&lt;li&gt;Copie e cole os comandos para evitar erros de digitação.&lt;/li&gt;
&lt;li&gt;Siga as instruções atentamente e não pule nenhuma seção.&lt;/li&gt;
&lt;li&gt;NÃO use, sudo a menos que o Projeto diga especificamente para fazer isso. Não seguir isso pode causar muitas dores de cabeça e nunca executar como usuário root. Em alguns casos, você pode ver uma mensagem no terminal pedindo para usar sudo e instalar algo com apt. Ignore isso e siga as instruções por enquanto.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Agora, vamos começar!&lt;/p&gt;

&lt;h2&gt;
  
  
  Linux
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Etapa 1:&lt;/strong&gt; Instalar atualizações, pacotes e bibliotecas&lt;br&gt;
Antes de instalar o Ruby, precisamos instalar alguns pacotes base.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 1.1:&lt;/strong&gt; Abra o terminal&lt;br&gt;
Usaremos o terminal para instalar todos os programas.&lt;/p&gt;

&lt;p&gt;Se você estiver usando Ubuntu ou Xubuntu, pressione Ctrl+ Alt+ T para abrir o terminal. (Isso pode funcionar em outras distribuições Linux; você terá que tentar!)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 1.2:&lt;/strong&gt; Atualizar o Linux&lt;br&gt;
O restante da instalação ocorrerá dentro da janela do terminal.&lt;/p&gt;

&lt;p&gt;Primeiro, precisamos garantir que sua distribuição Linux esteja atualizada. Execute estes comandos um por um. Como esses comandos usam sudo, você precisará digitar sua senha para que eles sejam executados. Ao digitar sua senha, você pode não receber nenhum feedback visual, mas tenha certeza de que sua senha está sendo inserida. Assim que terminar de digitar sua senha, pressione Enter.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt update
sudo apt upgrade
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Quando solicitado, pressione Ye depois Enter.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 1.3:&lt;/strong&gt; Instalar pacotes e bibliotecas&lt;br&gt;
Em seguida, você precisa instalar alguns pacotes necessários que não vêm pré-instalados. Certifique-se de copiar e colar este comando.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;gcc make libssl-dev libreadline-dev zlib1g-dev libsqlite3-dev libyaml-dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Quando solicitado, pressione Ye depois Enter. Você pode ou não precisar digitar sua senha após pressionar Enter.&lt;/p&gt;

&lt;h2&gt;
  
  
  Etapa 2: Instalar o Ruby
&lt;/h2&gt;

&lt;p&gt;Agora você está pronto para instalar o Ruby. Usaremos uma ferramenta chamada rbenv, que facilita a instalação e o gerenciamento de versões do Ruby.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa 2.1:&lt;/strong&gt; Instalar o rbenv&lt;br&gt;
Primeiro, você precisa clonar o repositório rbenv.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git clone https://github.com/rbenv/rbenv.git ~/.rbenv
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O próximo comando cuida da configuração do rbenv.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;~/.rbenv/bin/rbenv init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Feche a janela do terminal e abra uma nova para atualizar.&lt;/p&gt;

&lt;p&gt;Em seguida, você precisa instalar ruby-buildpara ajudar a compilar os binários do Ruby. Execute estes comandos no terminal para criar um diretório para o plugin ruby-build e, em seguida, baixe-o para o diretório apropriado.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mkdir -p "$(rbenv root)"/plugins
git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Por fim, execute&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rbenv -v
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;no seu terminal para verificar se rbenvfoi instalado corretamente. Você deverá obter uma saída com um número de versão semelhante a este:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rbenv 1.2.0-14-gc6cc0a1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Etapa 2.2:&lt;/strong&gt; Instalar o Ruby&lt;br&gt;
Finalmente chegou a hora de instalar o Ruby usando rbenv!&lt;/p&gt;

&lt;p&gt;Dentro do terminal, execute este comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rbenv install 3.4.2 --verbose
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Este comando levará de 10 a 15 minutos para ser concluído. A --verbosebandeira mostrará o que está acontecendo para que você tenha certeza de que não travou.&lt;/p&gt;

&lt;p&gt;Você pode receber esta mensagem de erro:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ruby-build: definition not found: x.x.x

See all available versions with `rbenv install --list'.

If the version you need is missing, try upgrading ruby-build:

  git -C /home/itorja/.rbenv/plugins/ruby-build pull
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se sim, executamos o comando sugerido:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git -C "$(rbenv root)"/plugins/ruby-build pull
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Após a instalação do Ruby, você precisa informar ao rbenv qual versão usar por padrão. No terminal, digite:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rbenv global 3.4.2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Então,&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ruby -v
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O comando acima deve retornar algo semelhante a isto:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ruby 3.4.2pxx (20xx-xx-xx revision xxxxx) [x86_64-linux]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;onde x representa a versão disponível no momento em que você instalou o Ruby.&lt;/p&gt;

&lt;p&gt;Parabéns! Dê um tapinha nas costas! A parte difícil já passou, e é hora de passar para a próxima lição!&lt;/p&gt;

</description>
      <category>ruby</category>
      <category>rails</category>
      <category>ubuntu</category>
      <category>sistema</category>
    </item>
  </channel>
</rss>
