Code that 'works' is treated as though it is holy because hardly anybody is around that worked on it originally and touching it is inviting disaster, because the comments are non-existent.
In the 80s there were plenty of companies that made a substantial living out of selling system development courses, where you were taught how to do it 'properly'.
This led to 12 lines of comments for every line of code, 100's of file folders full of ascii art that never were looked at.
The pendulum for some reason never seems to stop in the middle.
So we had java and pascal for various first year courses... I wish they had just gone straight to Scheme - it would have been mind-altering and a lot of fun.
They did have one course which was heavily project based which is the one I remember clearly - write a toy compiler, add a feature to a minix like OS, spellchecker with compressed dictionary etc.