Interactive exercises make learning fun!

Prior to last weekend, my only experience with Code School was dabbling a little bit in its free introductory course on Ruby. I did this while demonstrating how interactive exercises aid learning, as part of my sales pitch for Mechanics Academy. Maybe it was my busy schedule—or perhaps the weirdness of Ruby’s syntax—but Code School soon slipped out of my mind. Recently, my memory was jogged by the announcement that all courses on the site were going to be freely available for a weekend.

Curious, I logged back in. Before I knew it, a fun-filled weekend packed with learning had passed. And I’m now a happy paying subscriber.

Code School currently has a dozen or so courses covering various technologies related to the web. I am sure I wasn’t the only one excitedly running around this weekend trying some of these out, as their servers did slow down on occasion. (The folks at Code School were communicative about this on Twitter and quickly fixed these problems.) After some quick poking around, I found myself gravitating toward their courses on HTML/CSS/JS.

Screenshot of an interactive session on Code School

Me fiddling with an interactive session

The courses feature short (~10–15 minute) instructive videos, separated by—and this is the coolest bit—exercise sessions. In these sessions, you’re provided with an interactive console to fiddle with, along with specific tasks to complete that reflect the material you’ve just been told in the video. While engaging, these exercises are not particularly challenging[1] if you paid careful attention to the video or were meticulous enough to make notes (I was!). But the actual act of having someone tell you something, jotting it down, and having to repeat it once more into a terminal really drives concepts home.

I’ve learnt quite a bit working through and completing some of the courses on the site. As someone who has been fiddling with web stuff since the dark ages of the internet, I finally realised something this weekend. I’ve really needed courses such as the jQuery Air series[2] on Code School. They’ve helped clarify vague ideas in my mind that have been formed over years of staring at code behind other people’s websites.

And, after years of copying-and-pasting things I half understand, I now feel ready to do two things. 1. Seriously improve the underlying markup of some of my sites. 2. Shave off up to 40% of the HTML comprising the pages on this very web site. (Exercise to the reader: Use the “show source” option on your browser to figure out how. Need a hint?[3])

And so, thank you Code School. Now that I’ve signed up, I’ll definitely be back to learn more. Perhaps your silly-yet-catchy jingles and fun instructors will even make even Ruby palatable!

Footnotes:

1. Except on the odd occasion when the system expects a very particular solution to a problem, and doesn’t understand that your entry is essentially the same thing.

2. Apart from being more challenging, what excited my most about the second course in this series, jQuery Air: Captain’s Log, was that the exercise console allowed me to use Emacs shortcuts to navigate. Awesome!

3. It has something to do with the silly way the colour-on-hover is implemented.