Merb Merges with Rails 3
The Ruby on Rails project joins with Merb framework to develop Rails 3.
Though the recent announcement that the Ruby on Rails project will merge its efforts with the rival Merb framework in the development of Rails 3 means there won't be a choice among two Ruby frameworks, the move promises to alleviate community fracture.
Yehuda Katz, chief maintainer of the Merb project, sees the merger as a net positive for the community. Weeks before the merger announcement, a public spat broke out between the Merb and Rails teams, which Katz characterizes as "overblown Internet drama," stemming from the Rails team's opposition to the Merb team's desire to offer a public API. Merb creator Ezra Zygmuntowicz took the fight more seriously, declaring in a blog post that the rivalry was "tearing apart the community."
Katz says that that ideological dust up actually became the catalyst for the merger. "For the longest time there was this idea, I think on both sides, that Merb and Rails had irreconcilable differences," he explains. "But when we actually got to talking, it turned out that that wasn't true. We saw pretty quickly that we could easily do what we wanted to without stepping on each other's toes and produce a product that worked for everybody, so why not? Together we'll get the best of both worlds."
Application-hosting vendor Engine Yard, the primary commercial supporter of the Merb project-and Katz's employer-is providing three full-time contributors to the effort. "Suddenly the Rails project goes from having zero full-time employees in the last five years to three full-time people," he says. "That's going to make a huge difference."
Both Merb and Rails are Model-View-Controller frameworks, but where Rails is monolithic, the Merb architecture is modular. It's based on an extensible, pluggable architecture, and the code base was kept to the bare minimum. This modularity is the key difference between the two, Katz explains. This modularity will actually engender greater competition among Rails plug-in developers, according to Katz.
"I think this merger is going to open the door to competition in the wider world of Rails users, and not just those who are gutsy enough to use Merb," he adds.
JRuby Core Developer Ola Bini, author of "Practical JRuby on Rails Web 2.0 Projects: Bringing Ruby on Rails to Java" (Apress, 2007) and now a consultant at ThoughtWorks Inc., sees the merger as mainly a positive development.
"The good part about the merger is that more resources go into the common good," he says. "There are very smart people in both the Merb and the Rails communities, and they are definitely capable of creating even better things together."
The newly merged group announced that the beta of Rails 3 will be released at RailsConf 2009 in May.
"The pressure is on," Katz says.