views:

536

answers:

6

My feeling is that the differences between Camping and Sinatra are not very significant and that you could safely choose either one and be ok. But I want to ask the Ruby experts if this is true. Are there in fact any important differences between the Sinatra and Camping microframeworks? And how would you go about deciding which one to use?

+10  A: 

The only significant difference that I'm aware of is that Camping is based around the MVC pattern like rails, and is coupled to ActiveRecord. Sinatra is more agnostic.

Camping also is no longer maintained, while Sinatra is under active development. That alone is probably reason enough to look at Sinatra first.

edit: Thank you for the correction Philippe, and great to hear that Camping development is ongoing. Apologies for indicating otherwise.

Bayard Randel
Actually Camping *is* being maintained by a small but dedicated group of folks. Just subscribe to our mailing list at http://rubyforge.org/mailman/listinfo/camping-list to see our "chatter". And of course check out the commits on GitHub: http://github.com/camping
Philippe Monnet
+5  A: 

One thing to consider is that Camping is somewhat of a golf exercise. It was 4k but judofyr has gotten it down to 3k. Try reading the source, I dare you. Now, there's also the unabridged version which gives you decent comments, but the code itself is still painfully obfuscated.

With Sinatra you can pretty comfortably dig into the internals and find idiomatic ruby. That's pretty darn important, IMHO, especially if you ever need to patch something.

(Keep in mind that Camping is eccentric by design, I'm not aiming to pass judgment.)

semanticart
+3  A: 

Camping is being maintained. Since _why was concentrating on Hackety-Hack/Shoes until he kind-of-vanished, and (as semanticart writes above) Magnus Holm (judofyr) has been working on Camping. The unabridged version has some useful documentation. It works fine for me and, although I've yet to really stretch it, some Camping apps out there (like Cheat) run fine.

You might also like to check What are the main differences between Sinatra and Ramaze? which has some useful links to Sinatra and other lightweight Ruby frameworks.

Dave Everitt
+1  A: 

You may also want to listen to the following Ruby On Rails podcasts:

Cheat is also an application built on Camping.

Philippe Monnet
+1  A: 

Adam Wiggins (Heroku) has an explanation of why he went with Sinatra that may be useful to have a look at.

ski
+1  A: 

See Camping vs Sinatra.

Magnus Holm