Skip to main content

It’s time we make ‘code’ an official language, and teach it in every school

school coding
“We don’t need to teach kids about technology — they already understand it better than we do!”

That statement, though true in many ways, is at the heart of a serious problem with our education system: We’re failing to equip kids with true tech skills because we assume they’ll develop those skills on their own, or that they already possess them. That’s simply not true. And it’s hurting our kids and ultimately, society as a whole.

Consider this: Gartner estimates that total global IT spending will hit $3.5 trillion this year, while Accenture predicts that the increased use of digital technologies will grow the size of the global GDP by $1.36 trillion in the next 5 years. All of those dollars equal opportunity for the people who are fluent in tech.

But being able to play Crossy Road while Snapchatting and watching your favorite YouTuber does not count. These are the equivalent of being able to stop a VCR’s clock from flashing “12:00”; they might befuddle adults, but they’re not the skills kids need.

So what do kids actually need to build the next generation of technology and land a job? Coding.

Code should be treated as language

In Canada, CEO of BitMaker Labs, Craig Hunter, has decided to try to do something about that country’s code-deficient education. He’s petitioning the government to make “code” the country’s third official language after English and French.

My son, who is about to enter ninth grade at a Toronto district high-school, has never touched a line of code.

Hunter says the idea for the petition came after enduring countless meetings with tech heavyweights and startups alike, all of them complaining about the same thing: They simply can’t find enough programmers to hire. BitMaker Labs runs training programs for those who want to learn the art and science of coding. Hunter — who was employee #52 at Uber before his current gig — calls it “market-based education,” but isn’t worried that his petition could dry up that market any time soon. “We couldn’t possibly graduate 4 million people,” he says, referring to one of the more aggressive estimates of how many open coding jobs there will be by 2020.

Does that sound ludicrous? It shouldn’t. In the U.K., the government has made computing and programming a compulsory part of primary education starting this year. If you think that the primary age is too young, think again: According to a recent study in the U.K., primary age children say they are more interested in learning to code than in learning a second spoken language like French. This interest begins to wane as they get older, making K-8 the perfect time to introduce them to programming.

Where did it go?

It wasn’t always this way. Back when the personal computer was beginning the revolution that we all now take for granted, there was enthusiasm amongst educators to show kids how this stuff works. By the time I turned 13, in 1983 (yup, I’m old) our eight grade class was being taught how to use BASIC on an Apple II to simulate the press-button ordering system at McDonald’s restaurants. We learned the principles of planning, commenting, using sub-routines and even something as simple as leaving lots of room between line numbers in case you needed to insert some more code later.

Thirty years later, my son, who is about to enter ninth grade at a Toronto district high-school, has never touched a line of code. He gets straight As in math, but he thinks code is boring. No one (and I reluctantly include myself in this group) has ever taught him otherwise.


That’s the danger of not introducing tech concepts to kids. Most of us don’t come to our passions by ourselves. We don’t start life with a love of Shakespeare, or cell-biology or Renaissance-era artistic works. We’re introduced to those things by people who are already passionate about them. Their teachings ignite a passion in some of us.

Sure, I hated math in school and, truth be told, I still do. But I thought programming was cool, and it didn’t take long before what I had learned in school became a desire to write my own code at home. Being familiar with code gave me a big advantage when the Web started its history-changing role back in the mid-90s — HTML was a walk in the park compared to working with FORTRAN.

Opposed to code

Unbelievably, there are those in real positions of power and influence who dispute the value of teaching kids to code. Pundit John C. Dvorak derides the whole idea of computers in schools, calling it a “scam” that the tech industry in perpetrating on an unsuspecting public. He even goes so far as to create a false choice between time spent learning about computers and time devoted to arts and music. Meanwhile, former Australian Prime Minister, Tony Abbott, said foundational programming skills are not needed for primary school children, “unless they are going to work at age 11,” according to a report from ZDNet. Perhaps that’s the biggest reason why code isn’t being introduced during K-6 — it’s viewed by many as a skill, comparable to plumbing or electrical work. But it’s so much more than that.

Coding teaches kids the value of iterative improvement over seeking perfection.

