I think it's a fundamental divide between people who see degrees as a way to expand your knowledge and people who see degrees as a fast track to getting a better job. Somewhere in the middle is the ultimate spot for an educational institution to be. For example, MIT has somewhat recently started a class on "hacker tools" (https://missing.csail.mit.edu/) with stuff like shell scripting, Vim, Git, debuggers, and general computer knowledge.
The trouble is that the tooling du jour gets out of date quickly. People who know how to use Eclipse, Java, and Subversion because that's what they used in school might not have the skills to pick up the tooling used in another company (say VS Code, JavaScript, and Git). The foundation of CS knowledge is changed much more slowly.
School should encourage the curiosity to learn on one's own and provide resources to help. It should also provide a framework to be taught things that will last beyond the end of the degree. They need to do a better job of instilling curiosity, but they shouldn't go all the way to the other side and become vocational training.
The trouble is that the tooling du jour gets out of date quickly. People who know how to use Eclipse, Java, and Subversion because that's what they used in school might not have the skills to pick up the tooling used in another company (say VS Code, JavaScript, and Git). The foundation of CS knowledge is changed much more slowly.
School should encourage the curiosity to learn on one's own and provide resources to help. It should also provide a framework to be taught things that will last beyond the end of the degree. They need to do a better job of instilling curiosity, but they shouldn't go all the way to the other side and become vocational training.