"It seems that most people today, when thinking about their next JS project, will use Backbone because it's the most popularl framework when it shouldn't be." (sic)
Here's a long list of examples why maybe it should be:
What you want to look for in a library goes beyond feature checklists and magic datepickers. Lots of client side developers have been burned in the past by JavaScript frameworks that promise the world and end up getting in the way more than they help.
Backbone tries to provide the barest useful essentials -- the main business of building your app is up to you.
Backbone tries to provide the barest useful essentials -- the main business of building your app is up to you.
I personally prefer minimal frameworks because they don't assume what your finished product will look like. You can grow the application organically rather than trying to fit it into some prototypical mold. Full-fledged frameworks have their uses - they are perfect for getting up and running on known problems. But if you are trying to bake things into an already mature code base or trying a totally different style of architecture, they are not worth the work.
"... use Backbone because it's the most popularl framework when it shouldn't be."
You bring up a good point...to add to it, many people also choose to go with YUI, Dojo, EXT when Backbone or a list of small well curated libraries would have been a better fit.
Essentially, the problem isn't Backbone or any of the other libraries/frameworks...it's that there are a LOT of developers that can't seem to evaluate the available options effectively.
You use this argument a lot, but the ranter suggests that the reason many turn to Backbone is because of a self-selecting bias of it being the most popular.
It's certainly my favorite argument. Folks sometimes forget that pre-Backbone, there was a cornucopia of rich JavaScript framework options: YUI, SproutCore, Dojo, EXTjs, UkiJS, JavaScriptMVC, Cappuccino, and so on. If Backbone has become a bit popular over the last couple years, perhaps it's because it tries to do less than the excellent pre-existing alternatives.
there is something to be said about flocking to a framework purely based on popularity, Rails is a great example of that too, you sure as hell don't need it for most projects but there are a lot of developers familiar with it, whether it's good or not is another thing
Here's a long list of examples why maybe it should be:
http://backbonejs.org/#examples
In comparison, here's the public list of interesting apps built with Angular and Derby:
http://builtwith.angularjs.org
https://github.com/codeparty/derby/wiki/Community-Projects
What you want to look for in a library goes beyond feature checklists and magic datepickers. Lots of client side developers have been burned in the past by JavaScript frameworks that promise the world and end up getting in the way more than they help.
Backbone tries to provide the barest useful essentials -- the main business of building your app is up to you.