It seems to me that the H1-B was more a response to young Americans not entering various fields than the other way around. In machining, for example, companies all over the country from automotive to aerospace to medical to mom and pop machine shops are having trouble finding skilled workers. As many as 50-70% of respondents in major industry surveys are saying that a skilled worker shortage is a major problem for growth and expansion. [1]
A shortage of talent isn't just a problem in the software industry, it's becoming endemic to engineering. For example, there are a few dozen electrical engineering consultants that do most of the hardware work for many of SV's startups (including ones such as SpaceX) and I've heard stats (that I don't have official data for on hand) like Mexico City universities are graduating more mechE's than the entirety of the US and anecdotally, it's becoming very difficult to find talented hardware engineer in any industry (most of the non-software startups I know of are 25-50% immigrants).
The H1-B Visas are critical for experienced and knowledgeable workers and if you artificially limit the supply (which is already the case), you have cases such as foreigners coming to the US, getting their BS/MS/PhD, just to be kicked out of the country a month later. Meanwhile, employers can't get the skilled workers that they need. IBM's abuse of the H1-B is kind of irrelevant, as they're not even in the top 10 of H1-B employers [2]
[1] http://www.themanufacturinginstitute.org/Research/Skills-Gap...
[2] http://www.foreignlaborcert.doleta.gov/pdf/prevailing_wage_d...