The trouble with coding in schools

B.C. Premier Clark’s plan to introduce computer coding in schools is full of difficulties.

Coding is now mandatory in English schools

Coding is now mandatory in English schools

Teachers aren’t trained in coding. Even if teachers were taught the basics of coding, it’s not enough says Sheena Vaidyanathan. Before she was a high school teacher in computing, she was a software engineer in Silicon Valley.

“There’s a big difference between learning the basics of coding and knowing it well enough to do it professionally,” she told Scientific American (August, 2016) “Learning coding is like learning a foreign language.” “We wouldn’t expect students to be fluent in French or Spanish because they took a couple of semesters of instruction in high school.”

Then there is the difference between being able to code and understanding the principles on which computers operate. Like math, coding is simply the expression of something more abstract. Writing computer code involves the ability to take larger problems and break them down into component parts. This requires conceptual thinking and analysis.

Computational thinking is interdisciplinary. Another experienced school teacher, Eli Sheldon, says: “I work with teachers to incorporate computational thinking into the subjects they teach, whether it’s English, or math, or biology.” “Because students are encountering the same mental tools across many different courses, they come to see how universally applicable they are, even outside of school.”

Canada’s economic disparity presents another problem. Students from affluent families will have access to computers and digital devices at home that poorer students don’t. And even those who have smart phones have a false sense of how computers work. Parents marvel at how “computer literate” their children are when the real marvel is the user interface developed by skilled developers who understand human behaviour as well as programming.

There are questions about the political and commercial motives behind the push to bring coding in schools.

Premier Clark is no fan of public schools. As Education Minister in 2002, Clark introduced Bills 27 & 28 forcing teachers back to work and banning collective bargaining. Her instance on closing schools is becoming an election issue. Underfunding and closing public schools, while expecting teachers to do more is a sure way to guarantee failure and a reason to promote private schools.

And while students should be taught the skills involved in problem solving and analytical thinking, why should schools be preparing them for specific skills that industry should provide?

What will coding replace? Curriculums are already full. It would be a big mistake to replace arts with industry-driven curricula. The tech hero, Steve Jobs, was neither a coder or hardware engineer. His skill was his artistic sensibilities that forced the redesign of clunky mobile phones and computers. It’s in Apple’s DNA that technology alone is not enough,” Jobs said, “that it’s technology married with liberal arts, married with the humanities, that yields the result that makes our hearts sing.”

Coding will require a massive undertaking by training teachers, revamping courses, integrating computer science into other academic subjects and changing graduation requirements.

It’s fine to announce grand plans with a election just months away, but unless Premier Clark comes up with a plan to implement those plans, it’s mere rhetoric.


  1. Pingback: Supreme Court backs B.C. teachers | Eye View

  2. Pingback: Supreme Court backs B.C. teachers | CFJC Today « Cupe 1767

  3. Pingback: Supreme Court backs BC teachers « Cupe 1767

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.