January 17, 2012

Reflections on Code Academy and Code Year so far

I've started Code Academy and as of last night, completed Week 1. This is a free program with weekly, online lessons to learn how to code (Javascript). Librarians have started using the hashtag, #codeyear to communicate with each other on their progress (and you can sign up for the lessons at the Code Year site). There has been a push in Libraryland for librarians to learn coding so we can be more self-sufficient in developing digital services and products, as well as just communicating better with IT professionals. There is even a newly-established ALA Connect group for librarians to discuss and help each other with the weekly lessons.

My impressions so far of Code Academy are mixed. Of course, no doubt, this is a great thing. It's free, it's accessible, and it's an intro-level program that is incredibly interactive. It can be hard to teach yourself these types of skills, so opening up the playing field is huge.

It's also nice that the lessons are given in increments, so you get Week 1 for a week, and then are sent Week 2 the next week. You can do more if there is more content up on the site, but it at least makes it more digestible. The leveling up and getting badges is another thing I like. It could be a little bit of gamification, but since these lessons have been made more social through Code Academy and also through the library community, it adds a little more fun to it. I've taken a particular interest as well as to how the Mozilla Open Badges project will relate to library instruction (or could relate), so experiencing a badge-generating program is useful to me and I'm seeing how it could potentially work with students. Although the Mozilla Open Badges project is for open access education, I still think it could be a beneficial concept to try in university and other formal academic settings as well.

Back to Code Academy, there are also some things that I am finding problematic. When considering good pedagogy, detailed feedback contributes to effective learning. Code Academy does not really give any feedback. You put your code in and run it, and then you are right or wrong. There is a little bit of info that pops up when you do enter wrong code, but it's not often enough to help you figure out where you went wrong. The hints are great at the beginning of the lessons, but get more obtuse and mysterious as you progress. I think it can be a good method that they are giving sort of a sandbox atmosphere to try out coding without being bogged down with theory and memorizing definitions (and where you don't have to be afraid of failure, which is a quality of a good game BTW) but at the same time, not really understanding the logic behind how some of the code works makes it very hard to understand why your answer does not work. I was glad to have other librarians who understand coding logic explain why my answer for Week 1, Lesson 8.2 was incorrect, so I was able to progress and finish the week.

Overall, I really do think Code Academy is great, and I'm going to continue on with the lessons. It can be difficult to weave detailed feedback in to an automatic, teach yourself-type program, but at the same time, it is essential for people who are just starting out. I think this article by Tech Crunch, "Will we need teachers or algorithms" (interesting read also for emerging trends in education) rings true here to a degree. Human or AI-driven though, if you can't figure out what you did wrong in a meaningful way, you can't learn from your mistakes and progress.