No doubt the earliest pioneers of computer science, emerging from the (relatively) primitive cave of electrical engineering, stridently believed that all future computer scientists would need to command a deep understanding of semiconductors, binary arithmetic, and microprocessor design to understand software.
This is disappointing, although not unexpected. Computer scientists, in general, are tragically bad at the history of their own field, although all of science is like that and it is not specific to computer science. Compare Alan Turing, who wrote in 1945, before there was any actual computer to program:
This process of constructing instruction tables should be very fascinating. There need be no real danger of it ever becoming a drudge, for any processes that are quite mechanical may be turned over to the machine itself.
That is, the earliest pioneers of computer science thought about automating programming tasks, before any of actual programming. As far as I know zero actual pioneers of computer science believed programmers would need to understand hardware design to understand software. It would be especially unlike for Alan Turing, since the big deal about Turing machine was that universal Turing machine can be built such that underlying computing substrate can be ignored. Misconceptions like this seem specific to people like Matt Welsh who came after the field was born and didn’t bother to study the history of how the field was born.
This is disappointing, although not unexpected. Computer scientists, in general, are tragically bad at the history of their own field, although all of science is like that and it is not specific to computer science. Compare Alan Turing, who wrote in 1945, before there was any actual computer to program:
That is, the earliest pioneers of computer science thought about automating programming tasks, before any of actual programming. As far as I know zero actual pioneers of computer science believed programmers would need to understand hardware design to understand software. It would be especially unlike for Alan Turing, since the big deal about Turing machine was that universal Turing machine can be built such that underlying computing substrate can be ignored. Misconceptions like this seem specific to people like Matt Welsh who came after the field was born and didn’t bother to study the history of how the field was born.