But instead of being wildly popular, it was easily the most-unloved portion of an otherwise well-received course. I have talked to colleagues in other engineering departments here and elsewhere, and the lack of programming skills seems to be a pervasive phenomenon, independent of the rank of the university.
It has indeed become a national epidemic, or maybe perhaps, even a global pandemic.
To me, this seemed unexplainable, at first. Kids these days are exposed to computers and other programmable gadgets at such an early age. They are comfortable with them. How then, could their ability to squeeze performance out of these devices be so poor?
One thing I realized gradually, was that electronic equipment and computers have become extraordinarily complex. When I was first exposed to computers, it was easy and fascinating to poke "under the hood", and tweak things. This was true of other electronic equipment like radios, TVs and VCRs
As Feynman puts it (via this amazing blog):
Radio circuits were much easier to understand in those days because everything was out in the open. After you took the set apart (it was a big problem to find the right screws), you could see this was a resistor, that’s a condenser, here’s a this, there’s a that; they were all labeled. And if wax had been dripping from the condenser, it was too hot and you could tell that the condenser was burned out. If there was charcoal on one of the resistors you knew where the trouble was. Or, if you couldn’t tell what was the matter by looking at it, you’d test it with your voltmeter and see whether voltage was coming through. The sets were simple, the circuits were not complicated. The voltage on the grids was always about one and a half or two volts and the voltages on the plates were one hundred or two hundred, DC. So it wasn’t hard for me to fix a radio by understanding what was going on inside, noticing that something wasn’t working right, and fixing it.And as a commentator on the same posting wrote:
The problem, I think, is much wider and deeper than just for physics. Philosopher Stephen Clarke has argued that we are currently in a unique transition point in the history of technology: From a time when most people could understand (or could quickly learn) how most technologies they encountered in their everday life worked, to a time when almost no ordinary person can understand how any everday technology works.I will blog more about this topic in the near future, but if you have any ideas and suggestions to make programming "cool" do let me know.