merb
       &
  f l e x i b i l t y
p e r f o r m a n c e
Me
Matt
   Aimonetti                 Me

irc:   m a t t e t t i
http://github.com/mattetti
Matt
don’t work
 for Engine Yard

                   Matt
don’t work
 for Engine Yard

                   Matt
Consultant               Me
based in San Diego, CA
http://ma-agile.com/training
Blogs:
   http://merbist.com

   http://railsontherun.com
“It’s also worth mentioning that
there shouldn’t be doubt in
anybody’s mind at this point that
Ruby itself is slow. It’s g...
I for one am scared of Ruby
because ... it's known to be
slow, so if you become The Next
MySpace, you'll be buying 5
times...
Rails is for the vast majority of
web applications Fast Enough... I
just happen to care much more
about free developer cyc...
Ruby is so embarrassing.
Rails is slow
Ruby is slow
“The slowest programming
  language in the world”
What does the community
         say?
Hardware cost
       >
Development cost
¡we program faster!
¿srly?
benchmarks someone?
raw PHP:
 331 rps
raw PHP:
     331 rps
     cake PHP:
3.6 rps / 8 rps(eaccelerator)
raw PHP:
        331 rps
       cake PHP:
  3.6 rps / 8 rps (eaccelerator)



      code igniter:
21.5 rps / 98.2 rps     ...
raw PHP:
        331 rps
       cake PHP:
  3.6 rps / 8 rps (eaccelerator)



      code igniter:
21.5 rps / 98.2 rps     ...
Rails with 1 mongrel
              is
       pretty close to
the fastest PHP framework.
what about merb?
hello world benchmarks
      baseline results
Merb




merb requests per second
Merb        Static HTML




requests per second
Merb     Static HTML    PHP




  requests per second
Merb router     Merb controller   Sinatra   Rails   CakePHP




              requests per second
We don’t need to be embarrassed
Ruby might be slow at
fibonacci benchmarks
       who cares?
Ruby is fast at
real life web benchmarks
      that’s what matters!
stop saying Ruby is slow
      because that’s not true
what about merb?
because that’s why you’re here
merb is fast
merb is flexible
$ merb-gen app app-name

               merb stack
  merb-action-args           dm-core
    merb-assets            dm-aggr...
$ merb-gen very_flat app-name


                                        1 file