As Howard Tullman, CEO of the coworking nonprofit 1871 eloquently pointed out recently, coding teaches kids the value of iterative improvement over seeking perfection.

Why is that a good thing? According to Jim Taylor Ph.D., “Fear of failure among children in America today is at epidemic proportions.” By its very nature, coding is an exercise in repeated failure. Some of my most triumphant feelings have occurred after finally stamping out a particularly elusive bug in a chunk of code. Understanding that failure is not only normal, it’s essential to make any progress at all, is a lesson we don’t teach enough. Logical thinking, problem solving, collaboration and tenacity paired with patience are all important side-benefits of learning a programming language that stick with kids, whether or not they’re ever paid to write a single line of code.

It won’t be a generation of coders

Coding as a career is not for everyone, nor should it be. Unlike 2012’s viral campaign called CodeYear, created by startup Codecademy, I am not suggesting that people drop what they’re doing and try to become programmers overnight. The point is, just as we do with broadly applicable subjects like math and science, we should introduce it and teach it early on so that kids have yet another valuable arrow in their knowledge quiver, whether they later pursue a career in programming or not.


We teach numeracy so that kids can harness the power of numbers. We teach reading and writing so they can communicate effectively. We teach them music and art so they can appreciate and possibly contribute to the creative works that bring joy to the world.

Teaching programming gives kids the skills necessary to make the same contributions to technology.

There are demonstrable benefits to learning a second language as a child. In Canada, the French immersion option is so popular that parents have been known to move neighborhoods just to guarantee their kids a place in the few schools that offer it. They believe that bilingualism gives their kids a big advantage in a Canadian job market that must often cater to a bilingual audience. But what if you could equip your kid with not just one in-demand language, but with the ability to quickly speak any in-demand language?

That’s what learning the principles of programming does for you. Yes, programming in FORTRAN or BASIC isn’t like using Java or C++, but huge chunks of the knowledge gained from using one are directly transportable to the other.

Should we abandon teaching subjects like art, music, Spanish, French or de-emphasize correct spelling and grammar? Absolutely not. But it’s time we acknowledged that a well-rounded education without programming isn’t a well-rounded education anymore.

Editors' Recommendations

Simon Cohen
Contributing Editor, A/V
Simon Cohen covers a variety of consumer technologies, but has a special interest in audio and video products, like spatial…
AMD’s next-gen CPUs are much closer than we thought
AMD Ryzen 7 7800X3D held between fingertips.

We already knew that AMD would launch its Zen 5 CPUs this year, but recent motherboard updates hint that a release is imminent. Both MSI and Asus have released updates for their 600-series motherboards that explicitly add support for "next-generation AMD Ryzen processors," setting the stage for AMD's next-gen CPUs.

This saga started a few days ago when hardware leaker 9550pro spotted an MSI BIOS update, which they shared on X (formerly Twitter). Since then, Asus has followed suit with BIOS updates of its own featuring a new AMD Generic Encapsulated Software Architecture (AGESA) -- the firmware responsible for starting the CPU -- that brings support for next-gen CPUs (spotted by VideoCardz).

Read more
AMD Zen 5: Everything we know about AMD’s next-gen CPUs
The AMD Ryzen 5 8600G APU installed in a motherboard.

AMD Zen 5 is the next-generation Ryzen CPU architecture for Team Red and is slated for a launch sometime in 2024. We've been hearing tantalizing rumors for a while now and promises of big leaps in performance. In short, Zen 5 could be very exciting indeed.

We don't have all the details, but what we're hearing is very promising. Here's what we know about Zen 5 so far.
Zen 5 release date and availability
AMD confirmed in January 2024 that it was on track to launch Zen 5 sometime in the "second half of the year." Considering the launch of Zen 4 was in September 2022, we would expect to see Zen 5 desktop processors debut around the same timeframe, possibly with an announcement in the summer at Computex.

Read more
Is this Razer’s Steam Deck killer?
The Razer Kishi Ultra sitting on a table.

Razer has been oddly quiet in the burgeoning world of handheld gaming PCs. When I met up with the company at the Game Developers Conference (GDC) to learn about its new products, I was happy to hear it had an answer to the success of the Steam Deck.

But it was not the type of answer I was expecting.

Read more