Is programming this era's equivalent of fixing a car or is it more fundamental to the future of a wide array of work?
Over the past few days I started by making the statement that casual coders were a great phenomenon, then looked at kids/beginners, people who don't program but program for a living and finally the changes in the working programmer's daily life.
But this morning I remembered a recent conversation with a friend over coding bootcamps where he was asking where all of the sudden we started thinking that "everyone should code" was actually a worthwhile pursuit. His argument was that this was similar to claiming "everyone should be able to repair their own car" which seems like a silly idea on the face of it given how few people even know how cars work, let alone how to fix them. In thinking a little more deeply about it, the notion that people should have a basic understanding of how an engine (or motor) creates kinetic energy that can be put to good use is not a terrible idea. Ergo why physics is a required part of the high school curriculum.
But in my view, software is even more important in the role that it will continue to play in the world for many decades to come. Even long after computers are writing 98% of the software we depend on, a basic understanding of how procedural logic solves a problem will keep people in an important part of the hierarchy.
I've been reading John Markoff's excellent Machines of Loving Grace, a super interesting history of the difference in philosophy between the AI researches and the IA ("Intelligence Augmentation") ones over the past few decades. Throughout the book Markoff makes the claim that people who create tools shape these tools with their own values. To that end, software may end up being a much more pliable tool to imbue with values than the engine, the airplane, or even the written word itself.
This feels like the real reason why we should be glorifying the mechanics of tomorrow.