FILOSOFIA RUBY E RAILS
@danielvlopes
areacriacoes.com.br
software + design




           areacriacoes.com.br
cifrascash.com
egenial.com.br/cursos
egenial.com.br/cursos
egenial.com.br/cursos
ENG. DE SOFTWARE
CENTRADA EM MÉTODOS ÁGEIS
      http://bit.ly/unapos
SLIDESHARE.NET/DANIELVLOPES
FILOSOFIA RUBY E RAILS
•   Código

•   Cultura

•   Criatividade
POR QUE ME INTERESSA?
... um aclamado instrutor aplicando um curso descobriu
     que um de seus pupilos era um venture capitalist.
Quando questionado sobre o motivo de estar em uma
turma de “Ruby on Rails” ... , ele respondeu simplesmente:
todas as start-ups que me procuram estão usando,
     eu quero descobrir qual é o “grande lance”.




                    ...
Investidores estão pressionando startups para usarem Ruby.
"É mais rápido, então se você pode encurtar a entrega em um
   ...
Investidores estão pressionando startups para usarem Ruby.
"É mais rápido, então se você pode encurtar a entrega em um
   ...
POR QUE STARTUPS?
VOCÊ DEVE SE
COMPORTAR COMO
  UMA STARTUP
Yukihiro Matsumoto
 (criador do Ruby)
“Se você terminar seu trabalho
rápido e de forma divertida, isso
          não é bom?”



                 Matz http://www...
“Tornar as coisas simples fáceis e as
   coisas complexas possíveis”
•   100% orientada a objetos

•   Linguagem dinâmica

•   Esperados 4 milhões até 2013

•   FREE e Open Source

•   As vez...
Eu inventei o termo
“Orientação a
Objetos” e posso
dizer que não era C++
que eu tinha em
mente.
Dave Thomas
Dave Thomas   2001
2004
“Eu sempre soube que Smalltalk substituiria
Java. Só não sabia que isso se chamaria Ruby.”




                   Kent Bec...
FICAMOS EMPOLGADOS !!!
Vídeo Java VS Rails
JRuby
Charles Nutter
JRuby
         Charles Nutter




MacRuby
L. Sansonetti
JQuery/Rails             JRuby
 Yehuda Katz            Charles Nutter




               MacRuby
               L. Sansone...
Ruby   1.8.7
Ruby   1.8.7
Ruby   1.9.2
JRuby   1.5.X
JRuby     1.5.X
Rubinius    1.1
JRuby     1.5.X
Rubinius    1.1
Mac Ruby    0.6
JRuby      1.5.X
Rubinius     1.1
Mac Ruby     0.6
Iron Ruby    1.0
RUBY NA WEB
RUBY ON RAILS
JASON FRIED
DAVID
HANSSON
DHH
DHH




      2004
Vídeo 37Signals
código gerando código
código gerando código

convention over configuration
código gerando código

convention over configuration

    don’t repeat your self
código gerando código

convention over configuration

    don’t repeat your self

    desenvolvimento ágil
EXTREME PROGRAMMING
recursos restful
recursos restful


Unicode, TimeZone, i18n
recursos restful


Unicode, TimeZone, i18n


      Segurança
 (XSS, XSRF, Injection)
Templates                           ERB, HAML


                       HTTP Basic, HTTP Digest,
Autenticação
             ...
Templates                           ERB, HAML


                       HTTP Basic, HTTP Digest,
Autenticação
             ...
Templates                           ERB, HAML


                       HTTP Basic, HTTP Digest,
Autenticação
             ...
Templates                           ERB, HAML


                       HTTP Basic, HTTP Digest,
Autenticação
             ...
Templates                           ERB, HAML


                       HTTP Basic, HTTP Digest,
Autenticação
             ...
Templates                           ERB, HAML


                       HTTP Basic, HTTP Digest,
Autenticação
             ...
class Post < ActiveRecord::Base
  # ASSOCIATIONS
                                                                         ...
views
<%= form_for [ post, comment ], :remote => true do |f| %>
  <%= error_messages_for comment %>

  <div class="field">...
class Admin::PostCategoriesController < ApplicationController
  def index
    @categories = PostCategory.all
             ...
CLEAN CODE
190
VS

40
Eles servem mais de 23 milhões de visitantes/mês.
Eles servem mais de 23 milhões de visitantes/mês.
  A conversão resultou em 20 mil linhas de Ruby
        em vez de 125 mi...
Eles servem mais de 23 milhões de visitantes/mês.
  A conversão resultou em 20 mil linhas de Ruby
        em vez de 125 mi...
