Saturday, December 10, 2011

No Tuition? Sweet!

One of my personal goals in the post-college world was to continue to my education in some way, both for programming and design. Previously, I would simply search for a tutorial on the topic in mind and follow it, but I've come across a few different sites that specialize in education. There exist a lot of online programming education websites, each with their own style, but they all have one thing in common: it's on the user to drive their education.

So here's what I used:

  1. Lynda.com (www.lynda.com) - a paid subscription based site that is essentially a library of videos for a large variety of subjects, not just programming. Depending on your subscription, you can access different resources such as source files to follow along with the videos.
  2. Code School (www.codeschool.com) - a freemium site that specializes in programming languages. A lot of their introductory courses are free, and they operate in a achievement/gaming model - you can earn badges for completing courses and get discounts on their intermediate courses if you complete courses. 
  3. Codecademy (www.codecademy.com) - a currently free site that, like Code School, gives you badges as achievements for courses. They're currently building out their site.
  4. Coursera (www.coursera.com) - a free site that hosts classes from multiple universities online.
One that I wish I could have used was Team Treehouse (www.teamtreehouse.com) because of their beautiful visual design, but they are completely subscription based. But the four I used kept me plenty occupied

We'll start with Lynda, the first site that I used. Lynda reminded me a lot of some of my college lectures - some of the courses were a mix of Powerpoint presentation recordings and demos of the product/code in action. I found myself taking notes on the side and pausing the video at multiple points to digest what I had just learned. But I didn't quite connect with the material as well - rewinding and rewatching portions of the video turned out to be a much more common task than I expected (or perhaps I'm just not the brightest bulb in the box...). Getting around the site itself was pretty okay, but the big problem with Lynda for me was that I just wasn't engaged with the video.

Code School and Codecademy on the other hand were definitely more entertaining. Code School's Rails for Zombies is the course I started doing, and it was far more interesting than just watching videos. But I found that what really drew me to both these sites was the hands on interactive exercises. I found that I retained a lot more information and was able to connect it to what I already knew (granted, I was doing exercises in Javascript which I'd had some experience with, so I'll have to retest again with some of Codecademy's new exercises available for beta testers).

Finally, there's Coursera. Like Lynda, it relied heavily on videos, but I felt like I was actually back in school - the course I took was HCI from Stanford. It was a great refresher course, and I definitely learned a lot of new things. What was interesting was keeping up with the homework and quizzes, especially the peer grading. It forced the students to go through an exercise where they learned what a good and bad homework sample looked like so that when they went back to review their own assignment, they would be (in theory) honest about their self evaluations and fair in evaluating others.

Exploring these sites was a great exercise in user experience, but it also taught me about myself. My learning style was refined along the way, and I found that there were things that worked for me much more. There are many different interpretations of online education, but it's a field that's still evolving as technology keeps growing and more classes become less about the traditional desk and chairs and more about having a decent Internet connection. In the end, I think that the site that worked best for me was Codecademy - the interactive exercises are what did it for me along with the site's clean design and easy learning curve. I highly recommend all four sites though - what worked for me may not work for you though.