"It's actually damn hard to learn to code if you have no background in engineering or math. And frankly, Codecademy has been no help," wrote Audrey Watters, an education writer, after trying the service. "If you were to sit me down in front of a blank IDE and ask me to build something, I wouldn't have any clue how to begin."
Coding is one of many practices that we humans rely on that, for the most part, only specialists understand, Atwood argued. We have electricians to fix the lights, doctors to remedy our ailments, plumbers to stop the leaking faucets. "If your toilet is clogged, you shouldn't need to take a two-week in-depth plumbing course on toiletcademy.com to understand how to fix that," he wrote.
As the year progressed however, more options became available for those wishing to learn how to code. The Khan Academy, a popular resource for mathematics and science education and interactive video tutorials, also launched a curriculum for learning basic programming and Web illustration.
The year 2012 could also remembered for the rise of the MOOCs. Universities and colleges have offered distance education online classes for well over a decade, but the new generation of MOOCs offer classes for little cost, on flexible schedules, and that require no prerequisites. Unlike services such as Khan's and Codecademy, MOOC classes are fully-fledged college classes; many of them are actual classes that universities repurposed for the Web. They are perfect for the hard-driving autodidact who may have quickly worked through all that Khan Academy offers.
And computer science curricula play a central part in many MOOCs. Coursera, which has attracted over 2 million users, offers a range of advanced computer science in areas such as artificial intelligence and robotics. Udacity offers many computer and networking classes, including those on advanced topics such as software debugging and testing, HTML5 Web design, and parallel programming. And edX draws from classes taught at Harvard University and the Massachusetts Institute of Technology in fields as diverse as quantum computation and SaaS (software-as-a-service).