A lot of us keen programmers had just learned our way ourselves, and had very little exposure to existing research on things like data structures (a binary tree is nice!), algorithms (bubble sort is not!) or software engineering practices (yes, you really need a version control system and some automated testing!)
So, software engineering classes could give a lot. I remember how clever I felt as a starting freshman, and how humble I had got in about three years' time when my professor took me through the Compilers class. A lot of education and classes is not really teaching you to know things, it's just to teach you to know how much there is to learn.
I invented bubble sort, independently, as a young self-taught programmer. I remember thinking "Okay, I have a very large list, and I need to sort based on whichever parameter they picked... let's see, how can I accomplish this without running out of memory."
When I learned that sorting was a hot topic in computer science, I remember feeling a little sheepish. When I learned my algorithm was old hat, I felt more sheepish. When I learned it was relatively crap.... Yikes.
(FWIW, I started programming on a ZX Spectrum).
If you were already a keen programmer, what would software engineering classes in the 80s have given you?
> to the chagrin of his parents, who saw a better future in his hardware expertise.
Perhaps rightly so, he could have invented mobile telephony for instance :)