Keeping Up With JavaScript: Recommended Books and Resources

JavaScript code

If someone asked me what’s the most important thing people are avoiding in general, but should be learned by everyone, it would probably be JavaScript. JavaScript works in every modern web browser. It can be used to write apps for phones, desktop computers, or devices. Thanks to NodeJS, JavaScript can do just about anything a “real” programming language can do. These are a few of the reasons why JS has been one of the most popular programming languages on earth, for several years.

I can’t say for sure what the single best place to learn JS from scratch is, but I can say that it’s worth learning JavaScript like you would learn English or Spanish or any language. The same goes for python, C#, C++, Java, PHP, HTML, CSS, TypeScript, and many others… In my humble opinion. (I haven’t learned all of these, but I have learned a good amount about most of them.) If I had to pick just one language, currently, it would be JavaScript. It is the language of the web browser, but can also run hardware thanks to things like NodeJS and its gigantic, open-source community of free “packages” (modules or bundles of code for almost anything you can imagine).

For beginners, a good start may be Eloquent JavaScript, 3rd Edition: A Modern Introduction To Programming. I’ll update this post when I can dig into a good resource for starting on JavaScript as a total beginner. For now, I will focus on the developer who has learned some JavaScript in the past, but may feel confused by the language’s quirks (there are many).

One gold standard for oldschool “vanilla” JavaScript is JavaScript: The Good Parts. This book focuses on JavaScript’s previous generation of rules & regulations known as EcmaScript 5 (you’ll ultimately want to learn EcmaScript 6), but I think that helps make it a quick and effective peek into the intricate behaviors of JS.

Last but not least (for now), I just came across this brilliant online “book” of modern JavaScript standards from bguiz, including AngularJS (the legacy platform that was replaced by Angular, which is in TypeScript — a layer of C-language-style enhancements for JS).

More to come.

-Shane