The Merbist

Merb & Rails 3 news - consulting - training

Merb 1.0 released

Posted on November - 9 - 2008


On November 7, Yehuda Katz gave a talk at RubyConf and made 3 major announcements:

- Engine Yard to offer Merb support

- m|a agile to offer professional training

- Merb 1.0 released!

The first announcement is pretty substantial. Engine Yard has been financially supporting Merb by letting some of their staff work on Merb, fly them to different conferences and sponsoring events like Merb Camp. Engine Yard didn’t yet announce the price structure but having the option for enterprise level support for Merb is just awesome.

John Nunemaker made an interesting comment during RubyConf Pivotal Party. Something special about Merb is that it was designed to fit the needs of an audience instead of trying to create a series of tools to build a specific type of website. Having Engine Yard help to finance Merb dev and offer support is very reassuring. It’s something already done by many other OSS projects such as Ubuntu, MySQL etc…

The second announcement Yehuda made was about Merb Training. I’m probably pretty biased since I am at the origin of this project. I know for a fact that a lot of people were waiting for 1.0 to get started with Merb. We are also working on getting more documentation out, and 3 books are coming up. Still, the best way to learn is to sit down with people who know Merb who can teach you the way its intended to be used.

Training will allow you to benefit a lot from being with other people who also share the same desire to master Ruby’s most powerful and flexible web framework.

What’s also really exciting is that Yehuda Katz, Merb’s lead developer, agreed to be a tutor for the course. I can’t imagine a better way to learn. Check this page for more information about the next training session or get in contact with me if you want to organize a training session for your company.

Finally, the big news was the announcement of Merb 1.0!

Merb 1.0 went through 5 release candidates and was finally marked as final. In the last few months, the Merb team worked hard to make things easier for people who want to get started in no time.

Let’s quickly look at why Merb is awesome:

  • Merb is Modular. Merb is not a monolithic framework. You can pick and choose what you need. Create a 1 file app “à la Sinatra” or a rich web app “à la Rails”. Merb has many components. Only requires the ones you need and save precious resources. (Merb doesn’t believe in 1 size fits all)
  • Merb is agnostic (kinda). Because people have different needs and different believes, Merb won’t force you to use one ORM or another. Same thing goes for the template engine or for the JavaScript library you want to use. ActiveRecord, DataMapper, Sequel, RelaxDb, Haml, Erb, Prototype, jQuery… choose which one you want and change whenever you want.
  • Merb can be opinionated. Merb offers a default stack using DataMapper and jQuery, authentication, exceptions and caching setup for you. However, creating your own stack is dead easy. As a matter of fact, the guys at yellowpages.com are using Merb and were talking about creating their own stack using Sequel.
  • Merb let you reuse your code. Borrowed from Django, Merb has something called “slices”. Slices are mini apps you can run standalone or mounted within another app. A slice is a great way to write code you can reuse. Unlike plugins which extend the framework features, slices are a way to provide encapsulated content. (David Chelimsky, RSpec’s author and maintainer actually said that slices where his favorite feature in Merb 1.0)
  • Merb has an API. You might be wondering why having an API is awesome. Well, the truth is that the Merb Team spent time marking methods public, which are guaranteed to not break until the next major release (any change to the public API will be well documented). There is also a plugin API meaning that plugin developers won’t have to worry about upgrades if they stick to the plugin API.
  • Merb is fast. Even though Ruby the language isn’t really fast and contrary to popular opinion, Ruby for the web is one of the fastest solutions out there. (Even Rails is way faster than all the mainstream PHP frameworks) And that’s what Merb is proving by being one of the fastest web framework available on the market. Jason Seifer will be interested to know that Merb isn’t scared to scale ;) As a matter of fact, Merb is going to scale even better in the next few months as we are planning to integrate Swiftiply and do some totally awesome stuff to spawn/reap workers based load. (more about that in few weeks).
  • Matz likes Merb. Ruby’s daddy, Yukihiro Matsumoto told us he likes the flexibility of Merb and the fact that the framework doesn’t create a DSL on top of Ruby. He even told us that he’s going to introduce his company to Merb! We were obviously very honored and for us, it validates months of work by dozens of contributors. Here is a transcript of Matz comments about Merb and the Ruby web world:
    Yukihiro Matsumoto aka Matz

    Yukihiro Matsumoto aka Matz

    “Everyone outside of the Ruby community understands that we only have 1 web application framework, named Rails, but it’s not true in any sense. We have several post-Rails frameworks, which is very good, and I believe in diversity.

    Merb has a bright future for the people who are not satisfied by the fixed ways in Rails.  I think that Merb will give users more freedom in a Ruby-ish way of programming.

    I’m not really a web-guy, so i don’t judge any of them [frameworks], but Rails does some kind of drastic change on the language itself like in Active Support.  But Ruby has its own culture and technological atmosphere in the language so that keeping that makes me feel easier.”

  • Merb is memory friendly and therefore cheap. Merb is Open Source and free, but hosting an application costs money. Merb memory footprint is tiny compared to other solutions and that means that hosting will cost you less. (interesting when you think that EngineYard help developing Merb :p) Using Ruby Entreprise Edition, you will even use less memory, meaning you save even more money ;) By the way, Matz told me this morning that the Ruby core team is working on their own solution for a better GC and it should be available soon. (Ruby 1.9.x)
  • Merb source code is easy to read. Because Merb code is modular and because Merb has a concept of an API, reading Merb’s source code is pretty easy. On top of that, Merb itself uses RSpec making tests really easy to read and understand.  What’s great when the source code is easy to read is that developers can quickly check the source code if they want to understand how things work. We also get better patches from contributors and we keep our code clean. We believe in the theory of the “Broken Windows” by James Q. Wilson and George L. Kelling:

    “Consider a building with a few broken windows. If the windows are not repaired, the tendency is for vandals to break a few more windows. Eventually, they may even break into the building, and if it’s unoccupied, perhaps become squatters or light fires inside.

    Or consider a sidewalk. Some litter accumulates. Soon, more litter accumulates. Eventually, people even start leaving bags of trash from take-out restaurants there or breaking into cars.”

