State funded degrees are problematic because most degrees are not useful. Why should someone who left school at 16 have to pay for you to spend three years partying before being given a degree that won't be relevant to your job applications?
Privately funded degrees are problematic as they make it harder for people to get an education, even when they want to study for a useful degree.
The UK system, in which you pay but are given a government loan to cover the costs, which you pay back in the form of an additional income tax, is in theory optimal.
The problem is that the UK has capped tuition fees far too low; indeed, the amount of money many departments earn from tuition fees is lower than the amount it takes to teach their students, let alone to conduct research.
The argument against raising the cap is of course that it would be harder on the graduates, particularly those who don't get high income jobs after graduating.
My proposal is two-fold:
1) Raise the cap and allow it to vary yearly to account for inflation and teaching and research expenditures. This will remove the deficit many university departments run on when trying to be at the forefront of scientific and technological research as well as teaching the next generation.
2) Introduce a debt forgiveness scheme tied to how effectively the degree is used. For example, imagine this: you are a doctor with a medical degree. You could choose to work for the NHS, or to get a much higher paying job working (with some additional training) as a cosmetic surgeon.
If you choose the NHS job, your entire repayment will pause and a part (10%, for example) of your debt will be forgiven every year that you work there. So, if you work there for ten years, you will have your entire debt forgiven without having had to pay back a single penny.
If you choose the cosmetic job, you will have to repay the entire thing, through the current mechanism of treating it as an additional income tax.
This system could be applied to all jobs that require degrees; an algorithm would decide, from two parameters: how useful the job is to society and how much less you would be earning than if you chose the least useful but best paying job requiring the same qualification, how much to deduct (and up to what cap) from your debt for every year employed in that job.
I'm aware that this risks being politicised as people disagree over what constitutes a useful job; the algorithm could be debated and publicly discussed, with the entire code and all contained equations visible to the public. The risks of politicisation are something that would need to be addressed, but the purpose of this post is to suggest the mechanism itself, accepting that details such as how it can be rendered immune from politics will need to be worked through in future.
This would allow universities to charge as much as they need to, while also allowing people who want to actually use a degree to do so without excessive debt overhead and disincentivising university attendance as an excuse to delay adulthood for a few years before getting a job that doesn't require the degree.