From recent posts, I'm concluding that Javascript is the next thing I should learn (employability, resilience, usefulness). There are so many resources, however, so I'm not sure where I should begin?<p>JavaScript: The Good Parts?
Online tutorials and "classes?"
Opensource Github projects?
Other books?
Should I learn CoffeeScript "instead" of pure JS?<p>My goals include learning Node and Angular (should I even go all-in on a framework at this point?) too.<p>I thoroughly know HTML and CSS and, at the sake of sounding redundant, I'm a beginning novice in Rails.
I'm in a similar boat. For Javascript, I found <a href="http://www.amazon.com/JavaScript-Definitive-Guide-Activate-Guides/dp/0596805527" rel="nofollow">http://www.amazon.com/JavaScript-Definitive-Guide-Activate-G...</a> to be a good place if you have little to no familiarity of Javascript. For Node, I'm using the links suggested here <a href="http://stackoverflow.com/questions/2353818/how-do-i-get-started-with-node-js" rel="nofollow">http://stackoverflow.com/questions/2353818/how-do-i-get-star...</a>.<p>For Angular, I've just followed the documentation on angularjs.org and tried applying it to various web projects that I have already.<p>I feel that there are a lot more projects in pure JS compared to CoffeeScript that even if you did learn CoffeeScript, you can't avoid encountering pure JS.
IMO, learn pure js but while learning the basics, get your hands dirty with some frameworks, small side projects or tutorials and workshops. This will help you find what framework you enjoy or really "clicks" with your personal preferences. Its also more fun then learning the syntax and structure of a new language. There will be another framework to learn next month but pure js is going to be around for a while.<p>Some good resources for learning JS from the ground up (pure js)..<p>Books (highly recommended):<p>- Javascript: The Definitive Guide<p>- Eloquent Javascript<p>- Professional JavaScript for Web Developers 3rd Ed.<p>Resources:<p>- <a href="https://learn.thoughtbot.com/javascript" rel="nofollow">https://learn.thoughtbot.com/javascript</a><p>- <a href="http://javascriptissexy.com/how-to-learn-javascript-properly/" rel="nofollow">http://javascriptissexy.com/how-to-learn-javascript-properly...</a><p>- <a href="http://www.reddit.com/r/learnjavascript/comments/1oq8ns/learn_javascript_properly_omnibus_post_for_the/" rel="nofollow">http://www.reddit.com/r/learnjavascript/comments/1oq8ns/lear...</a><p>- <a href="http://jstherightway.org/" rel="nofollow">http://jstherightway.org/</a><p>For Angular (<a href="http://egghead.io" rel="nofollow">http://egghead.io</a>) is a great resource for short/dense screencasts (from what I've heard/read)
Eloquent JavaScript - Marijn Haverbeke<p>Effective JavaScript - Dave Herman<p>Functional JavaScript - Michael Fogus<p>Once you know JavaScript, dig into the codebase of larger mature projects by the most prolific/well-known developers in the JavaScript community, like TJ Holowaychuk, Isaac Schleuter, Dominic Tarr, Raynos, Marijn Haverbeke, Oliver O'Steele, James Halliday, Mikeal Rogers, SamuraiJack, Gozala, Creationix, Kritowal, Marak, coolaj86, TooTallNate, indexzero, hij1nx, pkrumins, John Resign, Douglas Crockford, etc.<p>Sorry if I missed any names.