I’ve actually been coding for a long time, without realizing it.
If we remove all the syntax of computer language and look at what the bare bones of coding is, it’s just using logic, reason and simple commands to create repeatable behaviours.
This is what parents do with children.
They start with small instructions, baby steps and repeated routines, appropriate to both the child’s abilities and the parent’s still developing skills as a programmer of babies. Then as the child starts to develop cognitive abilities, the parent sets up a system of conditionals: acceptable choices the child can make that will not include choices that will bugger up their lives.
Figuring this out is a frustrating challenge, but it will probably work well enough while the child is still not much more than a new Object in the parent’s mind, something that in theory should inherit all her workable (and perhaps not as workable as she’d like) methods.
But at a certain point the child hits the age where he now has the abstraction abilities and the independence to start programming his own life. And this is where the real problems start, because the parent is no longer the programmer with a child Object. The parent is now dealing with a junior developer. And if the parent does not know how to establish her position as senior developer, there will be blood.
That’s why I think this is such a great time for Ben and I to learn how to code. Because even if no one in the family ever becomes a professional programmer, we’re still regularly working together on solving problems with commands and the kind of simplification skills that inevitably spill into our lives. Ideally this will help us solve problems in ways that are more neutral and productive than what usually happens between adults and teenagers.
Obviously Ben will not stay a junior developer in this family for long. This is the law of life and technology. Coders move on. But for now it’s still my responsibility to instill good thinking, writing, and commanding habits.
It’s all about those transferable skills.