Notes

A collection of thoughts, findings, and new things I’ve learnt about interaction design, creativity, content strategy, service design, psychology, innovation, and more.

JavaScript learning journey: getting (re)started

I’ve decided to learn how to code, again. I first attempted JavaScript in 2015, via a Codeacademy course, and really enjoyed it… until I hit the lessons on arithmetic operators and math-related conditionals. Although I am terrible at math, it wasn’t that it was exceptionally complicated, it was just too abstract. I lost interest and never finished the course.

At the time, and for years afterward, I had it in my head that the mathematical aspects of programming are what put me off. Since then I’ve worked in and around a lot more code (React, jQuery, Ajax, etc.) and realised that math, often times, has very little to do with it. The more I looked at the source code for an application or website I was working on, the more interested I got in understanding how those lines of code make things happen.

Where to learn

How nuts is it that we live in a world where, given the time, you can teach yourself just about anything in a few months. Information and self-education resources are so freely (or cheaply) available that we truly have the power to shape our lives and change our paths. It makes me feel like a kid in a candy shop with mum’s credit card!

It also makes it super difficult, sometimes, to wade through everything on offer to find the right flavour of education. For me, what’s “right” is learning by doing and building. This became apparent over a 3-week period when I tried out somewhere between 15-20 different learning resources.

I think I’ve found a good one now, which I’ll mention at the end. But first, here’s a shout out to some great ones I tried, that weren’t right for me.

Title: Learn JavaScript - Full Course for Beginners
Resource type: Video tutorial (3hrs)
Cost: FREE
Provider: freeCodeCamp.org
Link: View on YouTube
Summary: This org is an NGO with a mission to make learning web development accessible to anyone. Love it! I definitely intend to try them again later, but this video tutorial seems to be aimed at someone who already has a good grasp of programming languages.

It’s basically a laundry list of functions and commands with not much detail on how, why or when you’d use them. It’s well made and clearly explained, though, so bookmarking it for later.

Title: JavaScript & jQuery: Interactive front-end web development
Resource type: Book
Cost: RRP $62.95 (AUD)
Provider: Jon Duckett
Link: http://javascriptbook.com/
Summary: A gorgeously designed book that breaks down foreign concepts in a really user-friendly way. For example, it starts by explaining how a script is similar to a recipe, or instruction manual, and showing how you can get started by sketching one as a flow chart.

It was until I was halfway through chapter 3 that I realised there were no tutorials coming. This is purely a reference book, and I think it’ll definitely come in handy for me later.

Title: JavaScript in 14 minutes
Resource type: Online tutorial
Cost: FREE
Provider: Jeremy Thomas @ jgthms.com
Link: /javascript-in-14-minutes/
Summary: This tutorial is so beautifully and cleverly designed! I recommend trying it even if you’ve no interest in learning to code. It walks you through writing some basic JS, then explains how the code snippets work and what all the bits of text are called.

Functions, explained by Jeremy Thomas

Functions, explained by Jeremy Thomas

Title: Programming for Beginners with p5.js
Resource type: Video tutorial
Cost: FREE
Provider: Daniel Shiffman @ thecodingtrain.com
Link: View on YouTube
Summary: Under normal circumstances, my brain would have begun shutting down at the sound of someone explaining the Cartesian coordinate system, but thanks to Daniel Shiffman I now know what it is and how to use it to draw a dog!

A hand-coded dog in the p5.js editor

A hand-coded dog in the p5.js editor

I worked through a series of ~5 Coding Train tutorials, starting from the one linked above. The problem (for me) with this and the other tutorials I’ve mentioned, was no set destination. No final deliverable that you can test against to see if you’ve done it right.

Also, in the case of Programming for Beginners with p5.js, I learned that I was working with a JavaScript library, which makes things easier for you (in ways that I’m not yet able to articulate). That was handy to learn, because it introduced me to the phrase Vanilla JS, which is what I’ve decided to pursue.

Where I’m learning JavaScript now

It was this YouTube tutorial that lead to my current learning resource on Udemy:

Title: Modern JavaScript from the beginning
Resource type: Video tutorial
Cost: As low as $13 (AUD)
Provider: Brad Traversy @ traversymedia.com
Link: Access on Udemy

The most appealing thing about this course, for me, is that it includes 10 projects! I’m gonna get to actually build something just like it’s done in the real world; combining HTML and CSS to bring it all together. It doesn’t teach either of those things, but I already know how to write HTML, and have a pretty good grasp of CSS. Let the learning begin!

PS: The full price of this course is listed on Udemy as $179.99 (AUD), but I found it on sale at 93% off. Yowser.


Carlee PotterComment