The Art ofRuby on Rails – The historical impact of Rails – The lessons Rails has taught us



The Art ofRuby on Rails – The historical impact of Rails – The lessons Rails has taught us

0 2


art_of_rails


On Github steveklabnik / art_of_rails

The Art ofRuby on Rails

By Steve Klabnik

The historical impact of Rails

15 minutes heard'round the world

37signals gave DHHtotal freedom

“Starting Rails today is like starting to watch a soap opera in the 7th season.”

Rails 1:Extraction from Basecamp

Rails 2:New patterns and improvements

Rails 3:Downpayment on technical debt

Rails 4:New patterns and improvements

Developer happinessabove all else

(like efficiency)

Could Rails have beenwritten in Perl?

Total and utter commitmentto a strategy

The lessons Rails has taught us

Conventions make developersmassively productive.

app/controllers/posts_controller.rb
app/models/post.rb
app/views/posts/*.html.erb

Conventions makeunconventional code difficult.

app/services ?
lib/ ?
app/presenters ?
realtime/ ?

Open Source is big business

Dynamically typedweb frameworks work

... but they may introduce maintenance issues

What's in store for the future

Rails will continue perfecting its formula

JavaScript. Sorry.

Ember.js 〈( ^.^)ノ

Example:

<table>
  <tr><th>Title</th><th>Author</th></tr>
  <% @posts.each do |post| %>
    <tr>
      <th><%= post.title %></th>
      <th><%= post.author %></th>
    </tr>
  <% end %>
</table>
vs.
<script type="text/x-handlebars">
<table>
  <tr><th>Title</th><th>Author</th></tr>
  {{#each post in posts }}
    <tr>
      <th>{{ post.title }}</th>
      <th>{{ post.author }}</th>
    </tr>
  {{/each }}
</table>
</script>

... Rails is an amazing API server

"Omakase" vs. Prime vs. ...

Bonus round: using Rails

JRuby is an easy path to Rails

Internal applications

SOA means diverse backends

Bonus bonus round: versioning and stability

Thanks! <3

The Art of Ruby on Rails

By Steve Klabnik