programmers aren't smart enough to unionize
What would a union require of management that would make an unacceptable programming job acceptable?
Would you enjoy the work if only the boss didn't demand you work Saturdays? You would not.
Would the union be able to get rid of the office fool who screws up your otherwise beautiful code while convincing the boss its your fault? It would not. That's not what unions do.
Would you be paid more? Programmers who are any good are in high demand. If your boss isn't paying you fairly, find the next job. If no one is willing to pay you more despite the high demand for talented programmers and you're not willing to start your own business and take on the risks yourself then you're already paid what's fair for your level of talent and the level of risk you're willing to accept.
Unions are for folks whose labor is trivially replaceable. Work that most anybody can be "trained" to do. Programmers are artists. Instinct is not trainable and talented programmers are not easy to hire. Managers who think otherwise don't last long as managers of software development projects.