that said, it will be a cold day in hell when the US legal system opens up to international competition, and the imbalance itself is destructive. If my goal were to use government policy to discourage americans from engineering/science and encourage them to study law or medicine, I would probably design something very similar to what we have now. The US government goes out of its way to insulate lawyers from competition from overseas. It goes out of its way to subject us-based engineers to increased job competition from overseas.
So we have our young people more interested in law than engineering. Why do our wise policy makers scratch their heads about this? They created this situation.
But I'm not advocating special protections for US based software developers. I just think that the US government has gone out of it's way to specifically expose US scientists and engineers (and related high tech occupations) to foreign competition. I'd be satisfied if the US government simply stopped doing active harm to this profession and treated it like any other unregulated profession (ie., immigrants are free to go into it as they are free to go into any other profession - but no special visas for this specific field).
Actually, I'm not even completely opposed to some specific targeting of high tech. Because high tech tends to be a wealth generating field, it might make sense to target tech workers. Like I said earlier, I would support a moderate number of visas under terms that preserve the freedom and mobility of the engineer (ie., no indentured servitude).
But what we have right now - ie., hundreds of thousands of visas under indentured conditions with almost no enforcement of the paltry protections that are there? It goes way too far, and ends up a creating a deterrence for US students who might have otherwise gone into engineering.
I also think that this threatens the long-term viability of high tech in the US. We do need a healthy flow of our own citizens (and by this, I mean people who grew up in the US and came through our educational system) into high tech occupations. Otherwise, we will, guaranteed, one day lose our high tech industry in this country.
So I'd say - yes, supplement our work force with judicious use of visas, but also be very careful to ensure that we are not bringing in so much competition that US citizens are deterred.
I'd say between 50-60K visas a year would be fine. I'd also point out that there probably aren't that many talented foreign nationals out there every year - much of the overflow is really just a way to drive labor costs down in run-of-the-mill crap programming jobs (which is why most of these visas go to foreign outsourcing firms, not highly innovative positions at google or microsoft).