Can Merb Knock Ruby Off Its Rails?

Engine Yard, a software developer of clouddeployment and open source tools for Ruby on Rails applications, lastweek released an open source framework for building fast, high-performance Ruby applications. Called “Merb,” the programming tool issimilar to Ruby on Rails.

Merb is an MVC (model view controller) framework. It features amodular — rather than monolithic — architecture with minimal, clean corecode that’s simple, organized and easy to extend, according to Engine Yard.

“We built Merb as a new way to do things faster. It pushes the designstandards of Ruby further. It was easier to open our own strategywithout having to reinvest in Rails. This release offers afull-fledged replacement for Ruby [on Rails],” Yehuda Katz, maintainer of theMerb Project, told LinuxInsider.

Coding Choice

The community of developers that built Merb designed it from the ground up forspeed. It relies on an extensible, pluggable architecture. Merb has6,000 lines of code, compared to 70,000 to 80,000 lines of code inRuby. The smaller code base makes Merb more modular, according toKatz.

Despite its minimal code base, Merb offers features such asflexible routing, more control over groups of processes and a coherentmaintained stack. Additional features can be plugged into theframework using standard gems. Moreover, Merb is agnostic when itcomes to object-relational mapping (ORM) tools, JavaScript librariesand template languages. This gives programmers a wide range of choice.

Ruby is one of the fastest growing programming languages in terms ofadoption, said Ezra Zygmuntowicz, founder of the Merb Project andcofounder of Engine Yard.

“Merb offers Ruby programmers another choice for building Rubyapplications. We believe this release of Merb and the communityenthusiasm we’ve seen for the project since its inception aretestament to a healthy and robust Ruby ecosystem,” he said.

Community Roots

The development community started the Merb Project in 2006. Until lastJanuary, Merb was just an experiment.

Then the developers began building toward version 1.0 as a real release,according to Katz. The push for growing Merb into an official softwaretool led Zygmuntowicz to form Engine Yard.

The release of Merb 1.0 makes it the first replacement for Ruby on Rails, he said.

Merb Highlights

Merb gives developers a higher degree of configurability andmodularity than that offered by Rails, according to Engine Yard. A pool of plug-ins enablessoftware developers working on smaller applications to replicatecommon Rails tasks with less overhead and a higher degree ofcustomization.

A key feature in Merb 1.0 is the “Merb Stack,” a gem for fast,out-of-the-box deployment. Using it, developers can start building newapplications instead of creating their own complete stack.

Another key trait is its single master process rather than severaldisparate processes, which allows groups of Merb processes to sharememory. This produces more efficient handling of multiple requestsover short periods of time and better control over groups of Merbprocesses.

Future Plans

Engine yard is already working on the release of Merb 2.0. A mainaddition will be an application programming interface to allow users to modify the code withoutbreaking the modules, said Katz.

The targeted release date is the summer or fall of 2009. In theinterim, the company will make incremental releases of what willbecome the building blocks for new features in Merb.

“So when 2.0 is released, most of the components will already be inplace,” Katz said.

Final Details

Go here for a full list of Merb 1.0 features.

Merb is licensed under the MIT License. To download Merb 1.0, go here.

Leave a Comment

Please sign in to post or reply to a comment. New users create a free account.

More by Jack M. Germain
More in Developers

LinuxInsider Channels