Best Online Courses #12

Practical JavaScript on WatchAndCode by Gordon Zhu

Online courses on JavaScript are pretty much a dime a dozen these days, and it’s not often when any one course stands out for one reason or another, especially when so many courses claim to teach you everything you need to know. So it’s refreshing to find courses that are more limited in scope and try to teach you only a small number of topics. And it’s even more refreshing when these courses are still accessible to beginners, and don’t require a massive amount of prerequisite knowledge.

This course by Gordon Zhu is one of those unique cases. It’s entirely available for free ($0) and has been since at least 2016 which is when I completed it, but for some reason continues to fly very much under the radar and is very rarely mentioned online. There’s a small but dedicated fanbase that continues to rave about it for good reason, which includes me, so my review of this course will be doing nothing but adding more fuel to the proverbial fire.

Although Practical JavaScript is not a course I’d recommend to total beginners to programming or JavaScript (see my review last week of a course that I would), it is a course that I’d recommend for those still learning the ropes and getting used to JavaScript, so it’s still very much appropriate for relative beginners.

The curriculum of the course follows a very natural and logical progression, starting with foundational concepts like arrays, functions, variables, & objects, and building on those to explain more advanced ones. But what really sets apart this course from a lot of other ones on the same topics is the way that the material is presented—and instead of presenting concepts as a series of individual standalone videos, nothing in Practical JavaScript is standalone. Instead, all of the screencast videos in this course fit together to form a walkthrough of building a small “Todo List” app that you build from scratch and proceed to refactor a total of 10 times!

As you proceed through the course and refactor the Todo List app all of those 10 times, you’ll come to understand not only how JavaScript works, but also how to build and put together an actual (if small) JavaScript application. And through this process, Gordon Zhu teaches you more than just JavaScript syntax, but also exposes you to concepts that are applicable in real-world software engineering like code organization, separation of concerns, and design patterns like MVC. Additionally, it further helps that in the latter refactors of the Todo List app you end up tacking on a full graphical UI via HTML and CSS to the base JavaScript app. This can and should tremendously aid in the learning process for anyone who might be stuck in understanding how JavaScript is actually used in web apps, since the app starts out as a command-line version driven via console.log() and over the course of the refactors, evolves into a simple interactive fully-graphical web app in the latter stages.

Conclusion: Gordon Zhu’s Practical JavaScript is an extremely well-crafted course that I’d highly recommend for anyone who hasn’t done it before. The presentation is concise & thorough and exposes you to material that you’ll end up needing to know as a professional developer. Easily a shining example of a top-quality course that absolutely no one should miss!

Rating: 5 out of 5