Unions force two things:
- Members to use the unions for negoitation
- Higher cost of having employees.
Both things are bad for me as a developer. Programming, like other 'white collar' professions, is as much about the person as it is about the discipline. You can send two people to identical schools, learning identical things, and performing the same task, but you will have two different outcomes. Unions treat every 'worker' as interchangeable; and bargain as if they are all interchangable.
They are not. Without a union, I have the opportunity to negotiate my own wage and my own benefits. If I want to work for lower pay but get more vacation, I have that option.
Secondly, Unions traditionally want what anyone else in power wants: More. They want more money for their workers, more vacation, more benefits. This is a problem when they ask for too much and send the business into a tailspin (see: US Auto Industry; the current union debates in Wisconsin).
Unions are not good for business, and without business we would not have jobs.