SlideShare uma empresa Scribd logo
1 de 20
Como Rails e DHH
revolucionaram a
engenharia de
software
2005-2019
Fernando Henriques
● Desenvolvedor 10+ anos
● Senior Full Stack Developer
● JavaScript, Ruby, PHP e Java
● Front-end 💓 3000
@fernandohenriques
@fernandohenriques
Ruby on Rails
Criado pelo dinamarquês DHH (David
Heinemeier Hansson) em 2003, quando
trabalhava na base de código do Basecamp,
software de gerenciamento de projetos que
vigora até hoje.
A versão 1.0 do Rails foi lançada em 2005.
Ruby
O japonês Yukihiro Matsumoto (Matz) criou
a linguagem em 1993!
➔ Inesperada
Ruby era praticamente desconhecida
antes do Rails.
➔ Escalou
Com o Rails o Ruby saiu do Japão e
ganhou o mundo.
➔ OOP
“Eu queria uma linguagem de script
que fosse mais poderosa do que Perl, e
mais orientada a objetos do que
Python”.
Qual o maior
diferencial do Ruby on
Rails?
Convention
over
Mercado
Não havia nada parecido.
No mundo Java
(enterprise), configurar
XML era/é uma dor muito
grande.
Antes de codar o dev
passa horas configurando..
Através do CoC o
desenvolvedor tem
a facilidade de criar uma aplicação web do
zero, em minutos, praticamente sem
configuração.
Mas que raios é
CoC?
Na prática, significa
diminuir a quantidade de
decisões que o
desenvolvedor deve tomar
Apresentado no FISL, em Porto Alegre - 2005
A maioria dos
frameworks hoje
adotam o CoC
popularizado pelo Rails
Os scaffoldings foram
outra revolução
proposta pelo Rails.
A ideia de ter uma ferramenta que escreve
código para você. Aquele código “conhecido”,
que dá para gerar de maneira automática.
Através dos scaffoldings
o Rails criou sua fama de
ter uma produtividade
absurda, o que é
verdade. Ainda hoje.
Hoje em dia “generators”
são muito populares em
diversos ecossistemas.
O Rails popularizou/consolidou diversas
boas práticas de engenharia de
software: testes automatizados, por
exemplo.
O fato de já trazer uma estrutura
definida e pronta para testar facilita
bastante.
O Rails influenciou diversas
comunidades também. Em boas
práticas e compartilhamento de
ideias/códigos. Artigos, eventos… a
comunidade sempre foi muito forte. No
Brasil (Akita ♥) e fora.
Framework opinativo
Seu sucesso advém em muito
desta curadoria.
“The menu is omakase”.
O Rails ainda acredita mais no monolito
do que no microsserviço.
Rails API não é o padrão.
Like a Rails
● Grails
● CakePHP
● Laravel
● AdonisJS
● Ember
● E até o Spring Boot
O Rails ainda é uma ferramenta
completa para desenvolver uma
aplicação básica para a web. Sem
precisar de gems extras e de forma fácil.
Obrigado!!

Mais conteúdo relacionado

Semelhante a Como Rails e DHH revolucionaram a engenharia de software

ruby on rails e o mercado
ruby on rails e o mercadoruby on rails e o mercado
ruby on rails e o mercadoelliando dias
 
Palestra Faculdade Lourenço Filho
Palestra Faculdade Lourenço FilhoPalestra Faculdade Lourenço Filho
Palestra Faculdade Lourenço Filhorafarubert
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Valmir Justo
 
Ruby On Rails - Porque Utilizar?
Ruby On Rails - Porque Utilizar?Ruby On Rails - Porque Utilizar?
Ruby On Rails - Porque Utilizar?David Ruiz
 
10 Linguagens de programação essenciais
10 Linguagens de programação essenciais10 Linguagens de programação essenciais
10 Linguagens de programação essenciaisAlexandre Oliveira
 
Introdução ao Ruby on Rails (InstallFest 2006)
Introdução ao Ruby on Rails (InstallFest 2006)Introdução ao Ruby on Rails (InstallFest 2006)
Introdução ao Ruby on Rails (InstallFest 2006)Julio Monteiro
 
Ferramentas Livres para Desenvolvimento Web
Ferramentas Livres para Desenvolvimento WebFerramentas Livres para Desenvolvimento Web
Ferramentas Livres para Desenvolvimento Webigorpimentel
 
Ruby on Rails Colocando a web nos trilhos
Ruby on Rails Colocando a web nos trilhosRuby on Rails Colocando a web nos trilhos
Ruby on Rails Colocando a web nos trilhosjpaulolins
 
Ruby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao FrameworkRuby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao FrameworkGuilherme Carlos
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...iMasters
 
