Merb gets merged into Rails 3!
Posted by David December 23, 2008 @ 07:47 PM
It’s christmas, baby, and do we have a present for you. We’re ending the bickering between Merb and Rails with a this bombshell: Merb is being merged into Rails 3!
We all realized that working together for a common good would be much more productive than duplicating things on each side of the fence. Merb and Rails already share so much in terms of design and sensibility that joining forces seemed like the obvious way to go. All we needed was to sit down for a chat and hash it out, so we did just that.
What this will mean in practice is that the Merb team is putting their efforts into bringing all of the key Merb ideas into Rails 3. Yehuda Katz will outright join the Rails core team, Matt Aimonetti will work on a new evangelism team, and Carl Lerche and Daniel Neighman (hassox) will be co-starring the effort to bring all this over. We’ve immortalized the merge with plaque page at rubyonrails.org/merb.
What’s being brought over?
Some of the key ideas that they’ll be taking with them from Merb into Rails 3 are:
- Rails core: Yes, Rails is a full-stack framework and will remain so, but there’s no reason we shouldn’t also make it possible to run with less than the full monty. Rails 3 will make it easy to run just a bare minimum and then allow you to opt in just the stuff you want, if that’s necessary for your particular situation. Think “rails myapp—core” (and “rails myapp—flat”).
- Performance optimizations: Merb has a lot of Rails pieces rewritten to be faster. We’ll be bringing all that good stuff over. We’ll also bend the architecture in the places where that’s necessary for a big yield. In short, Rails 3 will get all the performance attention that the Merb guys are known for.
- Framework agnosticism: Rails will always have a default answer to every question within the stack. If you don’t care about testing frameworks, you’ll get test/unit. If you don’t care about which ORM, you’ll get Active Record. But some people do care and want something else. Some people want RSpec for testing, others want to use Sequel or Data Mapper for ORM, others again prefer Haml for templating, and some might prefer jQuery for Ajax. All these people should feel like Rails is welcoming them with open arms. Yes, we’ll have a default, but we shouldn’t have any form of discrimination against alternatives.
- Rigorous API: Too many plugins break when Rails is updated because it’s not clear where they can safely hook into the internals and when they’re monkeypatching and should expect things to break. The Merb guys committed to a public API with tests to ensure that it wouldn’t break. They’ll bring over that line of thinking and give Rails 3 a tested and documented API for extensions that won’t break willy-nilly with upgrades.
This is not a big bang rewrite
It’s important to understand, however, that this is not a “big bang” rewrite of Rails. We’re far beyond the time when we could just throw out everything and start over. This is going to be a progressive improvement of Rails that’ll carefully judge new initiatives on their impact on backwards compatibility as well as their general utility.
I’m sure there’ll be some parts of Rails 3 that are incompatible, but we’ll try to keep them to a minimum and make it really easy to convert a Rails 2.x application to Rails 3. The Merb guys will also be working hard on giving existing Merb users a manageable upgrade path to Rails 3. We’re working with lots of ideas including allowing existing Merb controllers to be mounted alongside new Rails 3 ones. We’ll see how it all plays out, but play out it will.
Also, the Merb guys aren’t just abandoning the existing Merb user base and their applications. They’ll still be doing bug fixes, security fixes, and work on easing the upgrade path to Rails 3. This will all progress in a nice, orderly fashion.
The timeline
Rails 2.3 is just around the corner. We hope to wrap up and release in January. It’s a blockbuster release packed with goodies to the tilt. But as soon as that’s done, all eyes will be on Rails 3.
The probably-overly-optimistic goal is to have at least a beta version ready for RailsConf 2009 in Las Vegas. Who knows if we’ll make it, but we’ll certainly have made tons of progress on it by then.
So all of these changes are pretty much effective immediately. We’ve already started the collaboration and we’ll be rolling out a bunch of public initiatives announcing the concrete elements of the work under the Rails 3 milestone very shortly.
No hard feelings, just kumbaja
This is quite a dramatic turn of events. We went from testy relations to coming together in not very long at all. But I’ve been incredibly positively surprised at how well everyone on both sides have been gelling behind the scenes. The more we talk, the more we realize that we want the same things. And in the few cases were we do care about something different, it’s usually complimentary.
I really hope that everyone within both communities will deal with this news as gracefully as the key contributors from both camps. Let’s just wipe the slate clean on anything that has gone before and cherish that we can now move forward in unity instead of as fractions of the same ideas.
Rails 3 is going to kick ass.
Also read what Yehuda wrote about this and Carl Lerche and Ezra and Matt.

