Today is a historic moment for the Ruby web development community. The day Merb joined Rails.
At first, my heart sank when I heard this news. I’ve been wanting to learn Merb for awhile now. Merb is faster than Rails, its code is more modular and easier to read. It has a sane mechanism for writing plugins, sans alias_method_chain. You might say that it feels 1337 in comparison to Rails.
That said, the past few months have been really interesting. After the Merb core team released their first RC for Merb 1.0 at MerbCamp in October, the Rails team definitely seemed to notice and competition between the two frameworks seemed to grow. All of a sudden Rails started releasing new features, faster. After Merb 1.0 was released at RubyConf, the competition only seemed to grow. ”This is great for the community,” we would all say.
I was happy when Rails finally started accepting Rack (which is what every Ruby web framework should be build on top of), but I’ll admit … I was a bit bitter. ”Now that they have real competition, they FINALLY give a shit,” is what I was thinking. I was happy thinking that I would start playing with Merb soon and all of the crappiness of Rails would disappear.
And then this.
Initially, I was sad. Then I didn’t know what to think. Then I started reading a lot of blog posts and started asking questions and ‘listening’ in the #merb IRC channel and … I know that this is best for everyone.
The whole reason why Merb exists and has grown is because people have disagreed with Rails and wanted a framework that:
- is faster
- is more modular
- allows more configuration
- has a public API and is easy to test and refactor
- … and more
Now, Rails (DHH) finally agrees with all of these ideals. Rails is ready to embrace all of Merb’s ideals, so … why not merge?
Anyway, I fully trust the Merb core team. They’re hardcore opinionated, just like DHH, and they wouldn’t have agreed to this merge if they weren’t certain that they could create a better web framework by teaming up with the Rails core team.
2009 is going to be a sweet year for Ruby web development :)