Docker: Introdução à Conteinerização de Apps e Nuvem.
Docker: Introdução à Conteinerização de Apps e Nuvem.Docker: Introdução à Conteinerização de Apps e Nuvem.
Docker: Introdução à Conteinerização de Apps e Nuvem.Marcel Cattaneo
 
Ruby on rails impressione a você mesmo, seu chefe e seu cliente
Ruby on rails  impressione a você mesmo, seu chefe e seu clienteRuby on rails  impressione a você mesmo, seu chefe e seu cliente
Ruby on rails impressione a você mesmo, seu chefe e seu clienteRodrigo Urubatan
 

Semelhante a Como Rails e DHH revolucionaram a engenharia de software (20)

Rails 03
Rails 03Rails 03
Rails 03
 
ruby on rails e o mercado
ruby on rails e o mercadoruby on rails e o mercado
ruby on rails e o mercado
 
The Next Big Language
The Next Big LanguageThe Next Big Language
The Next Big Language
 
Palestra Faculdade Lourenço Filho
Palestra Faculdade Lourenço FilhoPalestra Faculdade Lourenço Filho
Palestra Faculdade Lourenço Filho
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Rails
 
Rails
RailsRails
Rails
 
Ruby and Rails
Ruby and RailsRuby and Rails
Ruby and Rails
 
Ruby On Rails - Porque Utilizar?
Ruby On Rails - Porque Utilizar?Ruby On Rails - Porque Utilizar?
Ruby On Rails - Porque Utilizar?
 
10 Linguagens de programação essenciais
10 Linguagens de programação essenciais10 Linguagens de programação essenciais
10 Linguagens de programação essenciais
 
Ruby on rails porque usar rails?!
Ruby on rails   porque usar rails?!Ruby on rails   porque usar rails?!
Ruby on rails porque usar rails?!
 
Introdução ao Ruby on Rails (InstallFest 2006)
Introdução ao Ruby on Rails (InstallFest 2006)Introdução ao Ruby on Rails (InstallFest 2006)
Introdução ao Ruby on Rails (InstallFest 2006)
 
Ferramentas Livres para Desenvolvimento Web
Ferramentas Livres para Desenvolvimento WebFerramentas Livres para Desenvolvimento Web
Ferramentas Livres para Desenvolvimento Web
 
Ruby on Rails Colocando a web nos trilhos
Ruby on Rails Colocando a web nos trilhosRuby on Rails Colocando a web nos trilhos
Ruby on Rails Colocando a web nos trilhos
 
Ruby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao FrameworkRuby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao Framework
 
Rail road
Rail roadRail road
Rail road
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
 
RoR Beta
RoR BetaRoR Beta
RoR Beta
 
Docker: Introdução à Conteinerização de Apps e Nuvem.
Docker: Introdução à Conteinerização de Apps e Nuvem.Docker: Introdução à Conteinerização de Apps e Nuvem.
Docker: Introdução à Conteinerização de Apps e Nuvem.
 
Ruby on rails impressione a você mesmo, seu chefe e seu cliente
Ruby on rails  impressione a você mesmo, seu chefe e seu clienteRuby on rails  impressione a você mesmo, seu chefe e seu cliente
Ruby on rails impressione a você mesmo, seu chefe e seu cliente
 

Mais de Fernando Henriques

9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometemFernando Henriques
 
A importância de padronizar nosso CSS
A importância de padronizar nosso CSSA importância de padronizar nosso CSS
A importância de padronizar nosso CSSFernando Henriques
 
Introdução ao GraphQL - Uma nova forma de criar APIs (Ruby)
Introdução ao GraphQL - Uma nova forma de criar APIs (Ruby)Introdução ao GraphQL - Uma nova forma de criar APIs (Ruby)
Introdução ao GraphQL - Uma nova forma de criar APIs (Ruby)Fernando Henriques
 
O front-end moderno e sua lib mais popular: React
O front-end moderno e sua lib mais popular: ReactO front-end moderno e sua lib mais popular: React
O front-end moderno e sua lib mais popular: ReactFernando Henriques
 
O front-end moderno e sua lib mais popular: React
O front-end moderno e sua lib mais popular: ReactO front-end moderno e sua lib mais popular: React
O front-end moderno e sua lib mais popular: ReactFernando Henriques
 
Introdução ao GraphQL - Uma nova forma de criar APIs
Introdução ao GraphQL - Uma nova forma de criar APIsIntrodução ao GraphQL - Uma nova forma de criar APIs
Introdução ao GraphQL - Uma nova forma de criar APIsFernando Henriques
 
