* For many web developers, it’s now taken for granted that such client-side frameworks are the way to build rich web apps. If you’re not using one, you’re either not building an application, or you’re just missing out.
* There’s lots of consensus among the main frameworks about how to do it (Model-View-* architecture, declarative bindings, etc. — details below), so to some extent you get similar benefits whichever you choose.
* Some major philosophical differences remain, especially the big split between frameworks and libraries. Your choice will deeply influence your architecture.
* Progressive enhancement isn’t for building real apps.
* Model-View-Whatever.
* Data binding is good.
* IE 6 is dead already.
* Licensing and source control.
* Libraries vs frameworks.
The technologies — quick overview:
* Backbone
* Meteor
* Ember
* AngularJS
* Knockout
* Spine
* Batman
* CanJS