When I was in middle school there was nothing I wanted more in the entire world than to learn how to program my own computer games. So, armed with Foundations of Mac Programming, I spent weeks chugging along sporadically, doing my best to understand the concepts. Ultimately, I gave up. And I don't regret it one bit.
Coding was too hard for me, and I wasn't nearly patient enough to focus on the thick text. But I'm not alone in thinking that the everyone needs to learn how to code movement is an absolute sham. In fact, computer geeks have known this hard truth since back when computers were often bigger than sofas, and not knowing how to code meant that you pretty much didn't know how to use one at all.
In 1965 a computer scientist at the RAND Corporation by the name of Willis H. Ware wrote a paper titled, "Future Computer Technology and Its Impact." It's a fascinating document that covers a wide range of predictions for what computers would be capable of in the 1970s and '80s. But what stuck out to me in the paper was that not needing to learn how to program was the promise of the future.
We all know, however, that the computer is more than a piece of hardware; it has to be programmed. Historically computer programming has been expensive and time consuming, but we expect the future to be different. Cheap hardware will enable us to consume vast amounts of computational power to make a machine convenient and attractive to a user. Furthermore, with the current or near future state of computing knowledge, we can frame languages including appropriate symbols and syntax which are completely natural to a novice user and to a user trained in any professional specialty. We can design a tool for a given individual from the ground up; a tool to match his normal training and way of thinking.
For example, most automobile drivers don't bother to understand the details of the engine under the hood, or even how the automatic transmission works — such knowledge wouldn't help them to drive better. Similarly, the computer user of the future will not be able to perceive the inner details of the machine, nor would it help him if he could. Communication with a machine is becoming that easy. The new class of users will no more have to be programmers of the traditional kind than an auto driver has to be a mechanic to handle his car.
My aversion to coding is not a defense of ignorance. No one should be proud that they don't know a particular skill. People who want to learn how to code should be encouraged (and given the resources) to do so! It just seems to me that this modern tech-world obsession with coding—above any other skill that the modern computer enables—seems to miss the point of modern computing in the first place.