I guess I could keep on going with other reasons why Merb is so awesome, but let’s keep some for another post ;)

In conclusion, on behalf of the Merb core team, I’d like to thank all the Merb contributors, Ezra Zygmuntowic (creator of Merb), Yehuda Katz (Merb lead developer), Matz (Ruby creator) and finally DHH & the Rails core team. One more thing:


$ sudo gem install merb
$ merb-gen app my-awesome-merb-app

Bookmark and Share

13 Responses

  1. Matz bilang Matz suka sama Merb dan bakal ngenalin Merb di Kantornya. Andakah Early Adopters Merb di Indonesia selanjutnya? « World of Ruby Indonesia Said,

    [...] buka Google Reader kesayangan saya. Disana saya melihat Pengumuman oleh seorang Rubyist Matt kalo Merb 1.0 sudah rilis. Dari sekian poin poin cepet (buat yang pingin puas puas puas mbaca resource soal Merb dalam satu [...]

    Posted on November 10th, 2008 at 3:16 am

  2. Evan Said,

    Merb docs are terrible. You guys should take another idea from the Django guys and open source your book!

    Posted on November 10th, 2008 at 6:36 am

  3. Matt Aimonetti Said,

    @evan we know our docs could be better and we have been focusing on the new wiki: http://wiki.merbivore.com We also have someone working on redesigning the generated RDoc and we will be writing much more user documentation in the next few weeks. Having an open source like Django’s would be awesome. We have something slightly similar but it needs some love: http://merb.4ninjas.org/

    Posted on November 10th, 2008 at 6:42 am

  4. Tim Kadom Said,

    The third announcement Yehuda made was that there will be a Merb Day in Atlanta on December 6th.

    go to http://atlanta.merbday.com for more details.

    Tim

    Posted on November 10th, 2008 at 8:19 am

  5. Dan Mayer Said,

    Congrats and great work. I have enjoyed working with and following merb, the hardest part has been quickly changing documentation and information. It looks like with 1.0 it should become much more stable and easier to learn and follow.

    congrats again.

    Posted on November 10th, 2008 at 8:34 am

  6. » MerbWatch: Yehuda Katz and Matt Aimonetti to do Merb Training (!!!) Said,

    [...] news Meshies and I just got this news straight from The Merbist: “The second announcement Yehuda made was about Merb Training. I’m probably pretty biased [...]

    Posted on November 10th, 2008 at 9:38 am

  7. Nome do Jogo » Blog Archive » Rails Podcast Brasil - Episódio 37 Said,

    [...] Merb 1.0 released [...]

    Posted on November 11th, 2008 at 6:03 am

  8. JO Said,

    Finally some action ;]

    Posted on November 12th, 2008 at 12:58 am

  9. ning Said,

    I think Merb is pretty good.

    Posted on November 12th, 2008 at 8:22 am

  10. The Merbist » Blog Archive » merb 1.0 - tips part 1 Said,

    [...] As you must know by now, last week, Merb 1.0 got released. [...]

    Posted on November 14th, 2008 at 12:39 am

  11. Slashcolon /: » Merb 1.0…速そうだなぁ~超試したいんですけど Said,

    [...] なぜか、Merb 1.0 released(日本語訳:Merb 1.0 リリース記念に、Merb がどんだけすごいのかを紹介した海外の記事を翻訳してみた - kwatchの日記)と言うことで、1.0の正式版がでて一週間ほどになるのになぜか1.0 RC1の時(InfoQ: Merb 1.0リリース間近、RC1登場)よりも話題になってない Merbなんですが…。 [...]

    Posted on November 14th, 2008 at 3:19 am

  12. Updating RubyGems to 1.3.1 on Mac OS X 10.5.5 - pastbedti.me Said,

    [...] i thought that i should give the new merb release a try. When updating my merb gems i got the following message. > sudo gem update Password: [...]

    Posted on November 14th, 2008 at 12:35 pm

  13. LakTEK » Blog Archive » If Rails is a Ghetto, Merb is a Whorehouse Said,

    [...] the midst of all the hate-games Merb had turned 1.0 and even Matz, the Godfather of Ruby Town, has given his thumbs up for Merb. It is no more a dark ally and it’s here to [...]

    Posted on November 19th, 2008 at 10:02 pm

Add A Comment