Tuesday, May 15, 2012

Jeff Atwood supernails it (more on "everyone must code")

Jeff Atwood at Coding Horror completely nails the "everyone must learn to code" thing in his latest blog entry

It puts the method before the problem. Before you go rushing out to learn to code, figure out what your problem actually is. Do you even have a problem? Can you explain it to others in a way they can understand? Have you researched the problem, and its possible solutions, deeply? Does coding solve that problem? Are you sure?

And, as I've argued elsewhere the thing that we need to be teaching is exactly the kind of analysis and rhetorical skills required to pick a problem and argue about the best way to solve it. Coding is an execution that adds nothing in particular to those core skills.

This made me laugh:

One bad programmer can easily create two new jobs a year. And for that matter, most people who already call themselves programmers can't even code, so please pardon my skepticism of the sentiment that "everyone can learn to code".

I have noticed that, with a few exceptions, most of the people against universal coding education are practising programmers, most of those for aren't (and a substantial subchunk of those are technology journalists).

The easy analysis is that we're worried about the value of our jobs being eroded by more people having our skills. I think several decades of off-shoring have put paid to that: I know I could be replaced at least several thousand times over by someone cheaper and smarter. More competition doesn't bother me and I'm sure it doesn't bother Atwood.

What does bother me is the misalignment between the overt goals of the "everyone can code" movement and its method: coding won't teach you about anything except coding.

Computers run down the backbone of society and, yes, there is a general scarcity of knowledge about whether this is a good thing and how to control that, especially within government. But learning to program doesn't fill that gap. I can easily imagine a curriculum in which programming was part of an overall comprehension of technology, but it can't be the only thing.


No comments:

Post a Comment