I felt pretty jealous as I walked into the computer room of the elementary school I was visiting. The hulking PCs of my youth – with their giant floppy disk drives and 8-bit copies of Oregon Trail – were nowhere to be seen. Instead, children were happily tapping away at Photoshop and playing Web games on pristine, wafer-thin iMacs.
I had come to the school to have a group of kids play-test Code Monkey Island – a board game I had designed to introduce kids to programming fundamentals. As I carefully unwrapped the components of my prototype, one of the kids grabbed a monkey figurine and quickly inspected it.
“This was 3D printed, wasn’t it? I can tell by how rough the plastic is.” Having only seen and held a 3D printed object for the first time in my life earlier that week, needless to say I was impressed by his experience.
As students enrolled in an after-school programming class, the group was already familiar with a multitude of digital tools designed to introduce kids to programming. With Code Monkey Island, I had seemingly entered into an arms race to teach kids as young as eight a set of skills worth six figures a year.
The new literacy
Visiting the elementary school cemented one important fact for me – the world was a very different place when I was 10 years old. In 2001, I was taking my first tentative steps into a fledgling, dial-up Internet. Now, kids aren’t just exploring the Internet – they’re building it.
Their world is the stuff of science fiction: iPhones, app-controlled lights, thermostats that adapt to your schedule, 3D printers. And understanding how that world works is as crucial as being able to read a map or calculate a restaurant tip.
For my generation, programming is still a luxury – an impressive resume booster for some; a ticket into the hottest startups for others. For children growing up today, programming will be a necessity – an indication of their understanding of how modern businesses, institutions, and processes are run, and how they can be run better. As such, they need to become comfortable working in and around code from a young age.
Programming through play
So how do we teach kids abstract concepts that take college students entire semesters (and then some) to master?
Kids are natural builders, quick learners, and generally a lot smarter than we give them credit for. But if I could barely stay engaged in my college Java lectures, there’s no way they could hold a 10 year-old’s attention. We need to redefine how education works, not by asking kids to conform to our patterns and expectations, but by attempting to conform to theirs.
ThoughtSTEM (an organization dedicated to teach kids how to code) realized that Minecraft – a LEGO-esque video game that allows kids to use code snippets to modify their gaming experience – was incredibly popular with their kids. The organization designed an entire course around the game, which subsequently created a wait-list 100 students strong.
Meanwhile, programs like M.I.T.’s Scratch empower children to build fun, bite-sized applications and animations through pseudo-code, then to visualize the result of their work with colorful sprites. And, more recently, physical board games like Robot Turtles and Code Monkey Island provide an experience where the whole family can play and learn together.
The result? A thriving ecosystem where children are learning how to code, and where educators, programmers, and entrepreneurs alike are transforming how programming is taught.
Redefining programming and accessibility
This week, Apple announced Swift, a new programming language that could revolutionize the way OS X and iOS applications are written. The language is concise, modern, and powerful. Perhaps most intriguing, though, is what Apple calls Interactive Playgrounds, a feature that allows developers to visualize the code they’ve just written in an interactive, animated environment.
In the pursuit of making programming more accessible and understandable for children, we’re starting to realize that there’s no reason it can’t be more accessible and understandable for everyone. We’re entering a time when students of all ages – children and parents alike – might not need an expensive computer science degree to become competent programmers, but instead could learn through a mixture of personal initiative, practice, and a healthy dose of games.
Because if kids can learn complex logical and syntactical concepts through colorful monkeys and cute turtles instead of scary lines of code, maybe the rest of us can too.
Back in the elementary school, the kids were tearing through the prototype of Code Monkey Island. Busy racing their monkeys around the island, arguing over the rules, and helping each other plan out the best possible moves for their next turn, the iMacs sat neglected against the wall.
No matter how much time passes, some things never change – and one of those things, thankfully, is how much kids (and kids at heart) love games.