Let's face it. JS developers have a great problem - there's more interesting frameworks being intro'd each week. Being competent on multiple frameworks is hard enough if your main job is as a developer. As a product manager, I'm in a bind.<p>Why is a PM asking? Well, my company is pretty small & doesn't get application development at all. (Don't get me started. It's depressing.) So I develop an occasional app so that my salespeople can access information & manipulate it on-the-fly, instead of depending on MS Office crapware. I've graduated from simple static HTML to Ruby on Rails to (hopefully) JS-based tools.<p>I want to build these myself. I have the bandwidth to do them, I don't want to wait on my HQ staff to deliberate, and I want to add these skills to my background<p>So - which JS framework should I learn FIRST?<p>- Node
- Backbone
- Meteor
- Angular
- Ember
- Other<p>OK, pile on. I'm completely open to ideas.
This is probably just me, but I would learn javascript itself first, so that the frameworks are not a black-box. It is not very complicated or expansive, so it will not take that much time, but it will save you a lot of time in the long run if you are able to just go look at the source for any of the libraries you mentioned, and see for yourself what is there. There is a lot of bad javascript code and using a framework first would only encourage bad habits, but that is my personal viewpoint.YMMV
I'd say if you already master JavaScript and jQuery then Backbone is the obvious first choice. It's simple but very flexible, more than any of the others. The community is huge and there are many plugins. There is also Marionette that will let you scale Backbone into something like the other bigger libraries.