Outsourcing is the problem and you are called racist or xenophobic if you even mention it. Unions have nothing to do with it, they would only exasperate the speed of the transfer of knowledge and jobs to lesser developed countries with lower cost labor.
The government needs to break up these oligopolies who have more money than the government itself. That money is spent on people who have no idea what is going on in the tech world, they just listen to the lobbyists, accept their checks and investment returns. They couldn't care less about the long term effects.
Not what I meant, more about the idea that they have their own loyalties to family, local businesses, growth of their own businesses if they leave (which they will start in their area), that type of thing. Not a slight on work ethic or generalization of actual people.
Hopefully that makes that more clear.