Rails admin : Como criar um painel administrativo na velocidade da luz
Rails admin : Como criar um painel administrativo na velocidade da luzRails admin : Como criar um painel administrativo na velocidade da luz
Rails admin : Como criar um painel administrativo na velocidade da luzFernando Henriques
 

Mais de Fernando Henriques (7)

9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem
 
A importância de padronizar nosso CSS
A importância de padronizar nosso CSSA importância de padronizar nosso CSS
A importância de padronizar nosso CSS
 
Introdução ao GraphQL - Uma nova forma de criar APIs (Ruby)
Introdução ao GraphQL - Uma nova forma de criar APIs (Ruby)Introdução ao GraphQL - Uma nova forma de criar APIs (Ruby)
Introdução ao GraphQL - Uma nova forma de criar APIs (Ruby)
 
O front-end moderno e sua lib mais popular: React
O front-end moderno e sua lib mais popular: ReactO front-end moderno e sua lib mais popular: React
O front-end moderno e sua lib mais popular: React
 
O front-end moderno e sua lib mais popular: React
O front-end moderno e sua lib mais popular: ReactO front-end moderno e sua lib mais popular: React
O front-end moderno e sua lib mais popular: React
 
Introdução ao GraphQL - Uma nova forma de criar APIs
Introdução ao GraphQL - Uma nova forma de criar APIsIntrodução ao GraphQL - Uma nova forma de criar APIs
Introdução ao GraphQL - Uma nova forma de criar APIs
 
Rails admin : Como criar um painel administrativo na velocidade da luz
Rails admin : Como criar um painel administrativo na velocidade da luzRails admin : Como criar um painel administrativo na velocidade da luz
Rails admin : Como criar um painel administrativo na velocidade da luz
 

Como Rails e DHH revolucionaram a engenharia de software

  • 1. Como Rails e DHH revolucionaram a engenharia de software 2005-2019
  • 2. Fernando Henriques ● Desenvolvedor 10+ anos ● Senior Full Stack Developer ● JavaScript, Ruby, PHP e Java ● Front-end 💓 3000 @fernandohenriques @fernandohenriques
  • 3. Ruby on Rails Criado pelo dinamarquês DHH (David Heinemeier Hansson) em 2003, quando trabalhava na base de código do Basecamp, software de gerenciamento de projetos que vigora até hoje. A versão 1.0 do Rails foi lançada em 2005.
  • 4. Ruby O japonês Yukihiro Matsumoto (Matz) criou a linguagem em 1993! ➔ Inesperada Ruby era praticamente desconhecida antes do Rails. ➔ Escalou Com o Rails o Ruby saiu do Japão e ganhou o mundo. ➔ OOP “Eu queria uma linguagem de script que fosse mais poderosa do que Perl, e mais orientada a objetos do que Python”.
  • 5. Qual o maior diferencial do Ruby on Rails? Convention over Mercado Não havia nada parecido. No mundo Java (enterprise), configurar XML era/é uma dor muito grande. Antes de codar o dev passa horas configurando..
  • 6. Através do CoC o desenvolvedor tem a facilidade de criar uma aplicação web do zero, em minutos, praticamente sem configuração.
  • 7. Mas que raios é CoC? Na prática, significa diminuir a quantidade de decisões que o desenvolvedor deve tomar
  • 8. Apresentado no FISL, em Porto Alegre - 2005
  • 9.
  • 10. A maioria dos frameworks hoje adotam o CoC popularizado pelo Rails
  • 11. Os scaffoldings foram outra revolução proposta pelo Rails. A ideia de ter uma ferramenta que escreve código para você. Aquele código “conhecido”, que dá para gerar de maneira automática.
  • 12. Através dos scaffoldings o Rails criou sua fama de ter uma produtividade absurda, o que é verdade. Ainda hoje.
  • 13. Hoje em dia “generators” são muito populares em diversos ecossistemas.
  • 14. O Rails popularizou/consolidou diversas boas práticas de engenharia de software: testes automatizados, por exemplo. O fato de já trazer uma estrutura definida e pronta para testar facilita bastante.
  • 15. O Rails influenciou diversas comunidades também. Em boas práticas e compartilhamento de ideias/códigos. Artigos, eventos… a comunidade sempre foi muito forte. No Brasil (Akita ♥) e fora.
  • 16. Framework opinativo Seu sucesso advém em muito desta curadoria. “The menu is omakase”.
  • 17. O Rails ainda acredita mais no monolito do que no microsserviço. Rails API não é o padrão.
  • 18. Like a Rails ● Grails ● CakePHP ● Laravel ● AdonisJS ● Ember ● E até o Spring Boot
  • 19. O Rails ainda é uma ferramenta completa para desenvolver uma aplicação básica para a web. Sem precisar de gems extras e de forma fácil.