I may have been lucky, but I don't recognize this statement when I think of my own CS curriculum: The vast majority of what a programmer does, forming good abstractions and avoiding complexity, is almost completely untouched by computer science curriculums. That's the majority of what my CS degree covered, in several different programming paradigms. Even the idea that there are "programming paradigms" is something I…
I probably covered more on networking than algorithms. I only did 2 papers on algorithms at university, as well as AI, which covered some more algorithms. I did 2 papers on networking, a paper on computer security, and a paper on web development, and implemented an http client for Operating Systems.
There were some other math and logic-related courses with some proofs and such, but almost all of that was backed by writing software projects. I didn't write many papers in my computer science classes, but I did a lot of projects, both individually and in groups.
It's interesting to read how different other people's university experiences were.