Review : Web tooling and automation course on Udacity

In the last few weeks, I’ve gone through a few courses on the Udacity since I’ve been looking to update my JavaScript skills. The Udacity courses are mostly videos, but short and to the point. I often have trouble following along with videos when they’re too long and would rather have the transcript, but it was not a problem with those courses. It’s easy to follow along, and there are often chances to try out the material immediately instead of having to watch an hour of video before doing anything.

The courses are also not as close to the format of a university course than Coursera or Edx: the focus is on a specific subject, such as testing JavaScript or responsive design. There is no extra fluff beside the main subject, so you need to listen to the basic courses in HTML and JavaScript if you don’t already have a background in it.

Also, I was able to go through the courses faster than the posted times in most of the case: it’s easy to squeeze in a few videos and an exercise when you have a bit of spare time.

The Web tooling and automation course was the best out of the ones I tried. The goal of this course is to showcase a good workflow for a web application based on JavaScript. Since I’ve mostly worked in a .NET/Visual Studio environment lately, I’m interested in learning about the latest best practices and tools in the JavaScript world. It’s rarer to see a course that focuses especially on this: I often default to following a beginner’s course to get this information since they’ll teach how to get setup, but it’s not always representative of what someone would do to build a large application.

The course covers the following subjects :

  • Advanced editor features: The best plugins and tools to make Sublime Text a great editor for the web. It’s as good as Visual Studio once properly setup for a fraction of the system resources, and a lot faster. I’m sold!
  • Managing builds with Gulp: How to automates steps like generating CSS from SASS, minification, bundling/concatenation and creating a release version. It’s a powerful tool, and it uses JavaScript so there was no need to learn a new syntax just for the build tool.
  • Setting up live editing in the browser: It’s not something I had considered doing before since most of my projects require a session and some form of authentication, but it’s interesting to avoid copy-pasting modifications from Firebug or the Chrome developer tools while working on a complex layout.
  • Linting and unit testing: The linting, or validating the JavaScript syntax was easy to setup, but I had trouble making the testing tools work on my Linux laptop. It was not the fault of the course material, and I was able to make it work after reinstalling a few packages.

The only problem is that the downloadable examples start with the solution to the first exercise instead of the scaffolding to fill in. It’s only annoying for the first lesson since all the exercise build on each other, so you won’t miss much.

In conclusion, you must do this course if you’re interested in JavaScript and want to improve your workflow. It’s a very small time investment for all the tricks and tools you’ll learn.