The student unions shot themselves in the foot by politicising their positions. If they just provided services, it wouldn't have gotten to the point of VSU. They got too caught up in political activism though, so it was only a matter of time before the politicians they protest against fought back.
I'd say the best thing would be to reintroduce compulsory unionism in a different form, perhaps have the unis audit their unions to make sure money is being spent on services, not politics, and allow fees to be paid over time rather than up front.