Rise of the code schools
Learning to code used to involve a school computer room, a bearded teacher in a cardigan, and a book the size of an encyclopaedia. Not any more. To the delight of shoulders everywhere, there’s a new breed of code school on the scene: one that expects no physical attendance, that won’t put you on the spot in front of the class, and doesn’t even require a textbook. Welcome to the online code school.
Then again, “school” is perhaps not the best term. You can work at your own pace and in your own home, and the courses provide instant feedback, both in the form of subtle pointers towards what you’re doing wrong, and rewards when you do things right. Progress is encouraged not through the threat of detention, but via a social profile that fills with badges as you learn new skills. It’s the gamification of school, and it’s working.
A new way of learning
The current boom in online coding has its roots in two desires. First, there’s the desire of the teacher to reach as many people as possible – to educate beyond the walls of the classroom. Online, every student can benefit from the best teaching, and a lesson needs creating and testing only once. That lesson is no longer confined to a class of 30, but can be used by hundreds of thousands, even millions of students in some cases.
That’s combined with the basic desire to learn a skill that’s increasingly important in the digital age. As Codecademy co-founder Zach Sims put it in an interview: “I think coding is 21st-century literacy. Traditionally, there are the three Rs of literacy: it was just reading, writing and arithmetic. We think the fourth should be algorithms.”
The idea of learning online isn’t new and it won’t suit all subjects, but here it makes sense: ask an expert programmer how they learned their craft and most will say they progressed with hands-on experience. A sense of active involvement is key, so these online schools place interaction at the heart of their lesson plans, their site design and even their growth strategies.
Khan Academy course creator John Resig says its open code, easy feedback and encouragement of experimentation are all influenced by his open-source experiences. Instead of explicitly teaching the fundamentals of programming, it’s more productive to “put the student into code of graduated complexity and encourage them to manipulate, explore, and write their own programs.”
Lessons are typically broken down into digestible chunks, with the instruction and the user input closely tied together. At Codecademy, a chatty text instruction sits beside a live code window, often with a fragment of code pre-entered as a starter or as something to fix. Make a mistake and the interface lets you know; solve the problem correctly and you unlock the next lesson. Code School, Udacity and Treehouse go a step further with professionally produced video tutorials.