Gottfried Sehringer published an article in Wired last year that cast doubt on one of today’s biggest education trends: Should We Really Try to Teach Everyone to Code? (2015). In the article, Gottfried argues that teaching kids to code, while not useless, is missing the point. We should instead them how to visually express logic, how to identify and understand needs, and how to envision new creations and innovations. And later, when building apps becomes as easy as drag and drop, those skills will be incredibly useful and functional, and rather than getting saddled with outdated coding knowledge, they’ll have universally applicable skills at their fingertips.
To be sure, coding is the hottest skill on the job market today. We use apps to manage our productivity, our finances, our lifestyles, and everything else. As Marc Andreessen famously quoted: “Software is eating the world.” (Wall Street Journal, 2011). However, the article makes a clear distinction. While everyone will soon need to be an app developer, learning to code isn’t necessarily the right answer. Gottfried uses Henry Ford’s example of what people want vs. what they’ll use. Learning to code is akin to breeding faster horses: marginally useful, but those who produce cars will end up far better off.
So if coding is a faster horse, then what’s the car?
This is where the author ventures into the hypothetical realm. In the future, code isn’t the language of the masses, but still has a place. Instead, app development is a much more intuitive process, using simple interfaces to create complex feature-complete apps. Instead of teaching everyone to code, we would teach them how to identify and understand needs, visually express logic, understand technology, and imagine disruptive inventions.
Of course, teaching students these skills is an excellent idea. Those capabilities would serve them well regardless of their chosen career. There’s just one one thing the author is missing: Our education system doesn’t currently teach those skills, and it likely won’t anytime soon.
And while coding itself may not be relevant forever, the skills gained in learning it will be: logic, computational thinking, and problem solving.
While the author argues that we should teach the aforementioned skills explicitly, I suggest this: why not support coding? Not only will students learn an undeniably useful skill, but their thinking will be improved as well. Michelle Lagos, a computer science teacher in Tegucigalpa, Honduras, observed her class’s performance in various grades. “One of the most common benefits of computer programming is that the kids have an easier time learning math skills”, she writes. ”When they have to work on long division, it is easier for them to visualize the numbers now instead of counting with their fingers. They visualize the equation and think of the best way to solve it.” Lagos also notes that, as a result of teaching computer science, she’s “seen kids in many grades improve their math skills.” (tynker.com, 2014)
That is not to say teaching students coding is superior to teaching them to visually express logic or determine needs in a community. It does however, already have support at the highest levels of government, support from the private sector, and support from the job market. We should support this “learn to code” movement, not as pure vocational education, but as a multi-disciplinary thinking tool.