I think people should have a choice whether or not to join a union and if the unions are such wonderful things, they will endure.
Unions bargain on behalf of everybody, not just the people who pay the dues. There are people who want the benefit of the union, but aren't willing to contribute to it. If too many people adopt this mindset, then the union falls apart and the benefits are lost. How successful would negotiations be between adminstration and people demanding better conditions/pay/benefits if there are only a handful of them asking for it. They'll just fire the people making the demands and hire new people. The strength comes in the numbers.
If it could be structured that those who pay union dues get the union benefits, and those who choose not to join the union don't get the union benefits, that would be fair IMO, but that isn't how it works. I bet unions enrollment would be higher if paying dues meant you got a raise and more benefits, but failure to pay meant those where stripped away.
Plus, places with unions also raise the standards for non-union employers in the same job sector. The non-union employers have to keep wages and benefits up to be competitive with the union places of employment. So non-union people at a different place of employment even benefit from the work of the unions.
Kinda like the whole "rising tide lifts all boats" thing.
The elimination of unions opens the door for corporations to be even less altruistic. The corporation doesn't care about its employees, especially when it depends on low-skill labor that is easily replaced.
But, unions can be a pain too... Union greed vs. corporate greed. Which is better?
