The Hobbyist Programmer

by David Jones

I've recently been to PyCon UK and been reflecting on two talks there. Susan Sentance's Sunday keynote and Sam Basak's lightning talk.

Sentance's talk had a poll of the audience which revealed that virtually none of us had been taught to code by a teacher. Or at least, not an inspiring one. Most of us taught ourselves or taught each other. Basak's talk was about being a hobbyist programmer (for years) and a plea to hear more stories like that. There are lots.

I think we're all hobbyists. Like Ada Lovelace, we're all tinkering around with the newly invented computer, and sometimes we manage to make it do something interesting, useful, but more importantly, fun. But most of us haven't been formally taught how to do that, and where we have, most of those teachers didn't do that from the context of a professionally maintained body of knowledge about how to teach people to program.

The theory of how to teach people the skills they need to program in a professional context simply hasn't been around that long. And where it has been around people have ignored it. This theory and the skills to apply it in a teaching context is what Sentance calls pedagogical content knowledge (this is an existing term of art).

I have a post graduate diploma in Computer Science, so I guess I have commercially useful qualifications. But: 1) it was mostly courses designed to be useful for further academic study; and, 2) it was mostly taught by academic computer scientists, not by teachers.

I did a lot of programming between ages 10 and 18 and that was all taught by me and the ZX81 BASIC programming manual. So I was a hobbyist. For me, and many others, it's a similar story for C, Python, Go, and so on. We didn't have teachers because they simply weren't around.

So, if you think you're a hobbyist, so are we, we're no different.

The up-and-coming generation however… That's a different story. This is exciting. A new generation trained from kindergarten up to university by professional teachers armed with pedagogical content knowledge.

The children of today are going to be unstoppable tomorrow.