I don't buy the overall argument here.

Anti-immigration people say that instead of letting foreigners take these jobs, we should train more Americans to be programmers.

I don't think most people who oppose the disingenuous invocation of "talent shortage" (while discriminating against women, minorities, and programmers over 40) by tech executives are "anti-immigration people". Immigration, at a reasonable rate, is a good thing.

What the anti-immigration people don't understand is that there is a huge variation in ability between competent programmers and exceptional ones

I hate being That Guy, but... [citation needed]. I don't exactly know who these anti-immigration people are, though.

So they claim it's because they want to drive down salaries. But if you talk to startups, you find practically every one over a certain size has gone through legal contortions to get programmers into the the US, where they then paid them the same as they'd have paid an American.

I don't think that it's just about driving down salaries. I think it's also about age discrimination (enabled by the ready availability of young programmers) and implicit expectations of obedience. In the US, you get talent or obedience but rarely both. Overseas, you have at least a chance of getting both (but if you're hiring on the cheap, the hit rate for talent is pretty low).

He said "We'd hire 30 tomorrow morning." And this is one of the hot startups that always win recruiting battles. It's the same all over Silicon Valley. Startups are that constrained for talent.

And yet they only want to hire pedigreed men under 40 who live in California... Somehow, I don't buy it. If you want more talent, raise wages. That's how economics works.

Exceptional performance implies immigration. A country with only a few percent of the world's population will be exceptional in some field only if there are a lot of immigrants working in it.

We're still the 3rd-largest country by population, and have some of the best land, and speak the dominant language...

Still, I take no issue with what the H1-B program is supposed to be: high-talent immigration. I'm for that. But a true high-talent immigration would have, by definition, to be employer-independent, meaning that once you're in, you're in and can move about the economy just as easily as anyone else.

One of the problems with the H1-B program is that it makes it hard for visa-holders to change jobs, and leaves them beholden to their employers because they can be deported if they're fired. If we're going to have a high-talent immigration program, we should have one... but that requires an unconditional "once you're in, you're in" policy, not some subordinate/contingent status.

Technology gives the best programmers huge leverage

I still haven't seen it. Upper-middle income is a nice improvement, but none of the people buying houses in Palo Alto or Mountain View are programmers. They're all VCs and product executives working 11-to-3 while the engineers do all the heavy lifting.

We have the potential to ensure that the US remains a technology superpower just by letting in a few thousand great programmers a year.

Why not just kill off the bro culture and the age discrimination? If we only need a few thousand more great programmers, then just making the industry more hospitable to women should do the job, right? If that's all we need, there's no reason we need our tech CEOs to lie to politicians about a "talent shortage" in order to get immigration policies changed.

Again, I have no problem with high-talent immigration. I think that we absolutely should allow more upper-tier technical people (if at a level where they'll create more jobs than they take, and top programmers are at that level) into the country. But I don't think that the H1-B program, as it is structured, does the right thing. Once someone has it, it should be employer-independent.