A conversão resultou em 20 mil linhas de Ruby
      em vez de 125 mil linhas de Java
 mais importante, facilitou a dificuld...
mais importante, facilitou a dificuldade que
        tinham em manutenção.
 Eles finalizaram a reescrita do sistema em
 apen...
ECOSSISTEMA
Repositórios            Github e Codebase



Integração Contínua   Hudson, Cruise, CI Joe


                              ...
Repositórios            Github e Codebase



Integração Contínua   Hudson, Cruise, CI Joe


                              ...
Repositórios            Github e Codebase



Integração Contínua   Hudson, Cruise, CI Joe


                              ...
Repositórios            Github e Codebase



Integração Contínua   Hudson, Cruise, CI Joe


                              ...
source 'http://rubygems.org'                    Gemfile
gem   'rails', '3.0.0.rc'
gem   'devise', '1.1.1'
gem   'paperclip'...
COMO ACHAR ?
DEPLOY
set :application, "producer"
set :ip_address , "208.88.125.20"
                                                           ...
TESTES
RSpec Steak
 Cucumber        Test::Unit
Minitest     Bacon   Should
 Factory Girl    Fabrication
 Machinist      Mocha    ...
Cucumber
Feature: Authenticate
  In order to see my previous links
  As a user
  I want to be able to create an account

 ...
