Comment Do CS teachers need to know CS (Score 1) 168
The question begs, do heart surgeons need to know and understand cardio vascular systems, do auto mechanics need to know and understand internal combustion theory and practice and on it goes. Just imagine your heart surgeon in a class being taught by a prof using a script.
Business software development depends upon knowledgeable software developers. It's not only the understanding of how the computer works at the bare metal level it's also about having the capability to understand how people/users requirements are met by following strong GUI and application architecture principles. Too
often I have been on a web site that is not congruent with how people expect a software application to respond to their needs.
I cut my programming teeth on an IBM 360/30 "mainframe circa 1970". (yes I'm an older guy - 74). A very small system with a max of 64K RAM. I taught myself assembly language. In those days your code had to be very efficient and tight and assembler was good at providing that capability. You really needed to understand how the hardware operated. Thankfully, IBM provided excellent programming and hardware manuals which I studied intently to understand how the computer worked so I could make effective use of limited hardware resources.
So yes programmers do need to understand the hardware/operating system basic functions and capabilities.