Live from Barcamp pt. 4 — Merb
October 13, 2007 § Leave a comment
Well before Merb, a good chat between sessions with Cooper about JavaFX, Silverlight, and other things – found out that he has a book coming out – Way to go Cooper!
Now on to the session –
Michael Ivey presents on merb — this is bound to be over my head [or rather, even more over my head than some of the other sessions]
Lightweight MVC Ruby app server — for high performance dynamic pages — some people call it Rails light
Rails performance is getting slower
Merb is an answer to that – make the developer take care of more of the magic, thus lighten the overhead
Motto: “no code is faster than no code” [love that]
Uses Rails generators
Less magic than using a rail app.
Trying to be database layer agnostic – puts more decisions on the programmer than Rails does.
Benchmarks against rails shows merb to be much faster — design philosophy is optimize for speed, then optimize more for speed.
Overall framework is small and tight — good for people who want to hack on their framework.
It is not a fork from rails it is 100% new code. It is written by Ruby enthusiasts. Rails [according to Michael] was written by someone not very familiar with Ruby so it is not written in a very Ruby-ish way. merb is by and for Ruby enthusiasts. Merb is thread safe. Huge advantage for heavily loaded sites. Gets used for file uploads – can “steal” a rails session, does its thing, then hands back the session. File uploads was part of the reason it was created.
This is bleeding edge stuff for the time being. Going forward the promise is all future releases will be just as fast (or faster) than the current release.
Why Merb? Every framework release of Rails is getting progressively slower — Rails is getting fatter [more magic code] – so this about being super lean.
Goal to make porting from Rails to Merb easy — ge the best of both worlds — Rails ease and speed of development. merb’s speed of production performance.
Biggest criticism — why not patch Rails? Action-pack — too much code.
Merb is harder to get started with, because it doesn’t make as many decisions for you. Still very driven by Ezra’s vision and direct management. Ezra wrote the book on Ruby deployment.