My idea on the whole issue is different and I am even willing to take the companies at their word. So:
1. The companies always claim that they can't find people who can do the work or can't train them in time so they have to bring in foreign workers.
2. This tells us two things. The first is that these are some very highly specialized skills that apparently no one in a country of about 320 million has. Also it tells us that these skills are extremely critical for the company more so than even the skills of those at the CxO level since they don't have time to train someone, yet companies can go without a permanent CEO for quite some time.
3. The H-1B is a temporary worked program not a permanent worker program.
So my proposal is that companies can bring in H-1Bs provided that they are the highest compensated individuals at the company they work for and that they are the highest compensated person at the company they are doing work for. This means total compensation including, base pay, stock options, vacation, expense accounts, medical, relocation, company travel, etc. For huge companies they can afford this since they are huge, but even for small companies who need one person for one job one time it would still be possible to get the one person as they are a small company and typically don't have huge payroll anyway. Make this change and we will see just how critical H-1Bs are. I have no doubt that there are cases where there is an actual need but like everyone else around here I see the abuse of the system.
I frequently write my worker hating congress critters but my war hawk Representative, John Kline, who never responds to messages on this topic same with Senator Al Franken. My other Senator Amy Klobuchar actually seems actively hostile towards skilled labor as she has been one of the main supporters of expanding or removing the existing H-1B caps.