Real programming shouldn't be kept out of sight like the Wizard of Oz
The other criticism levelled by professional coders against Rory’s Great Coding Adventure may be less contentious to a technical audience. What he “learned” isn’t real programming, and bears little relation to it.
Several years ago I explained that a lot of problems with the web are sociological: people were addressing system-level problems using presentational-level thinking and tools. What Rory learned on his day out is presentational code. That’s what HTML and CSS are. The rest of the LAMP stack remains out of sight, like the Wizard of Oz.
(Redefining systems engineering in terms of painting is just one of several related trends: we’ve seen innovation redefined as talking about things, as James Woudhuysen explained here. But that’s a discussion for another time.)
So the day at the ad agency no more qualifies Rory to speak about computer programming than painting a fence qualifies you to be an architect or a civil engineer. You can certainly learn a lot about paint in a day. And paintbrushes. How far this gives an insight into building a system, or how systems interact, though, is highly debatable.
Which brings us to what for me is the most curious and interesting part of the campaign. At some point in the conversation with a compulsory-coding enthusiast (and I’ve had several of these conversations) you get to this next stage.
“OK,” they’ll say, “I concede that it’s not for everyone, and not everyone needs to learn open-heart surgery. But knowing even a little about how things work can’t do any harm, can it?”
Memorising runic symbols
I agree, it would be wonderful if people knew how things work: like proteins, machines or economies. It would also be wonderful if they knew some history, and perhaps with some basic philosophy, to be able to think clearly and identify specious arguments. Or cook.
But time is not infinite, and the proposition requires us to make special time for compulsory coding, shoving other subjects out of the way. Let’s take this proposition on its merits.
I simply refer the reader at this to the point about presentation tools above. Knowing how to place a CSS element 20 pixels from the margin doesn’t teach you how computers or networks actually work.
I very much doubt that we’d have so much ill-advised internet policy if, for example, people realised that "The Internet" is not a thing but a network of networks.
And here we return to opportunity costs, and the puzzling notion that learning those presentation tools teaches you anything.
Two very odd beliefs lie at the heart the compulsory-coding crusade. One is that by staring at these mysterious runic symbols, children will acquire some deeper wisdom. This is not education, it is really the opposite, a belief in mystification. (Let’s call this the Church of the Angle Bracket – it’s a web thing.)
The other is that getting down and dirty with “coders” is one of life’s great experiences, one that everyone should experience. This is as deeply patronising as Toby Young’s 100m race, and it’s nothing more than Nerd Tourism.
“Come at look at the coders. Smell their sweat. Live with them for a day!” the brochure will read. Donchaknow - it’s the new gap year. ®