feature "Catalog", %q{                                       Steak
  In order to display a catalog in devices
  As registe...
describe Guest
  before do
                 do
                                                                       Mini...
COMUNIDADE
guides.rubyonrails.org
peepcode.com
railscasts.com
akitaonrails.com
egenial.com.br/cursos
github.com
MITOS
Ruby é Lento
http://programmingzen.com/?s=benchmark
slideshare.net
Home 331 ms
   Total 5.45 ms
http://railsmg.org/meetings/1
Rails NÃO ESCALA
Friendster foi escrito em Java e
mudaram para PHP.

MySpace foi escrito em ColdFusion e
mudaram ASP.NET.

Quando as pessoa...
“O The New York Times usou Ruby on Rails para agregar,
analizar e mostrar os resultados das eleições em quase tempo
    re...
RAILS é a SALVAÇÃO
VAMOS SER AGILE
http://www.vimeo.com/1752667
Recapitulando
entregue rápido
entregue rápido
entregue sempre
entregue rápido
entregue sempre
 com qualidade
SEJA SEMPRE
PROFISSIONAL
Vídeo Uncle Bob
Aprender Ruby e Rails
  vão te tornar um
 profissional melhor
CURSOS
	 egenial.com.br/cursorails
  egenial.com.br/imersaorubyonrails

CONTATOS
	 blog.areacriacoes.com.br
	 twitter @dan...
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
Upcoming SlideShare
Loading in...5
×

Filosofia Ruby e Rails (UFOP e Inforuso 2010)

2,285

Published on

Filosofia do Ruby/Rails e valores da comunidade.

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,285
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
26
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Filosofia Ruby e Rails (UFOP e Inforuso 2010)

  1. 1. FILOSOFIA RUBY E RAILS
  2. 2. @danielvlopes
  3. 3. areacriacoes.com.br
  4. 4. software + design areacriacoes.com.br
  5. 5. cifrascash.com
  6. 6. egenial.com.br/cursos
  7. 7. egenial.com.br/cursos
  8. 8. egenial.com.br/cursos
  9. 9. ENG. DE SOFTWARE CENTRADA EM MÉTODOS ÁGEIS http://bit.ly/unapos
  10. 10. SLIDESHARE.NET/DANIELVLOPES
  11. 11. FILOSOFIA RUBY E RAILS
  12. 12. • Código • Cultura • Criatividade
  13. 13. POR QUE ME INTERESSA?
  14. 14. ... um aclamado instrutor aplicando um curso descobriu que um de seus pupilos era um venture capitalist.
  15. 15. Quando questionado sobre o motivo de estar em uma turma de “Ruby on Rails” ... , ele respondeu simplesmente:
  16. 16. todas as start-ups que me procuram estão usando, eu quero descobrir qual é o “grande lance”. Mark Gardner http://bit.ly/railsecosystem
  17. 17. Investidores estão pressionando startups para usarem Ruby. "É mais rápido, então se você pode encurtar a entrega em um mês, porque não usar Ruby?" Matz Ruby World Keynote http://bit.ly/bH4hA2
  18. 18. Investidores estão pressionando startups para usarem Ruby. "É mais rápido, então se você pode encurtar a entrega em um mês, porque não usar Ruby?" Mais de 60% dos VCs usam Ruby para criar seus sistemas Matz Ruby World Keynote http://bit.ly/bH4hA2
  19. 19. POR QUE STARTUPS?
  20. 20. VOCÊ DEVE SE COMPORTAR COMO UMA STARTUP
  21. 21. Yukihiro Matsumoto (criador do Ruby)
  22. 22. “Se você terminar seu trabalho rápido e de forma divertida, isso não é bom?” Matz http://www.artima.com/intv/ruby3.html
  23. 23. “Tornar as coisas simples fáceis e as coisas complexas possíveis”
  24. 24. • 100% orientada a objetos • Linguagem dinâmica • Esperados 4 milhões até 2013 • FREE e Open Source • As vezes chamada de “scripting” language
  25. 25. Eu inventei o termo “Orientação a Objetos” e posso dizer que não era C++ que eu tinha em mente.
  26. 26. Dave Thomas
  27. 27. Dave Thomas 2001
  28. 28. 2004
  29. 29. “Eu sempre soube que Smalltalk substituiria Java. Só não sabia que isso se chamaria Ruby.” Kent Beck, Criador do "Extreme Programming" e "TDD"
  30. 30. FICAMOS EMPOLGADOS !!!
  31. 31. Vídeo Java VS Rails
  32. 32. JRuby Charles Nutter
  33. 33. JRuby Charles Nutter MacRuby L. Sansonetti
  34. 34. JQuery/Rails JRuby Yehuda Katz Charles Nutter MacRuby L. Sansonetti
  35. 35. Ruby 1.8.7
  36. 36. Ruby 1.8.7 Ruby 1.9.2
  37. 37. JRuby 1.5.X
  38. 38. JRuby 1.5.X Rubinius 1.1
  39. 39. JRuby 1.5.X Rubinius 1.1 Mac Ruby 0.6
  40. 40. JRuby 1.5.X Rubinius 1.1 Mac Ruby 0.6 Iron Ruby 1.0
  41. 41. RUBY NA WEB
  42. 42. RUBY ON RAILS
  43. 43. JASON FRIED
  44. 44. DAVID HANSSON
  45. 45. DHH
  46. 46. DHH 2004
  47. 47. Vídeo 37Signals
  48. 48. código gerando código
  49. 49. código gerando código convention over configuration
  50. 50. código gerando código convention over configuration don’t repeat your self
  51. 51. código gerando código convention over configuration don’t repeat your self desenvolvimento ágil
  52. 52. EXTREME PROGRAMMING
  53. 53. recursos restful
  54. 54. recursos restful Unicode, TimeZone, i18n
  55. 55. recursos restful Unicode, TimeZone, i18n Segurança (XSS, XSRF, Injection)
  56. 56. Templates ERB, HAML HTTP Basic, HTTP Digest, Autenticação Devise MongoDB, CouchDB, MySQL, Bancos de Dados PostgreSQL, Oracle ActiveRecord, DataMapper, ORM’s MongoMapper Javascript Prototype, jQuery, SproutCore Apache 2, NginX, Lighty, Web Servers Litespeed
  57. 57. Templates ERB, HAML HTTP Basic, HTTP Digest, Autenticação Devise MongoDB, CouchDB, MySQL, Bancos de Dados PostgreSQL, Oracle ActiveRecord, DataMapper, ORM’s MongoMapper Javascript Prototype, jQuery, SproutCore Apache 2, NginX, Lighty, Web Servers Litespeed
  58. 58. Templates ERB, HAML HTTP Basic, HTTP Digest, Autenticação Devise MongoDB, CouchDB, MySQL, Bancos de Dados PostgreSQL, Oracle ActiveRecord, DataMapper, ORM’s MongoMapper Javascript Prototype, jQuery, SproutCore Apache 2, NginX, Lighty, Web Servers Litespeed
  59. 59. Templates ERB, HAML HTTP Basic, HTTP Digest, Autenticação Devise MongoDB, CouchDB, MySQL, Bancos de Dados PostgreSQL, Oracle ActiveRecord, DataMapper, ORM’s MongoMapper Javascript Prototype, jQuery, SproutCore Apache 2, NginX, Lighty, Web Servers Litespeed
  60. 60. Templates ERB, HAML HTTP Basic, HTTP Digest, Autenticação Devise MongoDB, CouchDB, MySQL, Bancos de Dados PostgreSQL, Oracle ActiveRecord, DataMapper, ORM’s MongoMapper Javascript Prototype, jQuery, SproutCore Apache 2, NginX, Lighty, Web Servers Litespeed
  61. 61. Templates ERB, HAML HTTP Basic, HTTP Digest, Autenticação Devise MongoDB, CouchDB, MySQL, Bancos de Dados PostgreSQL, Oracle ActiveRecord, DataMapper, ORM’s MongoMapper Javascript Prototype, jQuery, SproutCore Apache 2, NginX, Lighty, Web Servers Litespeed
  62. 62. class Post < ActiveRecord::Base # ASSOCIATIONS model has_and_belongs_to_many :categories belongs_to :author has_many :comments, :dependent => :destroy # VALIDATIONS validates_presence_of :title, :body, :author, :slug, :published_at validates_uniqueness_of :slug validates_inclusion_of :draft, :in => [true, false] validates_associated :author # SCOPES (custom queries) default_scope :order => 'published_at DESC' scope :published, lambda { where(:draft => false) } # CALLBACKS before_validation :generate_slug protected def generate_slug self.slug = title unless slug.present? self.slug = slug.parameterize end end
  63. 63. views <%= form_for [ post, comment ], :remote => true do |f| %> <%= error_messages_for comment %> <div class="field"> <%= f.label :author %><br /> <%= f.text_field :author %> </div> <div class="field"> <%= f.label :url %><br /> <%= f.text_field :url %> </div> <div class="field"> <%= f.label :body %><br /> <%= f.text_area :body, :rows => 10, :cols => 90 %> </div> <%= render "submit_or_cancel" %> <% end %>
  64. 64. class Admin::PostCategoriesController < ApplicationController def index @categories = PostCategory.all controller respond_with @categories end def show @category = PostCategory.find(params[:id]) respond_with @category end def new @category = PostCategory.new respond_with @category end def edit @category = PostCategory.find(params[:id]) end def create @category = PostCategory.new(params[:post_category]) flash[:notice] = 'Category was successfully created.' if @category.save respond_with @category end def update end def destroy end end
  65. 65. CLEAN CODE
  66. 66. 190 VS 40
  67. 67. Eles servem mais de 23 milhões de visitantes/mês.
  68. 68. Eles servem mais de 23 milhões de visitantes/mês. A conversão resultou em 20 mil linhas de Ruby em vez de 125 mil linhas de Java
  69. 69. Eles servem mais de 23 milhões de visitantes/mês. A conversão resultou em 20 mil linhas de Ruby em vez de 125 mil linhas de Java mais importante, facilitou a dificuldade que tinham em manutenção.
  70. 70. A conversão resultou em 20 mil linhas de Ruby em vez de 125 mil linhas de Java mais importante, facilitou a dificuldade que tinham em manutenção. Eles finalizaram a reescrita do sistema em apenas 3 meses com 4 desenvolvedores.
  71. 71. mais importante, facilitou a dificuldade que tinham em manutenção. Eles finalizaram a reescrita do sistema em apenas 3 meses com 4 desenvolvedores. Uma vez completo e otimizado, o site deles agora é mais rápido que antes http://www.railsonwave.com/railsonwave/2008/6/4/yellowpages-com-migrates-to-rails
  72. 72. ECOSSISTEMA
  73. 73. Repositórios Github e Codebase Integração Contínua Hudson, Cruise, CI Joe Chef, Puppet, Deploy Capistrano NewRelic, Scout, Monitoramento BackupMyApp
  74. 74. Repositórios Github e Codebase Integração Contínua Hudson, Cruise, CI Joe Chef, Puppet, Deploy Capistrano NewRelic, Scout, Monitoramento BackupMyApp
  75. 75. Repositórios Github e Codebase Integração Contínua Hudson, Cruise, CI Joe Chef, Puppet, Deploy Capistrano NewRelic, Scout, Monitoramento BackupMyApp
  76. 76. Repositórios Github e Codebase Integração Contínua Hudson, Cruise, CI Joe Chef, Puppet, Deploy Capistrano NewRelic, Scout, Monitoramento BackupMyApp
  77. 77. source 'http://rubygems.org' Gemfile gem 'rails', '3.0.0.rc' gem 'devise', '1.1.1' gem 'paperclip', '2.3.3' gem 'menu_builder', '0.3.3' gem 'RedCloth', '4.2.3' gem 'will_paginate', '3.0.pre2' gem 'reverse_captcha', '0.0.1' gem 'capistrano', '2.5.19' gem 'mysql', '2.8.1' group :development do gem 'sqlite3-ruby', :require => 'sqlite3' gem "rspec", ">=2.0.0.beta.11" gem "rspec-rails", ">=2.0.0.beta.11" gem "ruby-debug" end group :test do gem 'capybara' gem 'database_cleaner' gem 'steak', '>= 0.4.0.beta.1' gem 'factory_girl_rails' end
  78. 78. COMO ACHAR ?
  79. 79. DEPLOY
  80. 80. set :application, "producer" set :ip_address , "208.88.125.20" deploy.rb # GIT SETTINGS set :scm, :git set :repository, "git@github.com:danielvlopes/producer.git" set :branch, "master" set :deploy_via, :remote_cache # SSH SETTINGS set :user , "rails" set :deploy_to, "/home/rails/#{application}" set :shared_directory, "#{deploy_to}/shared" set :use_sudo, false set :group_writable, false default_run_options[:pty] = true # ROLES role :app, ip_address role :web, ip_address role :db, ip_address, :primary => true # HOOKS after 'deploy:setup', 'db:setup' after 'deploy:update_code' do db.symlink assets.symlink end
  81. 81. TESTES
  82. 82. RSpec Steak Cucumber Test::Unit Minitest Bacon Should Factory Girl Fabrication Machinist Mocha RR
  83. 83. Cucumber Feature: Authenticate In order to see my previous links As a user I want to be able to create an account Scenario: Creating a new account Given I am not authenticated When I go to register And I fill in the following: | Email | testing@man.net | | Password | 123456 | | Password confirmation | 123456 | And I press "Sign up" Then I should see "You have signed up successfully" http://github.com/danielvlopes/buggy/blob/master/features/authenticate.feature
  84. 84. feature "Catalog", %q{ Steak In order to display a catalog in devices As registered publisher I want to manage a catalog. } do background do ensure_not_logged_in @owner = Factory :app, :name => "1Password" end scenario "Create catalog for 1Password", :js => true do visit new_catalog_page_for(@owner) select "shelf/metal", :from => "Theme" fill_in "Title", :with => "Appextras" drag_to_catalog available_app click "Create Catalog" should_have_notice "Catalog was successfully created." end
  85. 85. describe Guest before do do Minispec @room = Room.new("Room 35", Type::Master.new) @hosting = Hosting.new(@room, 5) @guest = Guest.new("Daniel Lopes", @hosting) end it "should have a name" do assert_equal "Daniel Lopes", @guest.name end describe "when print the invoice" do it "should have the guest name" do assert_match /Daniel Lopes/, @guest.invoice end it "should have the room name" do assert_match /Room 35/, @guest.invoice end it "should have the total amount" do assert_match /Valor total: 1000/, @guest.invoice end it "should have the discount points earned with that hosting" do assert_match /Você ganhou 6 ponto(s)/, @guest.invoice end end end
  86. 86. COMUNIDADE
  87. 87. guides.rubyonrails.org
  88. 88. peepcode.com
  89. 89. railscasts.com
  90. 90. akitaonrails.com
  91. 91. egenial.com.br/cursos
  92. 92. github.com
  93. 93. MITOS
  94. 94. Ruby é Lento
  95. 95. http://programmingzen.com/?s=benchmark
  96. 96. slideshare.net
  97. 97. Home 331 ms Total 5.45 ms http://railsmg.org/meetings/1
  98. 98. Rails NÃO ESCALA
  99. 99. Friendster foi escrito em Java e mudaram para PHP. MySpace foi escrito em ColdFusion e mudaram ASP.NET. Quando as pessoas caem em problemas de escalabilidade, normalmente acham que a linguagem é o problema, mas eu acho que isso raramente é a realidade. http://www.akitaonrails.com/2008/6/17/chatting-with- blaine-cook-twitter
  100. 100. “O The New York Times usou Ruby on Rails para agregar, analizar e mostrar os resultados das eleições em quase tempo real em um de seus sites mais acessados de todos os tempos.” http://www.computerworld.com.au/article/268003/ruby_rails_rolls_into_enterprise?fp=16&fpid=1
  101. 101. RAILS é a SALVAÇÃO
  102. 102. VAMOS SER AGILE
  103. 103. http://www.vimeo.com/1752667
  104. 104. Recapitulando
  105. 105. entregue rápido
  106. 106. entregue rápido entregue sempre
  107. 107. entregue rápido entregue sempre com qualidade
  108. 108. SEJA SEMPRE PROFISSIONAL
  109. 109. Vídeo Uncle Bob
  110. 110. Aprender Ruby e Rails vão te tornar um profissional melhor
  111. 111. CURSOS egenial.com.br/cursorails egenial.com.br/imersaorubyonrails CONTATOS blog.areacriacoes.com.br twitter @danielvlopes danielvlopes@areacriacoes.com.br
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×