It's amazing that someone with virtually no life experience (12 years in grade school?) has to make this huge life decision on what they want to go to school for. Do they want to be an artist, maybe an engineer? They then get thousands of dollars in loans to go pursue it.
It's probably the second biggest monetary investment in their life (if they buy a house), but probably the least educated investment.
Now, some people get amazing help in high school while making this decision. They have extremely intelligent parents, a very supportive school counselor/teachers etc.
But a lot, and I know this from experience have zero help. I know today that if i'm going to invest a hundred thousand dollars in a college education I should probably try to know what the market 5+ years from now will be (good luck with that) maybe I should know what the ROI is on that degree... maybe I should know how competitive the labor market is/will be.
When i was 18 graduating from school I had zero help with this process. Zero. I was told "pursue what you love". How do you expect an (average) 18 year old to make this evaluation?
In my perfect world, we would increase business taxes to pay for higher education, those taxes would then be given directly to programs. Programming industry needs more programmers? easy give more money to computer science education. Students of course will still apply to programs they're most interested in, but in a competitive industry they'll get rejected BEFORE they make the major investment. If it takes a congressional act to change industry taxes, you can be assured someone is going to do some studies on how much each program will need. It's better to have a professional do that, than to hope the student maybe looks into it.
Finally how many jobs ask for a bachelors that just don't need it? If you start asking companies to pay for that education, they might make a better evaluation if its necessary.
Things just get more efficient, perhaps less "fair", but I don't life crippling debt is fair either.