views:

221

answers:

4

Basically I am java developer and exploring ruby and ruby related framework right now. I am mostly working on web based projects. I had heard about RoR and Merb for web development in ruby. I am looking for good tutorial/books for Merb.

+9  A: 

Start with rails because:

  1. Rails is the most popular web framework on Ruby, and one of the most popular frameworks of the past years.

  2. Also Merb is merging with RAILS: http://yehudakatz.com/2008/12/23/rails-and-merb-merge/

So you are better off starting with Rails: http://rubyonrails.org/download

daniel
Due to it's popularity, Rails has a ton of resources for getting started.
Toby Hede
A: 

Start with Rails ... rumor has it merb will be assimilated http://weblog.rubyonrails.org/2008/12/23/merb-gets-merged-into-rails-3

Robert French
Its no rumour, both the core teams have confirmed Merb will be merged into Rails.
Swanand
+1 to "no rumour": the core teams merged months ago. Rails 3/Merb 2 are the same thing.
Mike Woodhouse
+4  A: 

Sinatra is another Ruby web framework. I've heard that it's geared more towards smaller size applications.

Andy Gaskell
+1  A: 

Tough call, but I'd start with Merb. Rails 3 will be Merb 2. The Merb core guys are taking over Rails development to make it more Merb-like (h ttp://yehudakatz.com/ et al.).

The drawback is that Merb is a moving target and documentation is somewhat lacking, whereas Rails has extensive beginner's documentation available.

There are h ttp://book.merbist.com/ and h ttp://wiki.merbivore.com/, but both are very incomplete and not infrequently out of date. There are the autogenerated API docs at h ttp://www.merbivore.com/documentation/current/doc/rdoc/stack/index.html , but those are also horrendously incomplete (most methods have grossly incomplete or nonexistent documentation that doesn't, for example, list what options are available in an options hash.) There are tons of blog posts on various Merb features, but the vast majority are horrendously out of date and no longer applicable to current Merb.

If you do go with Merb, resign yourself to spending hours reading the (minimally commented) test suite and source code yourself to figure out how to get things done. (You'll get a deeper understanding of the library that way anyway, at the cost of some upfront screen time reading code.)

Rails, by contrast, is a relatively stable target with extensive tutorials and documentation, but it's all going to be obsolete in Rails 3 when it's Merbified. You'll have to learn Merb anyway at that point, rendering all your work learning classic Rails useless. So I'd go with Merb from the outset.

(sorry about the lack of hyperlinks, but "new users can only post a maximum of one hyperlink")

Paul Legato