Learning: Codecademy

Codecademy’s Code Year, a program dedicated to teaching people Javascript over 2012. Unable to convince myseld people would follow through with this, I just dismissed the whole website. One friend even made the joke that resolutions like this are the 21st century version of signing up to the gym. However, once my cynicism faded, curiosity got the best of me and so I decided to see what they’ve accomplished. It’s been a while since I’ve done some programming, so getting a refresher seemed like a worthy adventure.

After spending a few days going through the existing lessons, a few compelling aspects of Codecademy really stood out:

  • One Spot: There is no for context switching between book and screen or screen and other app. The lesson and the coding area are located next to each other, making it easier to follow the assignment and maintain focus.
  • Development Environment: There is no environment to set-up, it’s self-contained. Yes, I know they use Javascript so this isn’t really a major issue, but once again though, having the coding area next to program output is an incredible time-saver.
  • Q&A: Hints are embedded in each lesson and always a click away. If that doesn’t help, the Q&A community will help you work through most problems.
  • Time: Each course has multiple sections, but they only require a few minutes each. Since your progress is saved, it’s simple to complete one quick lesson, go do something else, and come back later.

Codecademy is still a start-up and therefore still evolving. So while I’m going to be patient with them, there are a few areas could use some improvement:

  • Lessons Quantity: There are just too few. This should rapidly increase in the near future, but right now, it’s a pain to get on a roll and then have to stopand wait for the next lesson set to be released.
  • Cheat Sheets: It’s easy to forget something you’ve only done once. So after learning a new concept, a handy (possibly printable) cheat sheet containing basic structure or grammar would be more helpful than going back to reference an old lesson.
  • Repetitive: There are areas where you constantly type in the same code over and over. While it does help drill home the point, it also can get annoying quickly.
  • Errors: Programming errors, especially for newbies, bring everything to a halt. Sadly, most errors don’t say, “You should put a semicolon here,” or “You didn’t close out that function with a bracket.” A short lesson here and there on error messages and what they actually mean would go a long way.
  • Curation: The Q&A is nice to have, but is going to be overwhelming as more people sign-up. People who post up questions are usually not clear in describing their problems, so its difficult to find the exact help you need. Given time, I hope they can curate or summarize some of the most common issues and the best answers.

Overall, I’m pleased with what I’ve seen. With the pieces they already have in place, it shouldn’t be too difficult to teach some fundamental programming concepts. As with any educational tool though, you get out what you put into it. There is no public resolution for Code Year needed to move forward, so get started and catch up with the rest of us. For a few minutes a day, it’s an easy investment to make.

Link: Codecademy