Merb::Router.prepare do
  match('/').to(:co...
$ merb-gen flat app-name


                      4 files
application.rb - controllers & actions
config/framework.rb - framew...
$ merb-gen core app-name



same as merb stack app
   no dependencies
   when you don’t want DM
     when you use JRuby
wh...
http://flickr.com/photos/ezzyponchi/283381271/   http://bonluxat.com




                     merb is modular
http://flickr.com/photos/24567277@N00/2374743628/
                                                   merb is agnostic
merb can be opinionated
merb   recycling
merb has an api
Merb has a bright future for the
  people who are not satisfied by the
         fixed ways in Rails.

   I think that Merb w...
$ sudo gem install merb --development

     $ merb-gen app my-first-app

     $ merb-gen resource article
      title:stri...
merb 2.0
admin interface
e sy



rapid prototyping
swiftiply
e sy



rapid deployment
Ruby 1.9 + i18n/l10n
2.0 schedule?
in less than 12 months
questions?
Merb presentation at ORUG
Merb presentation at ORUG
Merb presentation at ORUG
Merb presentation at ORUG
Upcoming SlideShare
Loading in …5
×

Merb presentation at ORUG

5,892 views

Published on

Is Ruby really slow? Why should I choose Merb?

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

No Downloads
Views
Total views
5,892
On SlideShare
0
From Embeds
0
Number of Embeds
771
Actions
Shares
0
Downloads
119
Comments
0
Likes
8
Embeds 0
No embeds

No notes for slide

Merb presentation at ORUG

  1. merb & f l e x i b i l t y p e r f o r m a n c e
  2. Me
  3. Matt Aimonetti Me irc: m a t t e t t i http://github.com/mattetti
  4. Matt
  5. don’t work for Engine Yard Matt
  6. don’t work for Engine Yard Matt
  7. Consultant Me based in San Diego, CA
  8. http://ma-agile.com/training
  9. Blogs: http://merbist.com http://railsontherun.com
  10. “It’s also worth mentioning that there shouldn’t be doubt in anybody’s mind at this point that Ruby itself is slow. It’s great that people are hard at work on faster implementations of the language, but right now, it’s tough.” Alex Payne, Twitter
  11. I for one am scared of Ruby because ... it's known to be slow, so if you become The Next MySpace, you'll be buying 5 times as many boxes as the .NET guy down the hall. Joel Spolsky
  12. Rails is for the vast majority of web applications Fast Enough... I just happen to care much more about free developer cycles and am willing to trade the former for the latter. David Heinemeier Hansson
  13. Ruby is so embarrassing.
  14. Rails is slow
  15. Ruby is slow
  16. “The slowest programming language in the world”
  17. What does the community say?
  18. Hardware cost > Development cost
  19. ¡we program faster!
  20. ¿srly?
  21. benchmarks someone?
  22. raw PHP: 331 rps
  23. raw PHP: 331 rps cake PHP: 3.6 rps / 8 rps(eaccelerator)
  24. raw PHP: 331 rps cake PHP: 3.6 rps / 8 rps (eaccelerator) code igniter: 21.5 rps / 98.2 rps (eaccelerator)
  25. raw PHP: 331 rps cake PHP: 3.6 rps / 8 rps (eaccelerator) code igniter: 21.5 rps / 98.2 rps (eaccelerator) Rails: 88 rps
  26. Rails with 1 mongrel is pretty close to the fastest PHP framework.
  27. what about merb?
  28. hello world benchmarks baseline results
  29. Merb merb requests per second
  30. Merb Static HTML requests per second
  31. Merb Static HTML PHP requests per second
  32. Merb router Merb controller Sinatra Rails CakePHP requests per second
  33. We don’t need to be embarrassed
  34. Ruby might be slow at fibonacci benchmarks who cares?
  35. Ruby is fast at real life web benchmarks that’s what matters!
  36. stop saying Ruby is slow because that’s not true
  37. what about merb? because that’s why you’re here
  38. merb is fast
  39. merb is flexible
  40. $ merb-gen app app-name merb stack merb-action-args dm-core merb-assets dm-aggregates merb-cache dm-migrations merb-helpers dm-timestamps merb-mailer dm-types merb-slices dm-validations merb-auth merb-param-protection merb-exceptions
  41. $ merb-gen very_flat app-name 1 file Merb::Router.prepare do match('/').to(:controller => 'very-flat-app', :action =>'index') end class VeryFlatApp < Merb::Controller def index quot;Hi, I am 'very flat' Merb application. I have everything in one single file and well suited for dynamic stub pages.quot; end end
  42. $ merb-gen flat app-name 4 files application.rb - controllers & actions config/framework.rb - framework config config/init.rb - app settings views/view_name.html.erb - action view
  43. $ merb-gen core app-name same as merb stack app no dependencies when you don’t want DM when you use JRuby when you want an opt-in solution
  44. http://flickr.com/photos/ezzyponchi/283381271/ http://bonluxat.com merb is modular
  45. http://flickr.com/photos/24567277@N00/2374743628/ merb is agnostic
  46. merb can be opinionated
  47. merb recycling
  48. merb has an api
  49. Merb has a bright future for the people who are not satisfied by the fixed ways in Rails. I think that Merb will give users more freedom in a Ruby-ish way of programming. matz likes merb
  50. $ sudo gem install merb --development $ merb-gen app my-first-app $ merb-gen resource article title:string,author:string getting started
  51. merb 2.0
  52. admin interface
  53. e sy rapid prototyping
  54. swiftiply e sy rapid deployment
  55. Ruby 1.9 + i18n/l10n
  56. 2.0 schedule? in less than 12 months
  57. questions?

×