Just saw the story Merb gets merged into Rails 3. Quickly reminded me of another story that played itself out similarly around Nov. 2005 ie. Webwork Joining Struts. And there really are some parallels indeed. (Disclaimer: While I can claim to know struts quite well and webwork exceptionally well, my knowledge of Rails is limited and that of Merb is rather superficial)
- Struts 1 was the grand daddy with a massive market share, whereas Webwork 2 was the upstart
- Struts 1 established its dominance by being far ahead of its competition in its time. Webwork 2 was the exceptionally well designed, highly compartmentalised, granular and flexible MVC framework which clearly established a strong design lead over Struts 1
- Struts 1 was monolithic, Webwork 2 was far more fine grained and pluggable
- Struts 1 primarily had a single controller servlet, Webwork offered more fine grained controllers
In the post Rails and Merb merge, Katz explicitly refers to the Struts / Webwork 2 Migration. However there was one big difference, while Webwork 2 made some movement towards being just a little bit more struts like during the migration, for all practical purposes the next version after Webwork 2.2.x became Struts 2, and Struts 1 got confined to legacy. In this case it just seems unclear how Rails and Merb will move towards each other. As a designer, I really cannot imagine easily merging two frameworks and have the best of both of them be reflected in the result (it is exceedingly tough but feasible). There is a practical driving necessity of ensuring consistency which is likely to favour one of the two frameworks. I am really left with this feeling that one of them will dominate the other in the end – and this whole effort will be quite unnecessary if Rails has to dominate eventually. Definitely an interesting space to watch.
Related posts: (Automatically Generated)


There are more similarities between Rails/Merb than S1 and WW/S2.
“I really cannot imagine easily merging two frameworks and have the best of both of them be reflected in the result “
Merb, to put it as simply as possible, is a pluggable, unopinionated, not-as-mature, but definitely usable version of Rails.
It isn't a merger of equals, Merb is being consolidated into Rails 3. I'm expecting Rails to support ORMs other than AR out of the box and to also support templating languages other than ERb out of the box (hopefully adding Haml). They're going to add a consistent API plugins and crap don't outdated with every point release.
Basically, it's going to have Rails try to cater to everything, which goes against the DHH's original vision. It's annoying, but there's no way I'm going to stop coding in Ruby – I've gotten too used to it. Besides, the move was to unify the existing Ruby community and to not confuse newcomers.
So, um. Yeah. What I was going to say before I got sidetracked is that no, merging them is not going to be as difficult as you might think as the two have much in common as it is (workflow-wise, not code-wise).
I would think that rails would dominate in the merging … though there are some positives to be taken from the merb codebase ….