A lot of people have this terrible notion of what a union is, where they force you to do things and set wages and work hours. But I suspect a union for programmers would look more like the Actors union or screenwriters union in Hollywood. They would negotiate minimum rates and benefits, but top performers would still be able to get significantly more. The union just sets the minimums.
Is it possible to take a page from the "YC Standard Deal" model and create a "Union Standard Deal" for tech workers, that offers an opinionated and non-comprehensive view of the basic necessities that any tech worker union should demand? Tech is known for shooting the moon, but if we can stand up opinionated examples of "minimum viable bargains", maybe that would help everyone grasp what's being proposed, and contras…
So it would need to be similar. A single programmers union that sets minimums, where union members won't work for companies that don't follow the union rules.
So like in Hollywood a tiny production will not follow union rules but are limited to using up-and-coming actors who aren't in the union. Startups would be similar -- they could hire up-and-comers, or agree to follow the union rules, one of which is not hiring anyone not in the union.