On a recent late-night formula run, I passed by a large display of books about teaching children to code. I have seen these books around, but never such a large display directed toward elementary-aged children. These books are part of a flood of resources—summer coding camps, after-school code clubs, apps designed to teach kindergarteners the rudiments of JavaScript—aimed at equipping children with future-proof skills.

Source: Teaching kids to code: I’m a developer and I think it doesn’t actually teach important skills.

I don’t think this developer understands what teaching requires. He rallies against the books that show a series of steps and the solution. I don’t disagree with that at all, but while he argues against teaching coding to kids he’s laying down the foundation on why you teach coding:

Programming is messy. Programming is a mix of creativity and determination. Being a developer is about more than syntax, and certain skills can only be taught to the very young.

And he builds an even stronger argument late on why kids learning to code:

Try something. See if it works. Try again. If a problem was straightforward, it would be automated or at least solved with some open-source code. All that’s left is the difficult task of creating something unique. There are no books that teach you how to solve a problem no one has seen before. This is why I don’t want my kids to learn syntax. I want them to learn to solve problems, to dive deep into an issue, to be creative. So how do we teach that?

The point that is being lost on the developer is that you need to learn the syntax before diving deeper. I learned programming from a book, and then from typing in BASIC programs from magazines. With that as a base, I could start writing my own programs. While I didn’t become a developer, I automate as much as I can each day through programs I write.