> Industry should not require University-level training from workers.
> Plumber or electrician don't need university degree, only professional training [...]
Oh come on, this is ridiculous.
Sure you might be able to do good programming without a college degree.
The typical student? I give them very little chance.
Here's what I think you would see:
* Students trapped in small skill-set jobs, struggling to branch out.
* Poor ability to manage complexity. The larger the system, the worse an ad-hoc job is going to be.
* Lack of awareness of how much tools can help. "Make impossible states not representable?" Write a DSL with a type system so another department stops making so many errors?
* Even more incompetence. Had to learn to recognize an O(N^2) algorithm on the job, but you didn't even know what asymptotic complexity was? People are going to end up believing ridiculous cargo cult things like "two nested loops = slow".
* Less rigorous thinking. Do you think they're even going to be able to pick up recursion? Have you watched a beginner try to understand something like mergesort or quicksort? Imagine that they never had a class where they programmed recursively. Is depth first search taught on the job? Sure, but... how deeply.
* Even less innovation. Who is going to be making the decisions about how to manage state? Would you ever see ideas like Effect?
I'm not saying that a university education is a cure-all, or that it is essential to the jobs that many of us do. I AM saying that if you look at the level of complexity of the work we do, it's obvious (to me) that there is something to study and something to gain from the study.