We need to stop this nonsense about teaching coding in primary school - Thomas Bibby

Today there was a story in the Irish Times, headlined ‘Bruton wants lessons in coding for primary school pupils’, announcing that the Irish Minister for Education, Richard Bruton, was considering the introduction of programming into the national curriculum for primary schools.

I’m passionate about programming. I run a software company. I program in my spare time, for fun. I co-organised a hackathon in Limerick  with the sole purpose of programming for fun with other people for an entire day.  I am a host on a podcast with two other programmers where we talk about, among other things, programming. I’ve also spent some time teaching maths and science in secondary school. And I am convinced that the idea of teaching primary school children to program during the school day is nonsense.

The assertion by tech companies that they can’t find programmers is a myth

The Irish Times articles cites lobbying by some tech companies that they can’t find good people. This is a complete myth, a combination of (a) tech companies not wanting to pay programmers decent wages (b) tech companies being really bad at recruitment and (c) tech companies not being willing to take graduates on and help them develop appropriate modern programming skills. I recruited a graduate developer two years ago for my company Reg Point of Sale, and I came across countless IT graduates who still couldn’t find a job six months after graduating, because all the job adverts were looking for 2 years experience. If tech companies would spend their own money investing in people, rather than whining at the government to spend our money, they wouldn’t have a problem.

It’s also worth noting that even if the plaintive cries about a skills shortage from the tech industry were true, it’s not clear how teaching a bunch of eight year-olds how to write for loops would help.

Teaching programming would require a huge continued capital investment

Compulsory programming on the primary school curriculum would be incredibly expensive.  I’m sure some of these tech companies are salivating at the prospect of juicy hardware, software and support contracts, involving proprietary solutions that will obsolete quickly.

We will be teaching skills that will be obsolete by the time these kids graduate

Take the average ten year-old in primary school: the twelve years that will pass before this kid graduates from college is an aeon away in tech terms – especially in programming languages. The concept that a primary school kid could learn skills now that would be useful to the tech industry in twelve years time is not consistent with the rapid change associated with tech and programming.

We could actually end up with less people in tech

Consider a child who has a natural aptitude for problem solving and logical thinking that suggests they might enjoy programming. But what if the teacher doesn’t have a strong grasp of the material, or the myriad of other reasons why a young child might not have a good experience learning a difficult technical craft like programming. Suddenly this child gets it into their head that ‘programming is hard’ or ‘not for them’, even though if they had been exposed to it at a later age, they might have found some of the joy that some of us derive from programming.

We do need investment in primary education, but in things that are useful to a child’s development

If the Minister for Education has some spare cash burning a hole in his pocket, it’s not as if other priorities don’t exist – for example investing in teaching core literacy and numeracy in primary school which has only marginally improved in 35 years, or doing something to attacking the unconscionable difference in education outcomes for kids from poorer backgrounds compared to those from more comfortable backgrounds.

Programming is great and you should try it right now!

Adults have infinitely more problems that can be solved by simple computer programs than children do. So why don’t you pick up Learn Python the Hard Way, and if you get through that, start on Automate the Boring Stuff with Python. If you’re lucky you’ll experience an enormous thrill as the computer starts to do your bidding. Maybe the Minister himself might try his hand at a few if statements while considering whether to foist this stuff on our nation’s children.

I think programming is a great thing to learn. Just not for all primary school kids during the school day. I hope the Minister reconsiders his plan.