Know-How

From Hobbies to Trade Skills to Artistic Expression, developed knowledge and improved craft is the mark of accomplishment — Coding is no different.

– Darius Dunlap

I wish schools still had Shop, and Band, and Art. I believe there is a kind of mental development that’s missing without them. And I believe that these kinds of classes — focused on doing and making — support and expand the skills of reading, writing, arithmetic, problem solving, and other key skills we all want kids to develop.

These days there is a lot of talk about “Learning to Code.” And that would be great, except for this aura of magic around it. Because learning to code is really a lot like learning carpentry, or photography, or learning to cook. The basics are pretty simple, though that is not evident to the uninitiated. And full expertise is a lifetime pursuit. And most of us are content with a modest competence.

Learning to code is easier than it has ever been. Not because it’s become simpler, but because the tools have become better, specifically in that they allow you to do something useful more easily and with less knowledge and skill.

Photography is undergoing and transformation in a similar way. It’s not that the pictures we take with our phones and fancy digital cameras are better than film for the expert photographer, but that these new tools provide immediacy. You can take a picture and instantly see it. You can learn from every photograph taken, right there, right then, and take another and another until you get the photo you want. You take more photos, too. Your photography improves at a pace and in ways that would have required much more patience, organization, focus, and effort a couple decades ago when the turn-around was so much slower.

Deep expertise still takes years, but the basics are more accessible than ever.

It’s the same for coding.

Mastering coding, or more properly Software Engineering and Computer Science, is not something every needs to do. it’s probably not something every could do, even if they tried. It’s a deep field and the complexity of the most advanced techniques are beyond those without an aptitude. At the very highest level, it requires not just superior mathematics and problem solving, but also philosophy and compassion — designing systems requires thinking beyond the immediate technical problem to understand how the system fits into the world and how people are going to use it. The people who can do all of this well are rare.

But for the rest of us, our needs are simpler. We can create something that solves a straightforward problem, using the excellent tools developed over the last several decades, and never have to think about the mathematics of drawing the curve at the corner of our icon or the physics of making our animation look natural, or the details of setting up a server and keeping it reliable and secure.

So “Learning to Code” is a lot like learning to cook. It doesn’t mean we will all become master chefs with Michelin-rated restaurants. But it does mean we can learn to make a good loaf of hand-made bread from natural starter that’s better than what you can get off the shelf at the grocers.

Most importantly, learning to code, like taking shop or joining the band in high school, helps you get better at other things. It helps you solve problems in other domains, and it develops your mind.

That one teacher

I was lucky – I had several. Not all of them were perfect, but each was perfect for me. They made a difference for lots of kids, and for me, they made all the difference.

I was never an easy kid to teach. I was called precocious, which I think was a nice way of saying “pain in the ass.” School was boring and sitting still was impossible. I never got impressive grades, but would test well. If a subject captivated me, I would devour everything I could find about it, but this happened far too infrequently for most teachers.

Except for the few. Each of them found a way to keep me engaged, to expose the fascinating detail of a subject, or bring meaning and relevance to it. Science became a study of the way things work, rather than just facts and formulae. History showed stories of struggle and redemption, rather than just dates and names. Math became shape and motion, rather than anonymous patterns to manipulate with set procedures.

Teachers are not interchangeable parts of a machine. But then again, neither are kids.