Whoa, this is trippy..! I’ve somehow been teleported to April 1st. I’ve missed Christmas! :-(
Seriously though, wow :)
Amazing news!
Holy shit I have a ruby boner.
Oh happy day! This is excellent news for us Rubyists.
Congrats and thank you to all core members of the Rails and Merb team. Thanks DHH and Thanks Yehuda.
I’m stoked for 2009
Sweet! This is awesome!
When I first read DHH twitter message I had to check that it wasn’t April 1st. This should be great, and I think a good thing for both camps, and the community in general.
Wow, this is very unexpected! I for one thing this is great news.
I love Rails for its maturity and large developer community, but I’ve also been very excited about Merb and associated technologies (such as DataMapper). Looking forward to using the best of both worlds in Rails 3.
This is really fantastic news. It’s been great to see Rails steer towards performance optimisations lately, and Merb has had quite a steep learning curve.
It will be hard to bring “the best of both worlds” but the best of both worlds would truly be rocking.
Awesome!
That is a surprise. But a good one, i think.
Hopefully, many good things will come out of this “join venture”.
Rails 3 FTW!
Truly remarkable news David! And I sat here thinking what is gonna happen with the community after the flamewar.
Events like this just shows how the community has matured over the very recent past. Hopefully other competing projects will follow suite as well!
Here’s to Rails 3!
This is seriously awesome news. Cross-pollination, hyrbid vigor, etc. etc. I’m looking forward to a best-of-both worlds scenario!
Merry Christmas! A W E S O M E
Whoa. Someone must’ve hacked the RoR blog, Ezra’s and Yehuda’s accounts and posted a prank! :-)
Thanks Santa…
Wow. I’m shocked. In a really, really (really!) good way. Very much looking forward to this.
This is truly good news! I have heard a lot of good things about Merb and always wanted to try it!
Great work, this is a nice example of how it should be handled. For the greater good!
Really looks like the best of both worlds. Congrats to everyone involved.
This is a fantastic news! Congratulations to you guys!
You also showed that open source communities can and should work together instead of playing the forking game.
Focusing the efforts into a common project is a sure way to achieve great things.
Thank you, for all your hard work.
Holly crap, you know April fools day is in April , right?
The Merb Merge is great news, but I’m also excited about the plans for a more plug-n-play architecture. Very cool!
Huge news and good news for both groups.
Didn’t see that one coming…
Very interesting, in several ways.
Great and v. unexpected news! Congrats guys!
Great news guys, best wishes for the future.
This is GREAT news. If I wouldn’t have been convinced already to go the Ruby way, this would have the final event which show that no resources are wasted for doing things twice, for tying to prove “we can do better than you”, but instead use commensen sense to join and come up with ONE product which is even better than the one before. This is REALLY DRY!!
Thanks DHH and Thanks Yehuda. !!!
Merry Xmas !
Best Christmas present ever.
Pretty awesome!
ALL HAIL THE BORG!!
wow.. i’m gobsmacked! :D
i’ve been a huge rails fan but have been tempted by the speed and simplicity of merb (from what i’ve read).
im happy that the two will merge.. it will create a truly great product!
Yay I don’t have to switch my app over to Merb (because I was seriously thinking about it)
Holy Shit. This is a perfect example of why I love the Ruby community.
I love this community! This is fantastic, although I have to admit I’m most partial to the news the JQuery will get some treatment as a first-class citizen in Rails.
Sooo…Rails 3 is Merb? :) Thanks for the great news!
How Obama-esque of you! Team of Rivals, huh? ;) Sounds very exciting.
Very cool. I’m excited to see how this plays out.
That’s what i call it the good work, finally the 2 efforts will merge to give all needed modularity. Thanks
!
hi david,
BR, ~A
Merb and Rails together? How much eggnog have I had?
I for one welcome our merged overlords…
Oh man. Just the idea of a javascript-agnostic Rails makes me excited.
OMFG Zed was right! (about almost everything).
Great news :)
Like chocolate and peanut butter, baby.
Awesome… like a hot dog.
So incredible. Great news guys!
Rails 3 \m/ and fuck X-mas. :)
It’s really great
Fantástico.
Rails and Merb teams: A huge kudos on coming together. As someone who has been evaluating both for some large upcoming projects, it is a Godsend to get the Rails maturity and community along with the Merb modularity and performance.
This is a great day in the Rails and Merb communities.
...Ruby continues to be the best software community… great news about working together. This is going to be great, thanks for the info!
素晴らしい!。。。ホット・ドッグの様に。
This is just AWESOME!
I guess it’s time to switch to Weblocks.
It’s made with alien technology!
World peace is near
This is absolutely crazy.
In a good way.
Rails 3.0 FTW.
AWESOME! Thanks!
крутняк
This would be help Rails become really competitive with Java an .NET
“I’m a white male aged between 18 and 35, everyone listens to what I say.” Homer J. Simpson
Together at last MERB and RAILS!
Ruby on Rails is now Merb on Rails ! Woah, that’s huge!!!
Wow, I cannot wait!! Best. Christmas. Ever!
It’s the end of an era. Death to opinionated software!
You got your chocolate in my peanut butter!
Wow!
Wow…Merry Xmas to all of us. This is a very positive move.
Wow…Merry Xmas to all of us. This is a very positive move.
Great news
Thanks, amazing present !! :D
@Elise
Haha my thoughts exactly. Awesome news guys really looking forward to Rails 3!
This is blasphemy. <,<
In all of the top listed reasons, it didn’t even list the very top, most important reason I tell every noob I meet to use Merb instead of Rails – the fact that you can learn from Merb.
Is all of Rails going to be re-written, so that any noob to Ruby can read and learn from it? I learned everything I know about Ruby from simply browsing the merb-core and merb-more sources. They’re written extremely well, extremely cleanly, extremely simply where at all possible – not at all like Rails.
So, all these great features are coming into Rails with Merb – but what about the one that matters? The fuckin’ philosophy of the core Merb devs? The “code poetry” that makes Merb what it is? Is that coming too?
Amazing!
It’s a Christmas Miracle!
I kept reading, waiting for the punchline… but I guess this is real.
I was just driving home tonight thinking about how disappointing it was to see the recent Merb/Rails flame wars and really wasn’t expecting this … but great news, I think!
Does this include using Ruby Gems for plugins? This was but one thing about Merb that really just made sense.
Great news!
+1 for Gems plugins. Please – kill the rails plugins!!
Awesome decision. It reminds me of what happened a few years back in Java land when Struts merged with WebWork and became Struts2. Not that these are anywhere near what this marriage will mean.
truly amazing! totally kick ass!
Congrats to both the Rails dev team and the Merb dev team. Can’t wait to see the changes this brings. :)
Great News! congratulations to both team. Nice to see “Great Minds Think Alike”. Looking forward to the see and use this opinionated framework going forward with ‘clever’ options.
Really good news!
Do it slowly and get stronger !
Thanks to both sides of the aisle! I’m hopeful this will be a win for everyone.
Wow, I definitely was not expecting this, sounds like a change for the greater good though so I can’t wait to see some progress!
“And he lead them to the promised land. They drank and ate until their thirst and hunger was quenched. They danced and sang and fashioned false idols of gold. It was only then, when they slept, satiated and exhausted from their long march, that DHH drew his sword and slaughtered the mighty tribe named Merb.”
what the new name?
Ruby on Merb? Rails on top of Merb? Merb humps Rails? Merbails? Ramerb? Railserb? Ruberb? ???
Cool beans!
but the important thing is… what does zed shaw think???
:D
The greatest news of the year – just a few days before it ends. ;)
@elliottcable I agree. The rails stack built on Merb would seem more sensible.
That way Merb users still get their modular, slim and well written framework and Rails uses get their giant ball of aliased method chains, monkey patches and squiggle code slapped on top :)
Speechless… Roll on Rails 3/Merb 2!
Awesome. This is definitely the way to go.
This is great news! Thanks for an awesome Christmas present!
2009 is going to be an exciting year for ruby (jruby, rubinius, rails 3 and other cool projects)
Whoppidoo, jag vill ju va som duuuu (whoppidoobidoba). Jag vill se ut som du, gå som du, duuuuuuuuu, det vill jag nuuuu!
Great move. Just let’s not mess up 2.3, eh? :)
but does it scale? (=
Hey! This is going to be FUN!
Great news for the Ruby community. Thanks and congrats to the Merb and Rails teams.
Wow, the most incredible make up sex ever!
Thanks!
This is, by far, the best news this year. The best Xmas present.
Thanks very much!!
迅速插入前1000
Love it. The passion and diversity of this community is what makes it so wonderful.
天啊,爆炸性的消息
really nice present this year. Merry X,mas!
Good luck to the combined Rails team! I have written a blogpost to commemorate this hostoric event: Using git to merge merb & rails.
http://techblog.floorplanner.com/2008/12/24/rails-and-merb-merge/
Very Good News. This will make Ruby community more stronger.
I am expecting a detailed blog from DHH, clearly explaining what will change and what will remain intact.
I think, we still have the time to hold on Rails 2.3, those features can be implemented as suggested below..
Now onwards there should not be any Rails 2.4 etc…It should start with Rails 3.0 alpha 1, alpha 2 etc… till it reaches Beta end. Rather than upgrading each time and break plugins, it would be a nice move as suggested above. “Slices” should be focussed more and More of the Merb should be incorporated.
so does this mean that lifo will stop being such a prick about merb?
Congratulations Merb! You just caught a terminal illness – The Rails comminity!
Awesome!!
Congrats on the merge!
This is great news. I’m optimistic..yet mildly skeptic. I posted my thoughts on my blog.
Sounds good.
Guys ‘merging’ it’s a big job, – I hope you gave real estimates ;)
However, it’s great to hear that you make such steps. Our community will grown and that’s awesome.
Thank you, Sincerely, Igor Petrushenko http://www.MyTaskHelper.com
This is awesome. Long live merb(Rails 3.0) :)
Merging merb with rails will help reduce the fragmentation in the ruby community.
Same should apply for developers of various ruby implementations as well. MRI developers should welcome contributions from REE,rubinious and other ruby implementations.
One mainstream framework and one mainstream ruby distribution can help consolidate the mindshare and marketshare.
代表我自己前来祝贺
Congrats to both the Merb and Rails teams on this excellent news. The more we can bring people together, the better things will be.
I’m giddy with excitement over what this could mean for the greater Ruby community!
I’d almost dare to say that on this scale, it can only happen in the Ruby world. Could you image the gazillion Java web frameworks saying: “Hey, actually we want the same thing, let’s join forces”?
Amazing news, thank you guys so much for your hard work.
Ok, Ok, I take that back: I just read Yehuda’s post and obviously this has happened before in the Java world with Struts and Webwork! Kudos to them! But it’s still rare that two such major projects are not too proud to actually join forces.
Woow… great! /me is happy… :) DHH: will you also consider using some of the new philosophies in DataMapper (merging might be to much…)
So does that mean that the Rails community is finally going to help newcomers as I hear that the Merb commune does or is it business as usual for all the little rails pricks (aka Hansson wannabes)?
Better performance, more flexibility (flat/core), better interfacing with 3rd parties and plugins. Thats quite a warmth in these chilling winters. I am just concerned about backward compatibility… It’s got to be there.
@Ujjwal Trivedi (#124) Rails 3.0 is a major release and we will define an official API. Don’t expect the release to be fully backward compatible. However we will make sure to document very well the new API and how to properly migrate your app. We will also work with major plugin developers to make sure they migrated on time.
Suppppeerrrrr !!! Awesome!!
C’est une très bonne nouvelle pour toute la communauté. It’s a great news for the Rails communauty
Il faut se souder pour mieux avancer. It is necessary to knit together to advance better.
Bonnes fêtes à tous ;o) Happy Christmas
Will rails 3 affect me bad as i don’t know merb?
Guys that’s awesome. I thought it’s 1st April this morning when i read about it.
MINSWAN
Marry Xmas Guys, I love this present ;)
@pulkit no, merb will bring differences in the underlying code and in extra options. You shouldn’t see a huge difference apart from performance and potential options if you want to.
Of course it’s going to be a major release so you will need to migrate some of your code over.
-Matt
Great news, looking forward to the end result :-)
What you think about new logo? http://www.railsgeek.com/2008/12/23/rails-3-rails-and-merb-merge
Mikhailov, Rails is not getting a new logo and the name for the new version of the framework is going to be “Rails 3”. We have immense brand recognition in the world at large that’s not going to be thrown away.
Fantastic. It’s like having you’re beloved wife and the brunette you kept staring at in the same bed.
What does “packed with goodies to the tilt” mean? Do you mean “to the hilt”?
Is it going to be Ruby 1.9 compatible? I guess it would be a good idea because it has some improvements over 1.8.
Seems like a great idea! Can’t wait for the release date!
Great news! Congratulations.
Its a benefit to us that you both can put behind your differences and work towards a better solution. Both the Rails and Merb teams should be praised for not getting caught up in all the “versus” nonsense that has been floating around as of late. This is only to going to lead to a framework that is greater than the sum of its parts.
Just wondering what’ll happen to all these books that are being written at the moment about Merb. I understand that they’ll still be usable for Merb 1.0, but lots of people won’t buy it, as it’s not very common to learn and use technology that will get abandoned soon.
Congratulations.
I’d think they would merge the more used framework into the well written framework. Why isn’t Rails going to be merged into Merb 2?
excellent news! All the fanboys can unite and have an orgy!
Great news… You are the best.
This is amazing news. Congratulations to everyone involved! I’ve had my eye on Merb for the past year, while at the same timing actively building and deploying Rails applications. Fantastic!
Thank you Jesus!
Who gives a shit? This is like a glorified circle jerk.
Congratulations, now that the merb core is going to be merged into Rails I think Rails will get a lot better.
I think Merb was about innovation, and I hope they continue with it as a playground so that changes could be merged for further versions of Rails also.
Or do a Rails branch in order to do playground and add further innovations into Rails itself.
I hope you get my point, Rails rocks, keep up the great work, and looking forward to use Rails 3! =D
Let’s hope that they spend some time road-testing the new framework on different Rails programmers with different experience levels… If that’s taken care of, I think this is great news!!!
This is wonderful news. We’ll have an exciting new year.
Happy to see – 1. Future Rails will concentrate on performance improvement 2. Public API for plugin developer. That will eventually reduce code break in plugin in rails upgrade.
@ Mean Guy,
I just circle-jerked a fat load on your smarmy little face. Merry Christmas, ya fucker!
MEILS FTW!!
Awesome!!!!!! Waiting for 3
The modularity of merb-core is what really got me. I think Rails will shine with this architecture.
Holy crap. Was not expecting this.
Anyways, it’s and excellent move for the entire Ruby community in general.
waiting to see ur work in las Vegas ….. please make the Beta !!
BEST x-mas present EVER !!
cheers from germany!
HE SAID RUBY BONER! BONER BONER BONER BONER BONE HER!
Oh My God! o.o
omg. so amazing. i guess this is your christmas gift to me. here is my gift to you, your team and merb’s team
- enjoy -http://web-poet.com/2008/12/24/fun-and-frolic/“Could you image the gazillion Java web frameworks saying: ‘Hey, actually we want the same thing, let’s join forces’? “
Yes…look at WebWork and Struts 2
The name of Ruby 1.9 used to be Yarv. Were it that the name of Rails 3 used to be Merb? However, rails and rails team are still rather active and dynamic. Neither Ruby 1.8 nor struts1 remained active when they were merged with the other. What will go on is really interesting and “impossible is nothing”.
GreateNews!!!
One request, Deprecation should be less so nobody feel headache/stress when they are move from from Rails 2.X to Rails 3.X.
cheers!!!
Bad idea!!! Feel free to bring the performance boosts of merb into rails, but otherwise leave merb alone! Sometimes you don’t need a full-stack behemoth of a framework, and would rather build what you want up from pieces. I’d rather have a choice between full-stack and “diy-stack” than be forced to use “full-stack-that-can-be-somewhat-minimized”
Excellent. I’m really looking forward to 3.0!
Great. It means there is a lot more to come in Rails3. Waiting impatiently for the relese.
Wow! Love is on the air. After all, the purpose of life is part of to be happy. [Matz] Nice community!
It’s absolutely exciting news, I was just about get to know about merb and get somewhat interested, now that merb and Ruby on Rails is going to be merged, I really can’t wait to see the result and actually using it… Congratulation for both teams!!! Rails 3 is going to rock the web!!!
Thats rally cool.
Thank Heavens – I’ll get the time to get up to speed with Rails…I’d love to see the look on Java folks who swear by JSF after Rails 3 is released !!
BTW, Can we have workflow engine in Rails 3..maybe something similar to jBPM in the Java world?
This is wonderful news, I can’t wait for Rails 3.
Wow, this great news is really the ultimate Christmas present!!! Thank you both – Rails and Merb teams!!!
Awesome! Honestly, I have been pondering this same scenario for quite some time and I often wondered if it could work.
There are some great features in both frameworks and I feel that combining them into “Super Rails” will benefit the entire Ruby community.
Excellent work. I look forward to seeing what comes of this merger. Good luck and thanks for all the fish! ;-)
@pimpmaster Oh god! Someone get me a towel, I’ve got ruby cum all over my face!!!
Awesome!
I’ve been meaning to try out Merb. DataMapper looks very impressive and using jQuery with Rails has never been very straightforward. However, I’ve never really had the time to sit down and, well, read, so the learning curve held me back. I always resorted to Rails in the end. Hmm, maybe “resorted” isn’t the best choice of words :)
Looks like I won’t have to now! I’m particularly looking forward to framework agnosticism and the rigorous API :)
This is terrible. Competition breeds innovation.
This is fantastic. We’ve been having a difficult time convincing clients that Merb might be a safe solution for them, but this move will make Merb instantly mainstream.
Now we can get best of both worlds. Ruby is awesome and so is merbs..
DHH,
Merb has also has “immense brand recognition in the world”, why should that be thrown away?
I vote for Ruberb! =)
So what are developers to do in the interim? Develop on Rails? Develop on Merb?
I’ve read in many places that there is “a clear path” for the Rails 3/Merb 2, yet I still haven’t seen a single timeline and/or planned transition document that lays out what you can or can’t expect and best practices… you’d think that some sort of master plan document would have been discussed and released with this sort of announcement (or am I missing something)?
@Matt(#125) Thanks! am sure good documentation will make things easy. @Mikhilov and @Ariel …what is in the name…
ojak, if you want/need something specific that Merb offers, you should use Merb. Otherwise, or if you don’t really have an opinion either way, then you should probably just go with Rails.
But we’ll have a nice upgrade path from each. It’ll probably be a little easier from Rails, but the Merb guys are intent on making it pretty easy from Merb 1.x too.
So either way, you can’t really lose.
Good Work,
I would like to see more samples and very good documentation ( pdf .. please make this part of your April commitment ) like the java spring framework / spring webflow / hibernate reference documentation / jboss seam documentation, please do not make it as MSDN … i will searching for my entire life…
Awesome…Really great news for all rails developers…
Ruby on MerbRails or is should that be Ruby on MerryRails!
My hat is off to all of you. I’m amazed and impressed. I couldn’t imagine better news about the future of either Rails or Merb.
Surely the best news of the year!!! I am sure that will reduce the critics and will invite even more developers. The strategy change to open rails a little bit more is the right way without loosing the control by focusing on the core.
The only people who need to be worried are the developers who are going to use Rails on Merb to develop software.
If things go well, it is great. If it is not, is there any where to go, short of abandoning Ruby altogether?
And I don’t know if it was true that in the old day, DHH made back-room deal with Zed to make Mongrel work with Rails only, but Zed refused it.
That was the result now we have seen a framework better than Rails (architecture-wise and coding-wise): Merb.
Anyway, the merge (without political back-room deal) will be great.
Great. Hi to every one
That’s awesome!
Oh, different APIs… Hope it doesn’t get too blown up
thank you!
Its a great news for merb and rails lover. Cheers!!!!!
Thanks http://www.sokobanja.ucoz.com
jQuery and Rails!
that will make this interface designer very, very happy
makes sense to me,.. well done!