[LRUG] Which JavaScript framework?

Paul Doerwald paul at liquidmedia.ca
Tue Nov 27 06:15:02 PST 2012

At the "Throne of JS" conference in Toronto this past summer, this very topic was addressed: several competing JS frameworks got up on stage over 2 days and showed their stuff. A very good and fair write-up of the conference is here: http://blog.stevensanderson.com/2012/08/01/rich-javascript-applications-the-seven-frameworks-throne-of-js-2012/  

Personally, my take-away was this: Either go with Backbone.js or Ember.js. Go with Backbone if you have an existing app and you want to add structure to it, or you have a primarily client/server app planned but with a few pages of high interactivity. Backbone is extremely popular and easy to learn. There are many tutorials and even books coming out. The downside of it is that because it's so light-weight, you'll find yourself saying "why doesn't the framework take care of this for me?"

Ember.js shines when you're writing a fully client-side application. Yehuda and team are thinking through all the hard problems so you don't have to. Fewer issues will fall through the cracks that the framework could be picking up. They're solving problems holistically. Even more valuable (to me) is that they're taking the Rails philosophy of convention over configuration to heart. Where there is a convention to be leveraged, they're going to do it. So, if you hate the convention over configuration of Rails, you'll hate it in Ember. If you love it (or at least accept it for its good parts, as I do) in Rails, then you'll feel the same about Ember. The negative with Ember.js is that its complexity means that you'll have a much harder time learning it. Furthermore, the web site documentation is poor and online documentation beyond the web site is even poorer, or non-existent… or worse: out of date by 2 months! (gasp!). But, as the Ember.js team drives toward a 1.0, the API will get more stable, and the environment is growing in popularity. (There's now a monthly Ember.js meetup in Toronto — expect more throughout the world, IMO).

I found all the other frameworks to be somewhere in between Backbone.js and Ember.js. With all of them you'll sacrifice either on the lightweight-ness of Backbone.js or you'll sacrifice on the thinking-through-all-the-problems-all-the-way of Ember.js. In other words, all the other frameworks were, IMO, too much compromise.


Paul Doerwald
Chancellor, Liquid Media Inc.

On Tuesday, 27 November, 2012 at 9:00 AM, Matthew Rudy Jacobs wrote:

> On 27 November 2012 20:33, David Burrows <david at designsuperbuild.com (mailto:david at designsuperbuild.com)> wrote:
> >  
> > There's a big difference between full fat frameworks like Angular/Ember (think Rails) and more lightweight libraries like Backbone (think Sinatra).   
> I use Backbone as a tool rather than as a framework.
> And I think that's what its best as.
> I'm waiting for the first book on Ember, then I'll learn it.  
> I'm quite excited.  
> _______________________________________________
> Chat mailing list
> Chat at lists.lrug.org (mailto:Chat at lists.lrug.org)
> http://lists.lrug.org/listinfo.cgi/chat-lrug.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lrug.org/pipermail/chat-lrug.org/attachments/20121127/abf2c4de/attachment.html>

More information about the Chat mailing list