A rant about journalism on learning to code

Amy J. Ko
Bits and Behavior
Published in
3 min readDec 7, 2018
Clickbait is muddling our ongoing scholarly debate about learning to code.

Tonight I stumbled upon yet another editorial piece on learning to code, this time from software developer Joe Morgan critiquing “learn to code” rhetoric targeted at parents. Joe’s critique was a pretty straightforward:

  • “Coding” often just means learning syntax
  • Being a software developer involves more than just knowing syntax, it requires problem solving and persistence
  • Therefore, we should focus on teaching problem solving and persistence, not syntax.

I like this argument. It’s one we use a lot in my research lab, focusing not only on robust learning of programming languages, but problem solving skills, programming strategies, self-regulation of problem solving process, and the motivation, identity, and community needed to persist in learning all of these things. If someone wants to really learn to program, these are just some of the things that matter. And like Joe, I also agree that teaching elementary school children how to persist on solving problems in life is centrally important, and has little to do with programming.

Here’s the problem: by writing in Slate’s contrarian style, the argument and it’s presentation are frustratingly misaligned, which only confuses, conflates, and confounds the author’s core claim. Consider the headline:

I’m a Developer. I Won’t Teach My Kids to Code, and Neither Should You.

As with any clickbait headline, it buries the lede, distracting the reader with a hypobolic imperative, masking the argument’s much less divisive argument that problem solving is a critical literacy. A headline that said “Problem solving, a core part of coding, is a critical literacy” wouldn’t lift ad revenue nearly as much as authoritative parenting advice from one of the kings of the new economy.

Another problem is the piece’s terminology. Good journalism requires a careful attention to word choices because conveying facts requires precision. But as an editorial, it’s quite sloppy. It equates “coding” with “syntax” and then refutes that “coding” is a literacy. Whoever said syntax was literacy? And is the author even sure that he meant syntax, and not also semantics? Even the most marketing-driven “learn to code” instructional materials I’ve found focuses more on the behavior of conditionals, loops, and functions than it does on their particular presentations.

There are also editorial flaws in Slate’s decision to publish this at all. Why ask a software developer to comment on literacy? Why not some of the many scholars who have expertise on literacy (especially computational literacy, such as Yasmin Kafai)? Some publications do a great job finding experts to comment on current events. Public intellectuals such as academics giving the world context, perspective, history, and big ideas. No criticism of the author of the Slate piece, but I hang out with a lot of software developers (and am one myself, when I’m not busy professoring), and while they know a lot about programming, teams, and project management, most don’t know much about learning, literacy, or society.

And finally, good journalism — and good editorials — give context to a debate. This Slate piece missed the countless scholarly and popular writings about the complex, unresolved rhetoric behind campaigns advocating learning to code. The real story here is:

  • There are a dozen different entangled narratives about learning to code: some about jobs, some about literacy, some about the economy, some about fear of automation. None dominates.
  • There are tens of thousands of teachers worldwide are equally confused about these sometimes conflicting rationales for incorporating coding into K-12 curriculum, but most agree that problem solving and creativity are the most important part of coding that they want to teach.
  • There are hundreds of researchers studying the learning and literacy of “coding” and few agree what it is, what’s important about it, or what relationship it has to problem solving. We do know, however, that there is little evidence that learning to code improves general problem solving skills.
  • Most parents are lost in this thicket, and they have little guidance (even from researchers like myself, who are still sorting out what it means to teach computing to youth).

The Slate piece misses all of this context.

Good journalism, and it’s editorial adjuncts, should bring clarity. Good academic scholarship does the same. Academics and journalism should find ways to work together together to bring this clarity.

--

--

Amy J. Ko
Bits and Behavior

Professor, University of Washington iSchool (she/her). Code, learning, design, justice. Trans, queer, parent, and lover of learning.