The idea that workers who don't join the union are moochers is nonsense. If the union negotiates a contract that covers non-union workers that's their fault. On the other hand, unions create a scarcity of high paid union labor thereby artificially creating an excess of low paid non-union labor. So in fact unions are not helping non-union workers. Not joining the union is not mooching. Further, there is no reason to believe that improvements in working conditions would not have happened without the unions.