> I wish more CS curricula would start with digital logic and stay there for a little longer before going into the full stored-program computer. That used to be the norm.
I remember sneaking[1] into a few of those courses during university. Loved them.
The problem is that most computer science students viewed them as useless. They wanted to take, what they thought of as, useful courses. If it wasn't C++, it wasn't useful. Even the computer science students who were interested in pure math, these were computer science courses after all and the university offered a separate software engineering degree, didn't see them as useful.
A slight tangent: one of the courses I had the most fun wasn't even a computer science course. It was a philosophy course that spent a lot of time on computability. Cramming a bunch of genuinely interested social sciences students into the same room as a bunch of genuinely interested computer science students made for an absolutely amazing course. In contrast, the computer science department version of the course was populated by a majority of students who were only interested in the mandatory credit. It made for an astoundingly terrible course.
(These thoughts are from the perspective of a mid-1990's physics graduate.)
[1] Sneaking may not be the right term here. People in the department knew that I was doing this, to the point where I managed to get access to department computers and even managed to take a course for credit, with special permission from the professor and without the prerequisites, but the administration certainly didn't know about it since I didn't even bother with the official "auditing a course" route.