Amen. I was in the high tech industry for years. In the beginning, most co-workers had engineering credentials. Then, starting in the late 80's, I started seeing more workers with BA's in programming degrees- useless. Their knowledge was English, French and Fortran (or Cobol).
A few years later, the industry was awash in MBA degrees - how to tell the engineers what to do.
The H1B workers were really engineers. Not many Americans, except for the Asian-Americans, go for engineering degrees. If we can't educate more engineers, then we do need the H1B workers.
Drop the H1B programs, and engineering salaries will rise, thus attracting more Americans to study the field.
As long as thousands of foreigners are allowed to come in and do the work, there is little incentive for Americans to invest the time and energy required for an engineering degree. If an engineer is only going to make 10% more than a business major, why study hard when you can party your tail off in college and get an easier major?