It was there to fill a claimed temporary shortage, but it had the inevitable result of driving down wages and thus reducing people training to enter the field. It should have been killed a long time ago, there are other visa categories that can be matched for skilled labour.
The H1b has some benefits for US employers, particularly it locks the employee in, they can't switch to a better job, Zuckerberg loves them, his slave army, but it gives H1Bs an advantage even for the same pay grade.
Plus at the end, they leave, fully trained, and ready to work at your offshore division for a wage lower than the US and above the local wage, thus exporting the job and the skills.
You are correct, but you are pointing out ONLY the obvious or the bad part of the program. The program itself benefit employment market. However, the major reason why this program becomes bad (in many tech people) is because corporations have found a way to abuse the program and have been doing it.
One of the program intention is to lower the wages to where it should be, and it works as intended. The program drives down wages because many younger Americans nowadays believe that they are worth a lot more than they are, which becomes more and more unrealistic. Thus, the wages are forced to be down to where it should be. Besides, the program is NOT supposed to be mainly used by corporations but rather by any companies that can't find suitable employees. However, corporations are using this as the way to cut their budget. As a results, they no longer need "expert" in the field, who can be up and running from the beginning, but rather want only "good enough" employees that accept lower level wages and can marginally work at the work level (which soon either develop skills or being fired from failing to develop skills). Therefore, those who are experienced in the field feel that the wages are lower than it should because these people aren't hired by big companies (for better paid).
Another type of abusing the program is from "head hunter" companies. There are companies that offer to find people as consultants to their client, but those who are being sent to work are actually NOT qualified for the job. These people are trained just for the job interview, so they look like they are qualified. The head hunter companies act as the middle man. In other words, the clients pay big money (as experienced consultants) to the head hunter companies. The head hunter companies, in turn, pay "entry level" wages to their people. This abuse hurts people who are expert in the field because they can't compete with head hunter companies' offering wages.
There ARE people who legitimately use the program as well. Looking at statistic -- http://www.myvisajobs.com/Repo... -- which is from last year, should give some senses of what is going on. From what I am seeing, the 1st one (InfoSys) has a mixed bag of abuse and legitimate employees. The 2nd & 3rd (Tata and Wipro) seem to be abusing the program (a legitimate consulting company should be paying consultants much higher than the entry level wages). The 4th place (IBM) pays "about right" wage but they nowadays do not sponsor green card program (as far as I know).
Overall, the program has its purposes and benefits, and it is working as intended. The problem is how companies/corporations abuse the program. Please stop bashing that the program is bad. Go after those abusers and restricted the program instead of take it an easy way out -- shut it down. Remember that everything could affect both legitimate people and abusers. Pull yourself out of a side and look at the issue before saying.
PS: H1B DO NOT lock an employee in with the current employer. The H1B holders can switch job to another employer as long as the new employer is willing to sponsor their H1B. The word "better" is subjective and irrelevant. How could one say that I am an expert if the one has been working for a couple years? Sadly, this is a new idea of how younger people think nowadays...