Hacker News new | past | comments | ask | show | jobs | submit login
Let the Other 95% of Great Programmers In (paulgraham.com)
434 points by gpoort on Dec 26, 2014 | hide | past | favorite | 632 comments

All: much of this thread is of low quality, below the standard that Hacker News discussion should adhere to, because it doesn't engage with what pg's essay actually says. It merely uses it as a trigger point for passions about other things, like H1Bs and Infosys. In other words it goes on a generic tangent, and generic tangents are the vectors we most need to avoid if we want discussions that are substantive instead of a handful of always-the-sames.

When I see cases like this, I've been asking: would the Principle of Charity [1] have helped here? The answer is usually yes. In this case, the idea of pg lobbying to flood the market with cheap programming labor is not only demonstrably wrong from the article (which talks about a much smaller order of magnitude and endorses lowering H1B-style quotas), it fails a laugh test for anyone familiar with his arguments in general.

The essay may be wrong, impractical, or impolitic; if you want to criticize it, there are plenty of legit criticisms you could make, starting with: how are we to objectively evaluate who the great programmers are, when it has often been argued (including by a certain essayist) that this can't be measured?

But if you're going to dispute an article—any article—on Hacker News, you have a responsibility to engage with what it really says. The Principle of Charity is the best way I know of to formalize this requirement, and unless someone can make a case for any bad consequences of doing so, we're planning to add it officially to the HN Guidelines in the new year.

1. http://en.wikipedia.org/wiki/Principle_of_charity and http://philosophy.lander.edu/oriental/charity.html

I'm going to strongly disagree with you on one point here. If you use very inflammatory language, you need to accept a degree of responsibility it the discussion veers rapidly off topic.

PG chose to appy the phrase "anti-immigrant" to the people he disagrees with.

Keep in mind, there are people who support high levels of immigration (the US currently takes 1.2+ million immigrants a year), support a path to legalization for people already living here illegally, even support general skilled immigration. They simply don't see evidence for a specific shortage of high tech workers, and, as a result, oppose tinkering with the immigration system in a way designed to specifically increase the percentage of programmers who are immigrants. In my opinion, it's pretty appalling to call people like this "anti-immigrant". They should bristle at the accusation.

Also - the principle of charity is important, but you've got to admit that calling someone "anti-immigrant" is a serious accusation, kind of a smear.

I'm unable to edit the above remark, so I'll have to leave a new comment.

After re-reading the original post, I am obliged to point out that PG does not use the phrase "anti-immigrant" as I claimed, he uses the phrase "anti-immigration people." This was my mistake, and I apologize for the error. Calling someone "anti-immigrant" (directed at a person) is more serious than calling them "anti-immigration" (directed at a policy).

This doesn't change the core of my argument - I still feel the label "anti-immigration people" is an unfair one and harms the level of discourse. But I do want to be clear about this again - PG did not use the phrase "anti-immigrant".

What label would you have used instead?

please see my response to brandonhsiao below.

In his first paragraph:

American technology companies want the government to make immigration easier because they say they can't find enough programmers in the US. Anti-immigration people say that instead of letting foreigners take these jobs, we should train more Americans to be programmers. Who's right?

It sounds to me that the word anti-immigration is simply a word he chose to literally mean "people who disagree with the aforementioned party that we should make immigration easier." It means much the same thing throughout the essay. What word would you suggest instead?

I disagree with a number of things here.

First off, I don't think that I am obliged to come up with a good term as a condition for objecting to a bad term. In other words, I don't think I need to make a good suggestion as a condition for saying that "anti-immigration people" is a very poor choice of phrase.

I also think that your definition of the word anti-immigration isn't reasonable. There are so many ways to be in favor of immigration that don't involve specifically targeting programmers. I don't really agree that technology companies want to make immigration "easier" in some global sense. They want to be able to hire programmers from overseas (I tend to agree with PG that the "good" employers would be just as happy to hire free residents who can change jobs, though the "bad" employers clearly prefer the indentured nature of the visa and the control it gives them over the would-be immigrant). Regardless, tech companies don't necessarily want to make immigration easier for the millions of people living in the US illegally, or for people from traditionally underrepresented regions who have trouble getting a foothold because our system is based on family reunification.

This particular objection is an important one, because the very narrow definition of this phrase carries a whiff of the argument by ambiguity. You defend the term "anti-immigration people" one way (people who see no reason to specifically tinker with the immigration system to increase the percentage of immigrants who are programmers), but then you get to call them "anti-immigration people" knowing full well that you have brought a much broader (and unwarranted) accusation against them.

Why do you need a term or a label? Why not just explain the point of view that you disagree with (making a sincere effort to represent the argument at its strongest), and explain your disagreement?

As the people in question believe that the solution is to train more Americans to be programmers, there are a variety of terms that could be thought of: "pro-trainers," "pro-local labor," etc. Instead, the focus is on what their solution isn't.

I have to disagree. PG's essay was discussing immigration at a very broad level, and as such so are the comments in this thread. You seem to be asserting some definition of "what PG said" that isn't apparent in the essay itself.

The crux of PG's essay was this (taking from what is a sort of his thesis statement):

> American technology companies want the government to make immigration easier because they say they can't find enough programmers in the US... The technology companies are right.

He mentions things like how difficult it is to train programmers, and uses the word "great" in describing said programmers, but overall everything is backing up the blanket statement that "we need to allow more programmers to immigrate" without providing a discussion as to how that should be done.

As such, what you call "genetic tangents" are directly addressing the main point of the essay. H1Bs are the main method through which immigration occurs currently, and one would be remiss to have a macro discussion about immigration without mentioning the H1Bs.

I assume that there has been some sort of discussion or knowledge about PG's stance on the tech immigration, and perhaps even related to this thread, but I would argue that the fault of the imprecise nature of the discussion of this essay lies primarily with the essay itself.

He did say that he was referring to the most exceptional programmers, and that it would be a matter of "a few thousand " a year. That was quite clear to me on the first read that he was not talking about the H1B system.

The article itself is of low quality. Entire sections are based on flimsy assumptions or are just plain false. I'll list a few here:

"The US has less than 5% of the world's population. Which means if the qualities that make someone a great programmer are evenly distributed, 95% of great programmers are born outside the US."

A huge portion of the world can't even feed itself let alone educate itself to the high standard of an "exceptional programmer" [1]. If we're in the business of making flimsy assumptions then here's mine: I suspect that the US produces the same amount of "exceptional programmers" as the rest of the world combined.

"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." and "I asked the CEO of a startup with about 70 programmers how many more he'd hire if he could get all the great programmers he wanted. 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."

If you can't hire someone at your expected price then maybe you should raise it. Maybe the market price has gone higher than what you perceive it to be. That CEO could find his 30 "10x" engineers in a heartbeat if he offered 300-500k. Its not your god given right to be able to hire x number of employees for the price you hired your previous employees at.

[1] http://www.wfp.org/hunger/stats

In addition if you're going to claim an entire thread is of poor quality, back it up. And while you're looking for examples of poor quality, be sure to use http://en.wikipedia.org/wiki/Principle_of_charity

There are many opportunities to apply the Principle of Charity here. For example, that statement about populations can easily be interpreted to mean simply that great programmers can be born anywhere. That's pretty unobjectionable. (Imagine the kerfuffle if he had claimed anything but that.) And does the literal number "95%" substantively change the argument that there are many great programmers outside the U.S. and that U.S. is ill served by startups not being able to hire them? No it does not. Therefore, by the Principle of Charity, that is not the point we should focus on.

My interest in this thread is not about immigration. It's about how far too many Hacker News comments are uncharitable (in this specialized sense) and how that seems to go along with ill-spiritedness. It's time we all stepped up our game.

> And does the literal number "95%" substantively change the argument...

Given PG used that number in the article's title, and even in its URL, it does seem like it's worth debating. If the number was actually 50% as the parent suggests, then suddenly you have a very different argument.

The interpretations you've suggested go far beyond interpreting PG's argument in the strongest possible terms, running instead to interpreting it as a completely different argument. (Although I suppose that's not very charitable of me).

Obviously anything is unobjectionable if you agree beforehand to disregard any interpretation you could possibly find objectionable.

The interpretations I've suggested are simply the ones that occurred to me as I read the essay.

> If you can't hire someone at your expected price then maybe you should raise it. Maybe the market price has gone higher than what you perceive it to be. That CEO could find his 30 "10x" engineers in a heartbeat if he offered 300-500k. Its not your god given right to be able to hire x number of employees for the price you hired your previous employees at.

It's a zero-sum game. If company X hires all 30 of the best engineers currently looking for a job, company Y cannot. Company Y can offer more in an attempt to lure them, but then Company X will be SOL.

We're talking about macro issues here. We want as many companies as possible to succeed.

It's not a zero-sum game. Increased wages for engineers would encourage more people to become engineers.

Or to remain engineers, or to get BACK into engineering without taking a pay-cut. It would increase the supply of good engineers immediately. But I don't disagree with pg; I think we should hire all the greatest engineers in the world, except for the fact that we cannot identify them.

This. Wall Street is full of near-geniuses who would be doing something more productive if finance companies weren't the ones offering the biggest salaries.

In the long run. IIRC labor supply is a lagging indicator, so in the short run (e.g. 1-2 years) it would be a bit closer to a zero-sum game.

It feels like it's been zero-sum for a very long time.

"It's a zero-sum game. If company X hires all 30 of the best engineers currently looking for a job, company Y cannot. Company Y can offer more in an attempt to lure them, but then Company X will be SOL."

So what? Why is that a problem that needs to be solved?

I'd like to offer a minor correction. We want as many companies that provide positive value to the economy to succeed.

There is a positive (but not r=1) correlation to providing value to the economy and offering higher pay to employees. We (that is to say, software pros) don't want all companies to get as many software workers as they might want, because they wouldn't pay any one of us a decent middle-class wage.

It's not a zero-sum game, and it's not about supply and demand. It's about growth, and hitting a limit on the total wealth generated.

I just explained this here: https://news.ycombinator.com/item?id=8805475

Does the economy exist for society or does society exist for the economy ?

> We're talking about macro issues here. We want as many companies as possible to succeed.

This is a "society exists for the economy" answer to the question. The whole point of the economy is to decide division of resources. If that means you don't get any as a CEO, well then you should just get the same treatment as a person entering your store without money.

Congress is not talking about increasing elite programmer visas (those visas exist, require extraordinary support for the visa, ie. extraordinary pay or extraordinary credentials, so these people are not a problem IF you're willing to pay). They're talking about letting the Indian "consulting"(what they call it)/slavery(what every sane person calls it) do double or triple the amount of work they do now. WIPRO will be the main beneficiary of this.

I find it kind of hard to believe that companies actually complain about this. But from a perspective of "more money for me (NOW), not for you" it makes sense.

From a perspective of maximizing our countries opportunities I would argue it does not (by itself) make sense.

The assusption isn't false (at least not the one you point out) the main assumption to the article is "great programmers are born" this comes from the statement that you can you can reach component programmes but not exceptional ones. The thesis is not about "programmers" it is about "exceptional programmers. It is a fact that less than 5% of the population lives in the US. You have to assume the qualities that make a great programmer are fairly evenly distributed (even if that person never utilises his skill) this is not a thin out false assumption. If you want to attack an assumption, attack the one that says you can't teach great programmers

You are 110% spot on. I really don't like PG using his status to push these pie in the sky numbers to back up his buddies in the valley. We all know that the biggest cost tech companies have are there developers and they would love to put the squeeze on them.

Increasing the availability of any kind of labor (whether ordinary programmers, or "great" programmers) always lowers the price, and if it didn't lower the price, there would be no effect. The startups looking for great programmers could find them if they stole them from Google or Facebook for huge salaries.

The problem with this debate is neither side has the intellectual courage to state their side properly.

The protectionists latch on to the "indentured servitude" issue even though employers would want H-1Bs whether or not they could hold being fired and having to return home over the employees head (and I personally have never seen this happen, I assume it only occurs with the lower tier workers hired by contracting companies, if at all). Protectionists pretend that this is the mechanism through which H-1B's lower wages, even though the real effect is via increasing the supply.

Similarly people like pg say that the issue isn't wages, even though, as I mentioned, the issue can always be expressed in the supply curve of labor, and equilibrium wages.

> Increasing the availability of any kind of labor (whether ordinary programmers, or "great" programmers) always lowers the price, and if it didn't lower the price, there would be no effect.

It turns out that high-wage employees (e.g. software developers) actually benefit from high immigration because of the resulting increase in capital inflows.


Sure, my claims are actually consistent with this result. I was describing a partial equilibrium effect while the paper is describing a general equilibrium effect.

The "issue" in question is the marginal productivity of imported ICT labor. Your generalization about nominal wage effects holds only where an economy faces constant (or diminishing) returns to scale from immigration [1]. This essay argues exactly the opposite, that US government policy should compete to attract people who will increase economic returns to scale.

> ...it's easy to imagine cases where a great programmer might invent things worth 100x or even 1000x an average programmer's salary.

Moreover, there is evidence that even IT workers in identical, commoditized roles are sufficiently more productive in the US than than in India so as to justify an extra $75k per capita in client billings for they US-based workers [2]. PG's essay is not sufficiently described by a rudimentary labor supply curve as you claim.

[1] http://www2.hawaii.edu/~noy/362texts/immigration.pdf p.156, particularly footnote 8

[2] https://www.aeaweb.org/aea/2013conference/program/retrieve.p...

If the comment quality has eroded, is that because the standards are too lax (in which adding a new rule will theoretically fix it), or is it because of an Eternal September-type issue? If it's an Eternal September issue, then you have an enforcement problem: the upvote/downvote system is democratic, so the community would be unable to police itself against the new rule. The obvious solution would be to have people "more equal" than others, but then there's a possibility of groupthink forming and/or resentment against perceived "censorship." These are classic problems of Internet forum governance.

With all due respect to pg, one data point against the idea that it's just the standards being too lax is that this article was posted on Hacker News in the first place. The Hacker News guidelines state that most stories about politics are off-topic unless they are evidence of some interesting new phenomenon. I've never read tech news sites where the H1-B debate wasn't going on (I've been reading since 2001 or so), and based on the mountains of H1-B rhetoric I've read online, the arguments raised in the article are not new.

Strict moderation has managed to make a few subreddits decent to read, and I don't see much resentment there. Usually it's greatly appreciated. It wouldn't work if all subreddits were that way though, I could easily see some sort of resentment building up in that case.

Self-policing, in comparison, will always lead to eternal september above some threshold of user churn. That said, HN has weathered growth reasonably well. If nothing else, the median level of discourse on HN has not gotten much worse than it was years ago. But the mean level of discourse has probably gone down. Just my impressions, I have nothing to back this up of course.

If I had to point to a flaw in pg's argument is that the bay area is running into scaling limits in terms of housing and other things, and no way it could support the 19fold expansion of the programmer population in the bay that pg advocates.

If pg wants to grow his business, he can wait for the west coast democrats and republicans to scale up his town or he can make yco a global brand you may find in Idaho or Nigeria.

Judged on its merits, it is one of PGs poorer essays. And if written by nearly anyone else would have not made the front page or any comments. That there has been discussion on it all has been charitable.

With higher quality content you will see higher quality discussion. I do hope the lack of charity has shown Paul that his thinking, as demonstrated by his writing, on this topic is muddled.

> That there has been discussion on it all has been charitable.

Your use of the word "charitable" is different from what the principle of charity is about. I'm concerned with the latter. One good thing is that the principle applies regardless of whether or not somebody else is following it, so the excuse of but-the-other-person-started-it (even if they did start it) doesn't wash.

When people don't care to understand each other and try instead to cast the other's statements in the worst light, discussion becomes mediocre and foul. HN has a problem with this, and the principle of charity may be a tonic for it.

> how are we to objectively evaluate who the great programmers are, when it has often been argued (including by a certain essayist) that this can't be measured?

This isn't that hard. Let companies bid for H1-B slots. The more they are willing to pay, the better the programmer.

PG's essay was very high level and conceptual. To actually carry out any sort of policy like this, the realities of H1Bs and Infosys would have to be dealt with. You see them as generic tangents, I see them as counter arguments.

Additionally, many people are questioning the motives of PG. I think that's fine and people are free to respond or downvote. It's no different than people questioning the motives of Larry Ellison after an Oracle announcement. This is healthy.

The Principle of Charity is great, but limiting discussion to the subset of topics of an article severely hampers critical analysis. And I'm concerned that would be the effect of what you're advocating.

Why is it called the Principle of charity? From what I read, it means assuming the best possible interpretation of the argument. But is that "charity"? I would have called it something different.

I assume it comes from a secondary meaning of the word in English, "leniency in judging others", applied here to others' arguments.

The reason we're thinking it may be appropriate for HN, by the way, isn't moral, but intellectual: uncharitable interpretations of others' arguments is all too easy and makes discussion tedious and uncivil.

> But if you're going to dispute an article—any article—on Hacker News, you have a responsibility to engage with what it really says.

Let's look at what this post really states:

> The US has less than 5% of the world's population. Which means if the qualities that make someone a great programmer are evenly distributed, 95% of great programmers are born outside the US.

This is a huge if. Frankly, it is very difficult to make a strong, compelling policy argument on the back of a flimsy, lazy assumption. Yet it is crucial to Graham's position and used to support statements that aim to preemptively rebut arguments critics make ("It would be great if more Americans were trained as programmers, but no amount of training can flip a ratio as overwhelming as 95 to 5").

It is not Graham's responsibility to prove that the backbone of his argument - the 95 to 5 ratio - is reasonably accurate?

> The anti-immigration people have to invent some explanation to account for all the effort technology companies have expended trying to make immigration easier.

The reference to "anti-immigration people" is not only insulting, this statement pretends that those who are not swayed by the arguments of the tech lobby must be "anti-immigration." To the contrary, one can favor immigration reforms that would make it easier for individuals to come to the United States without naively accepting the validity of all arguments tech companies make in support of immigration reforms.

Is it not Graham's responsibility to explain in a compelling fashion why the tech companies Graham says are "right" are indeed right instead of brushing off anybody who doesn't agree as "anti-immigration"?

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

Even if one is charitable to Graham and is willing to assume that a) the United States is at risk of losing its status as a technology superpower and b) Graham's figure is plausible, he offers no substantive suggestions for how we identify those "few thousand great programmers" and attract them to the United States. In fact, as someone else here pointed out[1], Graham has previously discussed just how difficult it is to recognize the exceptionally talented.

Is it not Graham's responsibility to provide reasonable detail as to how the United States could actually accomplish what he proposes?

It's fair to state that comments here are not always charitable to post authors, but it's also fair to state that many of the authors simply don't make compelling arguments. If authors are disappointed with the criticism they receive, it's just as much their responsibility to make more compelling arguments as it is for critics to give them the benefit of the doubt at every twist and turn.

[1] https://news.ycombinator.com/item?id=8799869

Does his argument work if and only if the ratio is 95 to 5? What if it is 80 to 20 or 66 to 33? Would agree/disagree differently with what he says if the number changed but stayed along the same lines?

The charitable reading about the "qualities that make someone a great programmer" is the raw human potential/talent - obviously it is currently not the case that 95% of great programmers are not from the US, due to various factors. But his point is that, since humans everywhere likely have the same potential ranges, the ratio of US to Non-US programmers is going to trend toward the population ratio as remaining countries are brought up to speed, and we should prepare for that. Wouldn't you agree?

> Is it not Graham's responsibility to provide reasonable detail as to how the United States could actually accomplish what he proposes?

Really, no. He's allowed to talk about this without being irresponsible even if he doesn't outline the implementation of the solution.

Perhaps the essay just doesn't say what it wants to say very effectively.

It starts right out painting people who disagree with its thesis as "anti-immigration".

So no one should be surprised about the quality of conversation that results from that.

Right. From the essay: "But it is dishonest of the anti-immigration people to claim that companies like Google and Facebook are driven by the same motives". "Dishonest", "anti-immigration people", if that's how the "principle of charity" starts off, where do we go from there?

> if that's how the "principle of charity" starts off, where do we go from there?

Assuming your premise is correct, it's easy to see where the principle of charity would have us go from there: by responding to the strongest interpretation of what that sentence might mean. Its substantive point is clearly something about how companies like Facebook and Google have different interests than H1B body shops do.

The principle of charity is inapplicable to an article which begins with a "So, have you stopped beating your wife" type of assertion -- as written, it excludes the possibility that a reasonable disagreeing position could exist, since only "anti-immigrant" and "dishonest" people would hold disagreeing positions.

Thus, it is undeserving of charity and undeserving of HN. Do the moderator's duty and get it out of here.

Let's assume you're right. The principle of charity is then doubly applicable: it would prevent the needle from getting stuck in that low-quality groove.

Charity has limits.

When you're using terms which are very heavily politically and emotionally loaded to label people who disagree with you, you're going to get that sort of response back.

You can't be deliberately uncharitable to people and then say, "But you should be charitable when you respond!"

"Charity" as in the Principle of Charity has a specialized meaning. It isn't about being nice (though we should do that too). It's about keeping discussions substantive. Since that is the raison d'etre of Hacker News threads, I do indeed think we can expect HN commenters to be charitable in this sense.

And for the most part substantive posts get substantive comments.

This just isn't a substantive post. It's full of loaded language, highly questionable assertions, and doubtful anecdotes.

(1) You objected to the term "anti-immigration". If that phrase could be changed to something else that roughly means "oppose immigration" what phrase would you have used?

(2) If a phrase that you suggest is used, would this allow you to focus on the substance of the argument?

It is a classic high school, debate or lunchroom, tactic to make it impossible to argue against a statement. An under-handed debate trick that draws your cognitive response away from debunking the more important points. Chaff.

The best, strongest interpretation of PG's essay merits far less charity than even exists in this thread. There is barely anything of substance in the whole piece, and the parts that are substantive are just so far out of line with the empirical data we have regarding this issue as to be baffling coming from somebody with the cache of PG. If I were not being "charitable" I'd use words like "peurile," "ignorant," "transparent demagoguery," and "thoroughly irrational." In the interest of being charitable, I'd simply describe the essay as being merely a master work on how to write a series of unsubstantiated assertions interleaved with assertions that have already been thoroughly debunked.

This doesn't even touch on the incredibly un-"charitable" opening to PG's essay, on which he explicitly casts opponents or those who might disagree with him as being anti-immigrant. There is no way to "charitably" interpret that sentiment in a positive way. It is purely negative and entirely unworthy of a person claiming to be interested in honest intellectual discussion.

I think you are proving dang's point. Instead of challenging assumptions and conclusions, all you've done is call the post "peurile", "irrational", etc.

I didn't particularly like the use of "anti-immigration people," but there is certainly a way to charitably interpret it. You would interpret it as just so - a phrase he's using to refer to people opposing loosened immigration policies, which unintentionally is a poor choice of words. Rather than uncharitably interpreting it as an an intentional attempt at putting down these people.

so far out of line with the empirical data we have regarding this issue

What is that empirical data? I'm curious, not being snide.

Since you've asked here's some actual data on the issue at question

Some raw data http://www.epi.org/publication/bp359-guestworkers-high-skill...

A good analysis of several data sets with links to raw data http://spectrum.ieee.org/at-work/education/the-stem-crisis-i...

> What is that empirical data? I'm curious, not being snide.

Nearly everything I've read indicates that immigration doesn't really hurt wages, except perhaps those of recent immigrants.

The plainly manipulative, superficial and dishonest argumentation of pg is the root cause of this.

I pretty much stopped reading after:

> where they then paid them the same as they'd have paid an American

pg knows full well that the argument of those who feel immigrant programmers are used as cheap labor is that wages are currently either being artificially depressed, or there is no shortage, or both.

By ignoring that, and using this BS argument, it's quite obvious that he has no interest in an open, honest debate about the matter. This essay, which consist of little more than superficial political propaganda, is certainly not a good starting point for such a debate.

Agree completely.

Similarly, PG pretends that many companies are willing to go to extreme efforts to hire Americans. But I know about a dozen quality programmers who are "stuck" in the Midwest, because companies aren't willing to make them job offers in major tech hubs, even though they're applying to dozens and dozens of companies in San Francisco / Portland / Seattle / etc.

It's pretty clear that while PG's particular startup might not fit this mold (and the people PG typically talks to probably have honest intentions), the vast majority of these companies simply want cheap labor, and are hiding under this mythical "100x programmer" rhetoric to justify it.

"the idea of pg lobbying to flood the market with cheap programming labor is not only demonstrably wrong"

He wants the top programmers in the world to be able to come to the USA. But my suspicion is he has very little concern for your above average, but not great, USA born programmer whose wages are threatened by corporations that exploit and abuse the H1B Visa program.

As an above average, but not great, USA born programmer, I say bring as many programmers as possible to the USA. Great one create can help create the new Google, Uber, etc which than create more jobs. More above average makes software companies more effective over all. There are a ton of horrible "programmers" that are net negatives that bring down the average for a whole IT department.

I don't know if you're making a tongue in cheek argument or not, but currently an enormous portion of the tech immigrants come to America to work as cogs in consulting companies or MegaCorporations.

And there isn't any precise way to pick the people who are going to start the next Google- except for the people who already run successful businesses and therefore have the money and influence to emigrate if they wanted to anyway.

So yes, it'd be cool to have all the Job Creators come to America so we could work in their companies, but I see no evidence that would happen.

I am saying to let everyone in from the best to mediocre.

Who cares if overpaid (compared to other professions) programmers wages are threatened? Are you entitled to make six figures? No, you make six figures because market forces coincidentally put that price on the skill you were lucky enough to land in. Why are you not in the same breath talking about already-depressed McDonalds workers wages? Are you just a better person entitled to a better wage?

By 'market forces' you mean 'employers colluding illegally to keep wages low', perhaps?


No, I meant market forces. Yes, illegal things happen sometimes and perpetrators should be punished and made to make reparations.

Or are you insinuating that all changes in salary are due to illegal collusion? Boy have I got news for you!

> But my suspicion is

The principle of charity would ask you to suspend that suspicion in the absence of clear evidence for it (in which case it would be more than a suspicion).

Hey dang, maybe you should write a critique of pg's post, and how it fails in so many ways with the principle of charity. Just to give this discussion more balance since you've been criticizing other people's responses.

That seems to miss my point, which is not about immigration, but about the quality of discussion on Hacker News.

dang, what can I say, you seem to have missed my point. You're criticizing the way people have responded to pg's post. While that may be valid, you fail to criticize pg's 'quality' of writing, which can also be considered inflammatory. How about a little balance here?

I think that would be a mistake. There's a reason why the Principle of Charity doesn't add "except when you feel provoked". Human bias always sees the other person as having started it, being more inflammatory, etc.—so a principle which said "just do better than the other person" (or, to translate into the present terms, "just don't be as low-quality as you feel the article is") would never get applied at all.

So no, the onus is on all of us to contribute substantively even in response to something we consider unsubstantive. When we can't do that, posting nothing is a fine option.

The reason we're considering adding the Principle of Charity to the HN guidelines is that it gives practical guidance on how to comment substantively, which is what HN has always called for. I'm racking my brains trying to think of why anyone would object to having this rule, and so far haven't found a good reason.

dang, as many others have pointed out very well, pg's post contains "low quality," and in my view inflammatory comments. You refuse to call him out on it, not a peep at all. Instead, you call out others for responding in disagreement. Would you apply the "Principle of Charity" to the remarks of those that you think to be low quality? If not, can you justify why the "Principle of Charity" should not apply to pg but to everyone else who disagrees with him?

You say, "the onus is on all of us to contribute substantively even in response to something we consider unsubstantive." How about the responsibility of the original poster? Is it acceptable to write that way? Can he be legitimately criticized for that? If you don't accept that, then you've created an unfair situation.

(regarding your refusal to criticize pg) "I think that would be a mistake" The real mistake is the way you try to shut down dissent by painting it as "uncharitable" or misguided/mistaken. Can you point out the many examples of "much of this thread is of low quality" ? I don't think you can make that case, because it seems that you disagree with the opinions more than anything else.

Some of the dissenting opinions are passionate. And there is nothing wrong with that. Just look at pg's original post, there is a lot of passion there. I would suggest that you be an adult and understand that there are controversial topics which will cause passionate discussion. It makes no sense to a accuse everyone of being wrong in their interpretation and to scold them as if they're children. Just read the comments and you'll see that a lot of people here have unique knowledge and understanding of the topic. Your point is incorrect, and adds nothing to this very important (and passionate) subject.

What are you really against?

What do you want to see happen?

Common sense tells me that if he cared about the average USA programmer he would promote a more specific policy that would help prevent companies from abusing the H1B Visa program.

Hiring H-1Bs can drive all salaries down, including US programmers working at the same desk. I'd also like to see data regarding programmer age -- do we seek young US and H-1B alike to get cheaper, younger talent?

As an H1-B I can say that I'm paid the local market salary for my skillset. And so is my wife.

When supply goes up price goes down. Logic 101 says that H1-B immigrants lower "the local market salary".

Therefore we shouldn't allow in immigrants? By that logic we should close down our schools too, those new graduates are also lowering salaries.

Another thing that would lower salaries is the movement of the jobs themselves. If companies can't get enough workers here, at affordable salaries, they'll just move to a country that likes immigration, like Canada. In fact, this has already started: http://www.businessweek.com/articles/2014-05-22/vancouver-we...

We already bring in 1,200,000 immigrants per year.

Limiting the number of new graduates is exactly what doctors and engineers have done to keep their wages high.

Only a fool would destroy his own livelihood. VCs would never, ever support a policy that would threaten their oligopoly on the good deals, for example.

Don't be a sucker. No one is looking out for tech workers but ourselves.

P.S. If these companies can successfully relocate to Vancouver it totally torpedoes the VC-sponsored idea that San Francisco is somehow essential. Limiting all the jobs to one city is NOT good for tech workers. Silicon Valley is not a good place to make money because the cost of living is stupid. I would go so far to say that the Silicon Valley anti-density and anti-development culture and government make Silicon Valley a shit place to start a company, and companies should be moving.

I would rather work in Vancouver or San Diego or most any other urban center than get raped by rent-seeking landowners in SV.

Only for fungible types of workers. Programmers, software engineers, data scientists, product managers, designers, etc aren't like farm or construction laborers. These skills aren't commodities.

That's exactly how Google, Facebook, Amazon, Microsoft and most other big companies view software engineers. Engineers go through standard interview process (3-5 technical interviews, 1 behaviour interview) and then companies assume that everyone above the hiring bar can be assigned to pretty much any project at the company. Companies use this process because it works - engineers are mostly fungible.

The above is not true for exceptional talent (Linus Torvalds, John Carmack, etc). I will vote in heartbeat for visas for people with total comp >$300k. If you are truly that valuable, you should be paid more than average Sr. Software Engineer at Google.

Considering how Apple and Google tried to fix the salaries of software engineers to stay low, maybe even that isn't an option in big companies.

That's not how management sees talent like programmers and engineers. Management sees them like another commodity labor resource.

Specifically, they all fall under "Human Resources". While I suspect some issues even for CEOs might fall under HR, I also suspect that large company CEOs may also have unique employment contracts not available to the myriad software engineers at the same company.

What exactly was expected by it? The article consists of anecdotes and fictional numbers to argue and support an agenda which has historically been highly politicized by big tech companies. Perhaps PG doesn't have the same intention as others supporters of immigration but the article sure didn't show it or really bring anything new to the table. Truthfully, Im not sure that the comments are any lower quality than the essay itself.

PG is discussing a way to bring in known exceptional programmers (a very, very small number) which currently does not exist. I remember seeing a highly respected programmer - I think it was Carmack - wishing for a way he could stamp someone's application for citizenship with a mark of extreme approval.

Given that this point is clear in the essay itself and has been going the rounds outside of it, I find the portrayal of PG's point as if it were about a too-large H1B program or immigrants driving wages down to be a distraction.

What depths of poor taste we find ourselves in, to be disagreeing with pg on hn.

Even pg can occasionally come off as an ignoramus, but don't let that convince you of the fallibility of your glorious leader.

Hm, an article from pg I don't really agree with (even if I am benefiting from EU's open labor market).

There are plenty of 'exceptional' programmers out there with not exceptional salaries. Anybody is free to hire one. There are a couple of problems though:

- they're hard to identify - they might be exceptional in one situation and mediocre in another situation. The fact you are doing great at company X and task Y does not guarantee you'll be a rockstar at company W and task Z. - you don't want to pay for them. "I asked the CEO of a startup with about 70 programmers how many more he'd hire if he could get all the great programmers he wanted. He said "We'd hire 30 tomorrow morning." Well, if they're really exceptional and they worth 100x more than the others then pay them $5M/year and they're going to come to you. I know this won't happen, and the reason for that is exactly the fact that you have no clue how much they're going to worth for you. You could even pay only $500k/y to these excellent guys but no startup does that because they're not sure.

So please let's forget these stories about rockstar programmers and whatever. It's simple: if US could tap the international talent pool without restrictions then labor costs would go down by 50% OR it'd be easier to find good ones quickly at the same price, therefore one of the biggest risk factor in startups would be less of a problem. I completely support this argument, by the way. Don't dilute this debate with 10x (1000x?) programmers and companies who'd hire 30 people tomorrow morning at the market price (??) if they could find them.

*Edit: I have zero problem with downvotes but I'm genuinely interested in counterarguments, so please explain where am I wrong. :)

I agree with you; your second point is a good one. It's easier to increase the size of the pool rather than figure out how to better select within the current pool size; and if your concern is truly just getting "the best", it's cheaper to go abroad than to "steal" proven talent from competitors.

If companies were willing to pay their top engineering talent anywhere close to C-level salaries, they would have no problem finding willing applicants. There is no legit argument for upsizing the H1B program that does not rest heavily on cost.

That said, I am not against the US taking highly-skilled immigrants, even if it does temporarily depress salaries... The only bad things about the current program is the indentured servitude aspect of it... if tech companies were truly interested only in talent they wouldn't lobby to expand the H1B program, but open the borders more in general. But of course giving tech workers that much freedom would mean their expectations and demands would just quickly equilibrate more quickly, reducing the "value".

I also don't completely buy his argument on percentages. Even poor kids in the US have probably had 100X more access to technology than their counterparts abroad. I think early access and exposure to technology is pretty important for developing the intuition that comes in useful when trying to understand how things work and appreciating and recognizing good design. I would guess that the US has a much larger percentage of the world's talented workers than is naively calculated based on population alone. A better measure would have some per capita weighting.

Think of it from the perspective of the countries great engineers emigrate from. They lose the potential for their own economic growth and prosperity, and send their best to be shackled to a company in the US where they need to keep a job or be deported. It is possible, but very hard, to be entrepreneurial in that environment.

But that is an essay and a half of nonsense to get into, about why they need to immigrate in the first place in such large numbers. In the same way monopolies are not healthy in any industry, having all the "great programmers" in the bay area would, I feel, stunt the potential of the industry by creating an insular monoculture.

Paying more will just shuffle around the exceptional programmers who are already in the US. But pg's point is that the US should be trying to attract more exceptional programmers. And the more the better, because they don't just add talent, they multiply it. (That's one thing that makes them "exceptional".) The secret sauce of Silicon Valley is not just the exceptional people, it's that they're all in the same place.

Parent poster has a point that the difficulty of actually identifying the exceptional programmers poses a major problem here. P.G. has actually written about this himself, arguing that great programmers are the only ones who can identify other great programmers, and that they can only do this if they have collaborated with them on actual work.

See the 'Recognition' section in "Great Hackers" essay, http://www.paulgraham.com/gh.html: "So who are the great hackers? How do you know when you meet one? That turns out to be very hard. Even hackers can't tell."

And that another country could attract those 95% and do great things with them. Several European countries are keen to do so, and with access to the EU's pool of citizens it would be a great place to try and a new tech hub from.

Sadly anti-immigration and/or anti-capitalism feelings are also strong in many EU countries which hampers this movement. I wish the UK could make more of our draw.

> Sadly anti-immigration and/or anti-capitalism feelings are also strong in many EU countries which hampers this movement. I wish the UK could make more of our draw.

AFAIK, there's no problem with freedom of movement for employees in the EU, not even to/from the UK. The only issue is wages; London startups pay really shitty salaries (£40-50K). Berlin's aren't much better (lower than London, but in a much cheaper city). It's the exact same problem as in the US - the salaries just aren't high enough to justify moving to and living in an expensive city.

anti-capitalism feelings are also strong in many EU countries


There already is a program to bring in exceptional programmers - the H1-B visa program. The 100,000 people it is bringing in a year is not enough? There are more exceptional programmers out there?

Fixing the H1-B program so that it's harder to game would probably be a great help. H1-B workers also should be given a way to voice complaints or report abuse without fear of repercussions from their host companies.

But not sure that reforming H1-B will be an easy battle to fight. Many of the companies that have large H1-B workforces are also very politically connected and stand to lose a lot of money.

> You could even pay only $500k/y to these excellent guys but no startup does that because they're not sure

In some cases, equity does provide this level of pay. The problem is there is no way to know which startup will get to 100x it's current value, and which one will flame out.

Paul Graham is fighting for his side. I hope any developers here are smart enough to fight for theirs.

He's arguing that the same companies who colluded illegally to drive down the wages of the "best" programmers, now have no interest in lowering their wages when they're arguing for increased immigration. LOL.

Is "your" side US-born developers? I was born outside and was able to immigrate to the US on H1B. For the last few years it is very hard for my friends to do the same. I wish they were given the opportunity. In no way they are inferior to Americans. US became what it is because of openness to immigration. But these days it's easier for engineers to immigrate to Europe or Asia than the US. It may have long-term competitive consequences for the US companies as there is definitely a lot of programming talent outside the US. However if you view this as a zero-sum game with a "they came for our jobs" xenophobic vision, you of course would not care about that.

Why didn't you and your friends found companies in your home country? You do realize many h1b visa programmers, and the ones they want in the future, are just being taken advantage of to drive wages down?

What is wrong with immigrating to Europe / Asia? As an American, if I had many foreign associates that wanted to work for / with me, I would not hesitate to relocate with them to some country that lets us, that would the be US's loss.

But to open the proverbial floodgates is to let entrenched interests win and all the potential startups and growth elsewhere wither and die. It is not like you are going to be founding the next big thing while bound to employment at one of the big three to stay in the country.

> What is wrong with immigrating to Europe / Asia?

You may be right here. I used to think it's better to immigrate to the US, because that's where everyone was immigrating to. I thought I wouldn't find good people elsewhere. But your comment just made me realize I'm not so sure.

> and all the potential startups and growth elsewhere wither and die

All of them, really? Every single one? There's no middle-ground?

> It is not like you are going to be founding the next big thing while bound to employment at one of the big three to stay in the country.

Why did you exclude that as a possibility?

This. How is this not the top comment? The story that it is about talent and not about wages is terribly convenient for an industry that has shown it is willing to flagrantly violate the law to drive down engineer wages.

Because it's incorrect.

Maybe it is about wages for companies that don't understand there's huge variance in productivity of programmers. But it is about talent and not wages for companies that do.

You do have a valid argument that when you increase supply prices drop. But they drop in proportion to the supply. It would be nice if one could estimate the total number of those great programmers, and then calculate what % of the total programmers they are. If they are 50% that would be a problem. But if they are 0.5% (1/100th that), is it still a problem?

It can only be about wages. That's supply and demand. If more people are fighting over fewer programmers, that means they just have to pay more to get them. If pay is not an issue, then you'll get them.

If some companies don't appreciate the variance in programmers, either they have no excellent ones (because they wouldn't be willing to pay the price premium for a trait they can't see), or, more likely, they are lots of undervalued programmers out there you can hire if you can find them and you're willing to pay them more.

I don't see what you're getting at about the number of great programmers.

It's not only about wages. It's also about total wealth generated, which is driven by growth. The issue is you hit a limit.

Any startup eventually hits the limits of the market it operates in. But the point is startups don't get the chance to hit those market limits. The limit they hit first is they can't get great programmers. Their growth is stiffled early on.

Here's an example. Assume a startup is working on only one project and doesn't have a great programmer. Result: they don't get to make some breakthrough that would have increased the wealth of the startup by 100x-1000x. Without generating that wealth, demand decreases. You are still looking for just one great programmer to work on the project and can't start other new projects before you finish the existing one.

But if you didn't limit that growth (if you had a great programmer) there would be increased demand, because then you'd have 100x-1000x more wealth and could start new projects hiring more great programmers. It comes down to growth.

So having great programmers increases demand, not decrease it. The more you have, the more you end up needing.

Until you hit a limit. Once all great programmers who are in the US are snatched up, at any price, then you reached a limit to the amount of wealth that can be generated in the US by great programmers.

We are nowhere near the limit of VC wealth preventing the hiring of great programmers.

In other words, the wealth generated by previous waves of great programmers working on projects is most definitely not the limiting factor here.

Why would more wealth then generate more projects?

It's not more wealth that would generate more projects. It's finishing a previous project that would generate more projects. You don't even get to finish the project without a great programmer so you don't get to start new projects. New projects can depend on older projects.

Generating that wealth serves as proof the project completed, which justifies moving on. It's not merely being handed that wealth by a VC that completes the project because then you didn't generate anything. All you did was transfer wealth between two parties. Having wealth isn't enough to generate new wealth in tech. You also need skill.

What having more wealth would do is help pay for more great programmers but it's neither the driving nor the limiting force. The limiting force is having great programmers. They are the ones who generate new wealth.

So what you said possibly supports the argument that it's not about wages. If there were unlimited great programmers, we might indeed hit a limit on VC wealth. We could be nowhere that limit because there aren't enough great programmers.

My comment above was confusing in that it makes someone think a limit in VC wealth is what makes it prohibitive to hire great programmers. That's not what I meant to say. I meant to say that if you are limited in having great programmers, then the total amount of wealth you can generate is also limited. The US, and any country, would be better off having more great programmers.

The limit you hit is in having great programmers. Lack of great programmers limits growth. Lack of growth limits wealth.

I wish PG revised his essay to make this point.

And lack of pay limits the number of great programmers. So there we are.

Once all great programmers get a job they like they don't switch, even if you have the money to pay them more. They like what they are working on.

If a great programmer is working on the next Google, and you pay them more to work on something boring, they won't switch.

The limit is the total number of great programmers.

Yes, there's a limit. And we're nowhere near it.

And we won't be until the rewards for being a great programmer exceed the rewards for other options.

If it's as crucial as is claimed, increase the rewards. Really simple.

The rewards for being a great programmer already exceed the rewards for other options. Great programmers can clump together and start companies, and be rewarded more than they are offered by existing companies. This could destroy existing companies.

Are you trying to say great programmers don't do that because starting a company that succeeds is hard? And that existing companies try to take advantage of this (and possibly a first mover or other advantages) by not rewarding programmers?

It's not an unreasonable point to make, by the way, which is also an undervalued opportunity. Markets correct themselves. Maybe the only way to be rewarded for the value you generate as a great programmer in the future will require starting a company. I don't know enough to say.

- A related issue: you can't make someone be a great programmer just by rewarding them. Great programers tend to be intrinsically motivated. Which could be an additional opposing force that keeps them from starting companies.

- Another: pg claimed data that say there aren't enough great programmers; you claim there are: can you talk more about your data?

I'm trying to understand the problem better.

pg provided no data, he provided a sketchy anecdote and made an unsupported claim.

The idea of offering more rewards is that people who otherwise go into other fields (which are more rewarding, socially and financially), would then be attracted programming. A percentage of those people will be great programmers.

Grouping great programmers together gives them a tiny, tiny, tiny chance at large rewards. It's a gigantic risk. People aren't stupid. Most go to paths with less risk. The market has corrected itself. It attracts people in a manner appropriate to its risk/reward equation.

The way to reduce that risk is to provide more guaranteed rewards. Which means more compensation. Which means transferring more of that unused capital sitting around in VC accounts to the great programmers. Which means the limiting factor is the capital put into the system.

Absent some big payday from a startup, which is a roll of the dice not in their favor, programmer compensation is low relative to other, much less risky career paths. If the field truly wants to attract the best and brightest, it's got to offer a lot more rewards.

How much of a reward are "great programmers" 71-100 that company needed in pg's example going to get, anyway? How huge a success does the company have to be for someone that far down the line to come out way ahead? You have to offer those taking such a position a lot of up front compensation, or you won't get them.

As far as "great programmers" being intrinsically motivated, that's only true of people who are currently in the field, as the extrinsic motivation isn't really there, is it? So how do we know extrinsic doesn't work? We're not trying it.

It's ludicrous to think we have all the great programmers we could have. There are any number of people who are capable. Any number of highly intelligent, incredibly driven people who could fit the bill. They just go into other fields with better odds of superior rewards.

Want more great programmers, offer better rewards. They will come.

I'm trying to understand what you are saying. I also see holes in some arguments.

1) I agree there's gigantic risk.

If I understood you correctly, you are saying great programmers should have less of the downside of risk with more of its upside.

2) Are you saying great programmers apply to this hot startup in pg's example, pass the interviews, and then refuse the job offer because the compensation offered is too low? If that's what going on, then pg provided something worse than a sketchy anecdote: he lied. He omitted the startup is low-balling candidates it wants to hire. Is this what you are saying?

Or are you saying there are people with the potential of being great programmers who went into other fields because the average compensation of competent (but not great) programmers is low (which may very well be true), and this is the main reason we don't find them?

Also a small correction in "There are any number of people who are capable." It's great programmers we are looking for, not merely capable.

Another in "highly intelligent, incredibly driven people". It's not enough to be highly intelligent and incredibly driven to become a great programmer. You may have aptitude for, but not interest in programming.

3) Is it possible for a great programmer to go into another field? Because if it isn't, maybe the opposite is also true. That you can't take someone from another field and turn them into a great programmer. It's probably as hard for a great programmer to become a great sales person as it is for a great sales person to become a great programmer for example.

4) On the effectiveness of extrinsic motivation of great programmers, we already know extrinsic motivation doesn't work in general. It shouldn't be hard to find research on this. A quick search points to the following. Please correct me if this impression of mine isn't true. I want to find the truth:


You are suggesting extrinsic motivation of great programmers specifically is an exception.

I'm going to simplify this down.

1. I believe the type of person who is capable of being a great programmer has a very large number of career options open to them, most of which don't involve becoming a great programmer.

2. Thus, I believe there is a set of people who could be great programmers who are not actually are great programmers. I believe this set to be fairly large compared to the existing set of great programmers.

3. I believe that a good sized percentage of that set of people could be motivated to become great programmers if the rewards were increased substantially. I believe they have chosen other paths which they believe will be more rewarding. If you want to change the number of great programmers, you need to change that calculation.

My position is fairly straight forward. You can agree or disagree as you wish.

> I hope any developers here are smart enough to fight for theirs.

I'm confused. I'm a developer, originally from the US, who lives in Europe. Is an Indian guy who works as a developer on my side? How about a German woman? Is a guy in Alabama willing to work for cheap on my side? Is someone like PG, whose actions have created a shitload (that's the metric shitload, not the American version) of companies completely on the wrong side? Don't some of those companies create jobs? Coming back to whose side I should be on, should I be on the side of Europeans wanting to move to the US, since I have a bunch of friends here, and they seem like pretty good people who are bright, and hard workers? Or are they on the other side? Or am I, an American taking European jobs, on the wrong side?

Labor can be seen as a scarce resource. If a US developer want to maximize profit he needs to be as scarce as possible.

PG and startup employers are in the reverse situation: they need to commoditize labor as much as possible to maximize their profit (labor can be 80% of the fixed expenses in a IT business).

A developer residing outside US needs to support PG at first so he has access to bigger profit, but once he's in US, he's in the same position as the US developer (he needs to become scarce).

This is basic economic theory.

> Labor can be seen as a scarce resource.

You could, but that's a really limited version of economics that misses the fact that it's not a zero-sum game.

Makes sense, but can you think of an example about how a software developer would benefit for being a commodity worker?

Do you really see that as a risk?

If it happens, do you think it's realistic that it would happen in some countries but not others?

Its already happened in my country. Web developers are hired on minimum wage.

I know a bunch of people in the UK doing web stuff, and none of them are making minimum wage. Far from it.

Junior web development positions outside of London can easily pay 15,000 - 17,000 GBP. This is really low.

Wages for developers on the whole in the UK are far lower than the US.

Depends on location, and seniority.

Paul Graham is representing the startups that he's invested in - not Apple, Google and FB.

The BigCos are already big enough to have international offices to mitigate these immigration issues. A 20 person startup doesn't.

> From the essay: But it is dishonest of the anti-immigration people to claim that companies like Google and Facebook are driven by the same motives. An influx of inexpensive but mediocre programmers is the last thing they'd want; it would destroy them.

Eric Schmidt not only illegally colluded in a conspiracy to drive down programmer salaries, his e-mails say things like "this may be illegal so delete this e-mail".

I guess I'm one of those "dishonest" wealth-creating worker bees who read these subpoenaed e-mails where I spin the "dishonest" narrative that I actually believe what Eric Schmidt said about his attempts to secretly and illegally drive down his programmer's salaries.

Trying to keep the wages low of people you know are good is a different issue than trying to hire people from other countries.

Now, BigCos may still want good people they bring from the outside to have low wages, but that doesn't change the fact that they still want to (and can't) bring in good people from the outside.

It's simple supply and demand. You bring in more people, wages drop. Collusion and immigration policy are two tools to achieve the same goal.

The problem with this argument is that Facebook very clearly refused to join the wage fixing scheme, and in fact it was Facebook that was responsible for the collapse of the scheme (by aggressively bidding up wages and poaching Google employees). And Facebook is in favor of looser immigration.

And you can't claim that Facebook now wants to bid down wages - your assertions rely on using a company's past actions as evidence for their future choices.

I really want to believe this, but I'm not sure that I do.

Of course the tech companies want to hire people from overseas; being able to hire someone from India for half the cost but have them live in the US so there's some level of accountability/trust is a no-brainer. Huge new, cheap talent pool.

But, if I'm an entry-level, US-based programmer, what I see are floods of cheap talent, some with questionable skills, coming over to compete for my job.

On the surface it seems as simple as a conflict of interest between employees and the companies that employ them. Supply/demand.

Dig a little deeper and the argument becomes that the top programmers we're bringing over are going to start great companies. That makes sense; part of the reason the United States is so powerful is selection bias: If we create an environment the hardest-working and smartest people in the world want to come to, the end result is a lot of great companies that create enough jobs for everyone. Elon Musk isn't starting Tesla or SpaceX in South Africa (where he's from). So we create an all-star selection of the human race in one country, make laws that are favorable to people coming/staying, and the economy explodes.

What I'm not clear on is what the effect of opening the doors to programmers would be. Would truly great companies be started enough that the entire economy is shored up, or would it just dilute the talent pool to the extent that being a programmer isn't a "special" job you get paid $150,000/year for being decent at? The long-term, macro result of this would be interesting.

I think it's important for all startup founders to realize that non-executive salaries in the U.S. tech industry have been incredibly distorted by the illegal wage fixing practiced over the last 10-15 years.

The wage fixing set an artificial ceiling on programmer salaries. And if it's now stopped, we should expect a major correction over the next 5 years as market wages adjust. I'm hopeful that recent salary increases by large companies are evidence that things are moving in a good direction.

But it will take time to rebuild trust between labor (programmers) and management in the tech industry. I don't think we're there yet, and in the meantime I am cynical about any effort to address hiring difficulties by increasing immigration.

After a certain level (especially in California, especially with two-income households, especially after retroactive Prop 30) any additional raise at the salary level is so minuscule in real money that it's just not worth fighting for.

Now the equity and/or options are a completely different ball game.

What "wage-fixing" are you talking about? Are you referring to the brief period in which a handful of tech companies colluded to tamp down salaries and cross-recruiting? Because that involved only a tiny percentage of the software developers in the US and had no significant impact on the national average salaries. Or has there been broader wage-fixing that you're aware of?

> Are you referring to the brief period in which a handful of tech companies colluded to tamp down salaries and cross-recruiting?

Ignoring for the moment I don't think four years is very "brief" or eight is only a "handful"[1] (and it may actually be even more[2])

It's a bit naive to think this "had no significant impact on the national average salaries" - some of these companies are/were among the largest and most desirable companies in tech, what they do is going to affect the entire industry.

e.g. if you are a hiring manager at a company not involved and are trying to hire someone who is also considering an offer from an involved company the amount you need to offer to be more attractive is less. This brings down the average you pay, which brings down the average you offer. Likewise companies now competing for candidates also receiving offers from you now have an easier time sweetening their offers, and so forth and so on.

[1] https://en.wikipedia.org/wiki/High-Tech_Employee_Antitrust_L...

[2] http://pando.com/2014/03/22/revealed-apple-and-googles-wage-...

What is naive is to assume without evidence that the actions of a handful of companies that employ a tiny percentage of software developers had a significant impact on average salaries nationwide. In the absence of any such evidence, it makes more sense to assume it had little impact, which is what I do. The example you cite is mere speculation, and one could easily speculate about an opposite effect, i.e., companies that would not ordinarily be able to compete with Google et al could offer candidates more than they otherwise would have, that is, they might be inclined to stretch salary offers for star developers rather than shrink them. But, there's no evidence that either thing happened to any significant extent.

The example is hypothetical, but it is not speculation. A candidate [usually] decides to accept an offer or not on a number of factors. As a hiring manager you are unable to change most of these factors (e.g. you cannot change the tech stack, or the company culture, or the location). What you can change (to make your offer more appealing than others a candidate is considering) is the pay.

If you're considering another offer for X, I can make my offer more attractive by exceeding X. The lower X is the less it cost me to exceed it. If some companies (particularly large and desirable ones) are lowering X that will affect far more than "just" the 64,000 members of the class action.

Correct me if i'm wrong, but didn't the wage fixing affect precisely the programmers to which the essay is referring? It may have been a tiny percentage of programmers, but it was the programmers occupying the best positions at the most desirable companies who were specifically targeted.

Here's a related question that I never see addressed: how big of a programmer shortage do you think there would be if salaries were 50% higher? All the talk seems to assume that the makeup of industry is utterly inelastic. Fine, maybe your small company in Cleveland can't go out tomorrow and hire 10 A+ developers, but do people really not believe that if starting salary for an A+ developer was $150k, or whatever, that we might get more high-achievers choosing CSCI majors than pre-med or pre-law?

Nobody could sanely argue that there isn't tons of talent outside the US; and maybe it would be good to bring some of it in. But I have yet to see the argument for why these companies with balance sheets that Switzerland would envy couldn't solve this problem by getting out the checkbook. Yeah, the problem wouldn't go away tomorrow, but I'm not sure that making it go away tomorrow should be the only acceptable solution. Guess what, guys: I can't hire people to come and drywall my office tomorrow at whatever price I feel like paying, either.

Put another way, there's probably a reason we don't hear about the great doctor and lawyer shortage. Not apples to apples, obviously, but maybe it's oranges to grapefruits.

Well, there is a doctor shortage, particularly in the general practitioner space, where salaries are much lower than specialist medicine; likewise, while there's not a shortage of lawyers, oversupply has pushed down wages (and pushed would-be attorneys out of the market), and law school enrollments have fallen appropriately.

Comp-sci salaries are really, really good, to the point that a single experienced developer is single-handedly in the top ten percent of earners; a household with two developers is easily in the top 3-4% of household earners. And a superstar developer can make a hell of a lot more, if you're willing to play the casino economy of startups.

Yes, a b- or law-school grad who went to school in Boston is going to economically outperform their brethren from land-grant schools, but a lot of that has to do with background privilege and the ability to build a relationship graph. (If Harvard excluded the academically-mediocre children of the rich and powerful and admitted solely on merit, nine-tenths of the wealth-generating potential of its diploma would be extinguished.) Your average MBA or JD is lucky to do as well as a senior software developer.

Computer science, like medicine, is hard, while it's easier to tune one's grad school experience for less-rigorous subjects. And we all know that even credentialed programmers often can't pass the FizzBuzz test, while even fewer can speak authoritatively about complex system design and architecture. We could add more bodies to CS curricula, but it's far from clear that robbing from MBA and JD programs would add to the stock of high-quality programmers.

My point was less that we bring in the big guns by poaching them from these other fields, then that we address the issue the way it's traditionally been addressed, which is to let the market take care of it. If these development jobs are really magnificent engines of wealth creation, then pay more to hire for the positions and more qualified people will appear. If, as you point out, there's now a lawyer glut, and now lawyers must roll naked in five dollar bills instead of fifties, then that's a sign the process works.

The idea that developers already make enough money, and so instead of letting the market set prices and the shortages work themselves out, that we should rather blow up the current system because some giant companies would just, you know, really appreciate it -- I can't even finish the sentence.

I would really enjoy paying less money to get my transmission rebuilt or the plumbing in the downstairs bathroom fixed. I would love a glut of massage therapists so that I could get my shoulder worked on for the price of an expensive coffee. I do not, however, suggest we change immigration policy to make my dreams a reality. That seems to be what it comes down to.

You know, I just got around to looking at the current FLC wage tiers for my area, and I have to admit I'm shocked -- I knew "prevailing wage" was a joke, but I didn't realize that it meant H-1Bs could come in at $64K a year for a senior developer, for whatever value of "senior" you get at what's an entry-level wage. It seems to me that a lot of trash H-1Bs could be avoided if we got a senator or rep to introduce the following legislation:

Subclause (II) of section 1182(n)(1)(A)(i) of the Immigration and Nationality Act is amended by inserting "median" before "prevailing wage level".

This would at least prevent companies from using the lowest possible wage tier in the BLS data.

And all those services you keep comparing against, you know, can't be moved outside the USA (I'm not going to china to get a back rub or my transmission rebuilt). And of course, software doesn't work like that at all (I can open a software development office in China with the money I make there; as a bonus, I avoid repatriating the money back into the states for extra taxes).

That's a fair point, but it remains to be seen what the frictions are. I doubt that the domestic software industry has had my welfare particularly in mind all these years up till now, and yet they're all still here, paying what everyone wants us to think is our exorbitant American salaries.

What is the point at which these giants collectively tell us to fuck ourselves and run off to the Chinese nirvana you describe? Is it just north of where we are already, so if we don't get some immigration relief immediately we're all doomed?

Maybe. Or maybe the whole process isn't as clean as you're implying that it is. I do know that for as long as I've been paying attention a standard Republican refrain has been that if we don't lower our taxes to zero then all industries, in their game-theoretic wisdom, will evaporate from our lands. And yet businesses keep failing to migrate en masse to whichever Dakota has no taxes, and Minnesotan industry draws another day's breath.

To reiterate, I'm not saying you're wrong; but the causal chain is considerably more entropic than you or pg are letting on.

It is actually quite economical to make software in the states, one of the reasons being our relatively sane immigration policy. But it wouldn't take much xenophobia to make china look good. America also can't sit on its hands and remain competitive; its a constant battle and we have to continuously adapt and tweek our policies to remain #1.

Disclosure: I'm an American who has worked for Microsoft in Beijing for 7+ years.

So basically you're proposing protectionist policies to limit supply and thus inflate the price of labor (that is, you).

Would you also support similar arguments for say, oh I don't know, taxi or hotel prices in the area where you live so the existing pool of taxi drivers or hotel owners can protect the income they are making?

It may be useful for you to actually read TFA, which (spoiler alert) is not by me saying that we need to screw down the number of people we allow into the country, but is rather by another gentleman who has been stranded someplace unpleasant due to the ill winds of supply and demand, and wants to transform immigration policy until he washes up someplace more suited to his temperament.

Downvotes don't faze me but I find it telling that I don't see an actual reply to my point regarding protectionist policies. If you find yourself instinctively downvoting my comment, please also take a minute to form a coherent reply to it and post it. Why is it ok for the (American) hacker news crowd to demand a legally mandated supply shortage to keep the prices of their labor inflated while it's not ok for (usually much poorer) taxi drivers to demand the same (campaigning against Uber and such)?

I didn't downvote you, but maybe other people did because, as my original reply suggested, you're arguing against a position that nobody was taking. Nobody was talking about eliminating immigration, and not re-legislating immigration policy at the behest of MSFT and GOOG or Paul Graham cannot reasonably be translated as a 'mandated supply shortage.'

"Nobody was talking about eliminating immigration,"

That's a strawman. Eliminating immigration is not the only way to restrict supply of software developers.

"and not re-legislating immigration policy at the behest of..."

The fact that you felt the need to add a couple of other "baddies" after "at the behest of" should be an indicator that the original argument is weak. This entire thread thread is filled with software engineers making the argument that increased supply of software engineers is going to decrease wages. That's exactly what happens in a free market of labor.

As a thought experiment, imagine a world who got a job offer from a US company was free to move to the US and start working. Any situation short of that is a legally mandated labor supply shortage.

"Any situation short of that is a legally mandated labor supply shortage."

Well duh. But again, that's not the point of TFA.

You're clearly eager to advocate that laborers should be free to move about the world and work wherever they want. That's cool, knock yourself out. But it's another thread than this one.

You make a few valid points. But the issue is like always, every one feels their work is the most important occupation in the universe and every one else must just accommodate to whatever the conditions there are.

Even more specifically if there really programmers out there who are best of the best. Making a lot of money would be least of their problems.

> but do people really not believe that if starting salary for an A+ developer was $150k, or whatever, that we might get more high-achievers

First, US is already the third country in list for highest paid programmers, there is not much room to grow.

Second, Companies are in business, not for charity.

Companies are there for profit so if they could hire a beginner programmer for 50k, they should, otherwise they would be out of business and you would be buying everything made in China.

Not much room to grow? Says who? Did I miss the referendum in which the computer science salary cap was enacted into law?

The fact that companies are not charitable institutions is exactly the point. If they want more or better engineers they are welcome to pay salaries that will motivate such people to work for them, much as the petroleum industry is currently doing.

Or they could offshore and you could day dream about your double salary all you want. That is a possibility, wait, it is a reality, already happening.

Then let them carry on. Most of these companies are global in nature already. My naive view of the plea for more foreign tech workers to enter the US is that the majority of those controlling the money just really really really like like in SF and don't want to leave. When there's talk of tech worker shortage, there's not even any really serious effort to look around the US. Nope, the hive mind is in SF, and they'll move heaven and earth before they have to move someplace else.

I'm sure, you understand that equates directly to jobs moving to other countries. Do you prefer to keep jobs in the country or kick them elsewhere?

The US is third? Well jeez, you'd think that a country arguing that they need to attract all the top programmers in the world would at least try and pay the highest in the world to start with.

Well then, that means one of two things:

1. There is, as dictated by the law of supply-and-demand, not an undersupply of good programmers, otherwise good programmers would be in a negotiating position such that they would reject your 50k offer for a 150k offer elsewhere; or

2. The market cannot support this hypothetical company's business model. If my restaurant fails because labor costs leave me overrunning my revenue, few people would argue that is evidence we need immigration reform so I can find cheaper labor.

But unlike a resteraunt, you can open abroad and capture labor resources in other countries. So if programmers get too expensive in the states, or Silicon Valley, relative to the world market, there is a point where you are forced to open an office elsewhere (if not your competition does and eats your lunch). Without immigration, that would happen sooner (rather than the mythical doubling of American programming salaries).

Programmers in the US are already wildly, wildly expensive in the USA relative to the world market, often by an order of magnitude. So, if that's the case, we're already screwed and we're only being saved by some market inefficiency. We should all prepare for the inevitable future where we are doing very well to make 15-20k.

EDIT: http://www.payscale.com/research/IN/Job=Web_Developer/Salary

The maximum on that scale is 530,000 Rs, which is 8000 USD for a web developer. No doubt other countries have even lower salaries.

You cannot hire a good Chinese programmer for 15-20k, so no worries.

Perhaps not, I did not check Chinese salaries, but you can hire good programmers from other countries for less than that.

Ultimately it's a world market for labor at the top end. Barring artificial distortions (immigration/emigration restrictions), people will move to where they can get the best deal; since good Chinese programmers can immigrate to the states, it puts a floor on Chinese salaries, the same is true in India actually.

It is a whole different game for soso programmers. If you want a soso programmer in China, they will be much cheaper in the states, but the bottom is also much lower than one from the states could imagine, and often you just get what you pay for (or worse).

> Barring artificial distortions (immigration/emigration restrictions), people will move to where they can get the best deal;

No, they won't. Many people value staying near home more than they value additional salary. That's especially true for people who'd have to move house thousands of miles into a new culture, but it's true even of people within the US.

There is some of that, but not when wages are a magnitude off. If I can only make $50k in saint Louis and $150k in SF, there is huge pressure to move and start climbing the ladder. The programmer making $20k in Bangalore will move to the Bay area to add an extra zero to the end of their salary if they have the ability.

This mobility checks salary bottoms for those who do want to stay (e.g. for the market I'm in over in China).

There certainly is some pressure, but be careful not to overestimate it. Most programmers are not in Silicon Valley and feel no pressure to be even though they would make much more money. And this isn't even about "great" programmers versus competent programmers.

I'm one of them. If you can excuse my lack of humility, I am a great programmer. I've been described by management and teammembers regularly as a rock star. I could easily make 10x the salary were I to move to SV.

I have zero desire to and I've never felt like I was missing anything. Out of my graduating class, only one guy moved to California - in fact, he's the only guy I know of at all who moved to California. I know at least a dozen "great" programmers who live here quite happily.

Of course the extra money is an incentive and there obviously has been and is an influx of programmers to Silicon Valley and the surrounding area. But the wage impact (in terms of setting floors) of the migration is pretty minimal relative to other effects. That's why there are hundreds of thousands, if not millions, of programmers worldwide, including very close to the full 5% of "great" programmers from those areas, that are working for what you and I would consider garbage wages.

> ut, if I'm an entry-level, US-based programmer, what I see are floods of cheap talent, some with questionable skills, coming over to compete for my job.

I don't understand this dichotomy. Why would companies here go out of their way to hire cheap labor of questionable skill outside the U.S.?? Bad cheap labor is easy to find. Call up a recruiter and say "I need 20 horrible programmers", they're not going to say "oh wow that's a tough one".

Either you think: 1. Outside labor is good and thus I should be scared for my job, BUT those people legitimately deserve to be working here and are net positive for their employers, or 2. Outside workers aren't good and so what difference does it make if they compete with me here? I'm already competing with a saturated market of bad workers and if companies are stupid enough to hire them it'll work itself out -- they're not really competing with me.

>Why would companies here go out of their way to hire cheap labor of questionable skill outside the U.S.??


During my career I've witnessed a stark contrast between different visa holders:

1) Exceptional — the best and brightest from all walks of life. IIT Delhi to NUS Singapore. Hands down amazing folks who consistently outperformed their peers.

2) Cheap(er), mediocre — predominantly H1B holders from India and China. Varying degrees of output and communication skills. Mostly “slow tracked” for promotion and given the lowest salary in a given position’s range.

My perception is that the startup community has generally ignored group #2’s existence. It’s not very surprising when you consider who the top 5 h1b sponsors last year: Infosys, Tata, Wipro, Deloitte, and Accenture[1]. Most startup folk would likely be surprised since we usually associate tech companies -> Google instead of Wipro.

Logically your thinking is spot-on, but I'm not so sure the truth is so black and white. Consider the psychology of an h1b holder from India who has a 7 year wait to get a green card -- how is that person thinking about aggressive career moves? The answer is that they probably aren't.

I bet if you looked at relative rates of employee churn you'd find visa holders stay with employers longer than their counterparts. They are probably also less likely to push for raises / promotions since their negotiating position is somewhat compromised by them needing another employer to transfer this visa to (possible, but very stressful). There is also likely a sense of indebtedness to a company when someone is first sponsored. This is probably the biggest difference when considering the cost of Group #2 vs similarly qualified domestic labor.

Now consider those top 5 h1b sponsors again -- how does their workforce stack up? My intuition says they aren't the best and brightest from group #1 (don't know how to prove or disprove this just my qualitative observation).

What seems to be happening is that we have huge consulting firms sponsoring labor from Group #2 -- and these companies are run by smart folks. They've developing a well-oiled machine for employing a more loyal workforce, at less cost -- and while the quality isn't as high as it could be, it's good enough to make their business model work. This is the exact opposite model of startups (and large, but highly innovative companies like Google) who want to only hire from Group #1.

As a founder I've experienced the Group #1 labor shortage first-hand but I also worked with Group #2 in the industry and both experiences left me leaving a lot to be desired with our current immigration policy. I see both sides of this debate, but from my standpoint everyone is right. The disconnect seems to be that "anti-immigration" camp is fighting against expansion of Group #2 while startups and innovative companies like Google, et al. are fighting to increase visas for Group #1.

What can we do to bridge that communication disconnect?

[1] — http://h1b-visas.findthecompany.com

> since their negotiating position is somewhat compromised by them needing another employer to transfer this visa to (possible, but very stressful). There is also likely a sense of indebtedness to a company when someone is first sponsored.

This is part of the point: this aspect of immigration labor would ironically disappear if it was easier to get into this country. The fact that its hard to get in and get a job is precisely what creates the imbalance of power in negotiation and further leads to a sense of indebtedness.

BTW, this also negatively affects startups. I've been in situations where its difficult to poach someone because of their visa situation (they don't know how easy or hard it is to transfer, they feel indebted, etc etc), and additionally, its way easier for large corporations to go through the paperwork to hire outside talent than a small startup thats just 3 founders. Regulation, as usual, creates all sorts of strange counter-intuitive incentives and imbalances.

If companies could just hire whomever they wanted, then sure, you might be competing directly with someone from india, but you'd also be on a more equal footing because that guy from india would have the same mobility to other jobs that you do, and thus would not be so desirable for his "capturability". Not to mention the fact that whether you like it or not you'll eventually all be competing anyways: at some point it just becomes easier to open offices there and then there's just no job here period.

So how do we implement this as policy? What we can't do is just say anyone can immigrate. We need to find ways to make it easy for exceptional people to live and work here but make it difficult (sliding scale to impossible) for everyone else.

One random idea I was thinking about was regional, industry specific visa committees that would review each application to ensure that we are able to more accurately identify exceptional individuals and filter out the mediocre / low-quality talent.

Allow anyone to immigrate, require they be paid an equal wage as a citizen of similar skill (hard to enforce I know), and then charge the employer a tax on the wage (10%?). This would force employers in any industry to only take people who are at least 10% more valuable to the company. You can change the tax appropriately to get the desired result.

If this was actually the policy fwd.us and PG and the rest of the crew were lobbying for, I think it'd set the world on fire.

I wonder where do you get your data for "hire someone from India for half the cost". Of all the facts thrown around - this is easily verifiable - http://www.h1bwage.com/index.php

If you ignore those employed on hourly basis, a majority of people on H1B are paid quite well. Apart from salary and benefits - add Visa processing fees for their Kids and Spouse as well (which can easily amount to > 30k+)

I think people underestimate how fortunate US is for being top destination of good programmers (and engg. in general). US has tons of companies founded by immigrants - Tesla, Bose, Sun Microsystems, Hotmail, Yahoo to just name a few.

I agree that, something ought to be done so as Services companies (Infosys, Cognizant) have limited access to H1B visa pool and process is fairer to smaller companies.

I'm a dev manager at a prominent employer of software engineers and I did a search for my company at your link. I can't speak for other employers, but it appears that salaries for H1-Bs are ~25% lower than what I know Americans to be making at those same job titles. Half is almost certainly an exaggeration, but to deny that there's an H1-B discount is equally disingenuous.

On the topic of the essay, I worry that Paul is also being disingenuous. The US might only have 5% of the world's population, but we have a much larger percentage of the world's population where children have been exposed to computers from an early age. He's right that exceptional programmers can't really be trained, but that doesn't mean that they aren't made. They're made by being put in an environment where they can explore computing and let a natural creativity/curiosity that they have flourish. I've yet to meet an exceptional programmer that begrudgingly chose to write code for a living.

And that's my problem with the H1-B situation and why I think they've got an overall lower percentage of exceptional programmers. In the US, those who are driven by extrinsic motivators like money don't become programmers. They become salesmen, stockbrokers, lawyers or any of a host of other professions that sacrifice doing something interesting for high compensation. But most of those career paths aren't available to people in poorer countries whereas software engineering is. What I've seen among H1-Bs is a far higher percentage of people who basically hate their job, but do it because it allowed them to come to the US and afford a comfortable lifestyle for their families. I don't blame them for that, but I also don't think that it makes them particularly good developers. Don't get me wrong...I have met quite a few H1-Bs who were drawn to software development from an early age and love doing it in the way that usually results in being an nx developer (anywhere from 1x to 10x), but I just don't see them in the same proportions that I do among American developers.

If Paul can figure out a way to filter in the great developers while filtering out those that are only coming to make money, then I'd be completely behind his plan to let them all in. Somewhat ironically, his plan to let everyone in would somewhat accomplish that at the cost of decimating developer salaries (i.e. if the labor pool is increased and salaries dip accordingly, we'll find out pretty quickly who's only here for the money and which of us would be doing this no matter whether we were paid significantly less.)

> If Paul can figure out a way to filter in the great developers while filtering out those that are only coming to make money

Perhaps the ones that just want to work hard and make other people money, rather than aspire to money of their own could get a great big "I'M A SUCKER" stamp on their foreheads?

Here's patio11 on salary negotiation: http://www.kalzumeus.com/2012/01/23/salary-negotiation/ - should that desire to earn a bit more only apply to people who were born in the right place?


> What I've seen among H1-Bs is a far higher percentage of people who basically hate their job, but do it because it allowed them to come to the US and afford a comfortable lifestyle for their families. I don't blame them for that, but I also don't think that it makes them particularly good developers.

Most people from China, India, etc who immigrate to the U.S., Canada, and Australia/NZ are, in my observational experience, primarily focused on whatever aids the immigration process from an early age, often prompted by their parents. Their secondary focus is the backup plan of rising in the ranks of business, government, or academia in their home country. There is a significant minority of people whose primary focus is on the hierarchy at home, and choosing immigration as a secondary concern happens later on in life, often after marriage, perhaps to someone of the first group. For both groups of people, though, an interest in something geeky like technology, programming, gaming, or whatever comes a distant third. People in China who develop such consuming interests outside of work or forgo higher status jobs to do more interesting work will almost certainly miss out on some crucial step in the arduous immigration process. And of course you won't see many Chinese who totally forgo saving for a car, apartment, spouse, and child to spend all of their time on a geeky interest because their parents simply wouldn't allow it in the one-child culture here.

> If Paul can figure out a way to filter in the great developers while filtering out those that are only coming to make money

Maybe he did. They become founders. They start companies worth 100x - 1000x their annual salary. As you go up the continuum of exceptional performance a great programmer becomes a startup founder.

>If Paul can figure out a way to filter in the great developers while filtering out those that are only coming to make money, then I'd be completely behind his plan to let them all in.

You are implying that all (most) of the American programmers are exceptional. That is not the case. If you have a good team, you had to do it yourself, weed out fakes from real ones, didn't you? The onus is on the company/manager who is hiring to pick the right ones whether they are already on H1 or before company files H1 for them.

> I'm a dev manager at a prominent employer of software engineers

I find it hard to believe. In large companies HR establishes salary levels (usually bands) which are tied to titles or levels within the career ladder. Does your company negotiate each compensation package on a one-off basis?

We have bands, but they can be pretty wide...the top of the band is easily 125% of the bottom. And managers are only limited by the top of the band when extending an offer.

And some of the salaries listed on that site are below band. We also get salaries below band through acquisitions. In those cases, managers aren't really given leeway to get their salaries up to market. We've go a mostly-fixed pool of raises to apportion across our teams. Every year, that's set by executives depending on the company's performance...this past year it was ~4%. Low-level managers can recommend higher for their team, but they need good justification and, at the level of the business unit, raises cannot exceed that value.

Based on what I've seen when extending offers, whereas US citizens sometimes push back on salary or equity, H1-Bs only push back on the INS stuff (they all want EB2s). My guess is a lot of managers will low-ball their offers when they know they can give the candidate an EB2. The more you do this, the more you can increase your headcount or hire more senior developers.

If this is overwhelming behavior, Department of Labor can crack down on the company for not paying the "prevailing" wage. If the offers do tend to be around the bottom of the band, but there's also a good supply of non-immigrant employees working at the bottom of the band then yeah, the company will have an easy argument saying the prevailing wage is closer to the bottom of the band.

> Department of Labor can crack down on the company for not paying the "prevailing" wage.

That is technically true, but effectively impossible. The DoL simply does not pursue H1B abuses. They do not have the political will nor the budget to even look for them.

There is literally zero budget allocated to "prevailing wage" enforcement. That is a deliberate oversight by congress and has been that way for the 20+ years I've been observing the H1B process. To the best of my knowledge the DoL has only twice ever initiated action for H1B prevailing wage violations and in both cases it was the result of a disgruntled employee tipping them off to a series of violations that were so egregious that the political fallout of ignoring them would have gotten senior bureaucrats fired.

You might also want to read up on how classifications are gamed in order to work around even the very minor risk of prevailing wage violations.


The real problem with h1b is that it appears to be primarily used to offshore jobs to other countries. The largest users of h1b visas are firms that bring people to the US for a period of time to get trained, then have them return to their country of origin, offshoring the work (see for example http://www.businessweek.com/stories/2007-02-08/work-visas-ma...)

So, tossing H1B would be a great start at immigration reform. Instead, we should prefer immigrants with educational backgrounds in skills we need, and who have the best chance at assimilation.

Your point can not be emphasized enough.

In 2012, all 10 of the top 10 H1B employers were offshore outsourcing companies. http://www.epi.org/blog/top-10-h1b-guestworker-offshore-outs...

In 2013, 50% of all H1B visas went to offshore outsourcers. http://www.computerworld.com/article/2489146/technology-law-...

It is difficult for me to not say anything disparaging about Graham's analsysis of the problem being just "a handful of consulting firms" when it is actually the primary use of H1B visas.

No, if you want to do that kind of trainee stuff you would just use L1 visas, H3 visas or even the B1 visa if it's a short period. Since H1Bs are on a lottery, and you have to tell people to wait until October anyway, hiring someone in your remote office, having them work on projects and then bringing them over 1 year later on an L1 is pretty close in costs anyway. And you guarantee that the person can come over, vs the 'chance' that H1Bs give you.

Wipro & co are general outsourcing firms themselves that american companies hire. I don't know why they use the h1b vs the L1 visa although.

> The largest users of h1b visas are firms that bring people to the US for a period of time to get trained, then have them return to their country of origin, offshoring the work

Minor detail, but if it's the same employer in both countries, they don't need to apply for H1, L1 would do the trick. It's also not subject to a cap and is much cheaper administratively.

So if companies are using H1 program for foreign employee training, that's a very inefficient practice.

The L1 visa program forbids placing the employee at a third party site as part of a labor arrangement. Thus the L1 visa is not applicable to this sort of "training." I'm sure plenty of L1 employers play fast and loose with that rule because there is essentially no formal enforcement mechanism. Nevertheless, H1B is the official visa for that sort of work.


Correct, when a third-party is involved, it's no longer the same employer in both countries.

So, tossing H1B would be a great start at immigration reform. Instead, we should prefer immigrants with educational backgrounds in skills we need, and who have the best chance at assimilation.

Isn't that basically how Canada and Australia's visa programs work?

But why expand the H1B program vs. a more open immigration policy in general, or removing H1B lock-in restrictions?

So are you claiming that companies are paying an extra 30K for all their H1B employees on top of giving them a salary that exactly matches that of their non H1B peers?

They don't pay that extra $30k per year. That's a relatively sunk cost. If you can pay a $30k premium up front, then pay that employee less over time than the US equivalent AND that employee is locked to that employer, then it's well worth that $30k upfront. Of course we are stipulating that it actually does cost $30k on average, which I haven't seen the data to support (or refute) that.

To me the most interesting way of framing this is in terms of the changes that'll happen to the owners of businesses.

The question of the talent of the new employees is secondary when you realize they will have to move countries in order to be tied to a specific job on penalty of getting their visa revoked.

So suddenly, you create an unlimited class of employees with no bargaining power, and can play them against your native employees. This would be bad enough, but H1B visa holders usually make 20% less than their equivalent American coworkers.

> tied to a specific job on penalty of getting their visa revoked.

This is true if you hire from third world. I am from Northern Europe, and having a visa revoked and going back to my home country would not be a threat to me. I'd just happily move back home, and find a job there.

Most people consider a move to a new apartment in the same city inconvenient.

There are very few people who wouldn't consider being forced to move across continents, while giving up their rights, a highly biasing factor in the pros/cons of any decision they made.

As a result, I can see programmers from Western and Northern Europe, who as of know may consider relocating to the US, change their mind and say "why bother". Any EU citizen will have easier time relocating to London/Berlin - two places in Europe where a lot of tech companies are located.

PG's point is that a lot of people from outside the US (including from Europe) currently would prefer relocating to the US but they have difficulty getting a visa. Long term more and more people would prefer the second best choice that's available to them.

"PG's point is that a lot of people from outside the US (including from Europe) currently would prefer relocating to the US but they have difficulty getting a visa"

No, from my reading of pg's point: Most of the top programmers live outside of the US, so we should make it easier to get them by changing immigration policy.

> Most people consider a move to a new apartment in the same city inconvenient.

This is a good point. But finding out that your employer is so nasty that they use your visa status as a bargaining chip, can be even more inconvenient.

Nearly every company larger than 100 people optimizes for financial outcomes. That's amoral, not evil, don't confuse yourself.

In addition to the cheap & bad / talented founders pools there's also the pool of expensive and talented workers who just want to code. I mean, I wouldn't move to the US to work for half of what you make if I'm doing the same job, right?

> what I see are floods of cheap talent, some with questionable skills, coming over to compete for my job

Let me be the devil's advocate and argue that even that is beneficial at the national policy level.

The alternative to cheap imported labor for a small company would be to hire a local guy, but for any medium to large company the alternative would be to hire a foreign consulting shop, and there are tons of companies working in the niche.

The "cheap" labor in programmer speak is usually around $50-70k salaries, adjusted for specific area, and I would rather have US capture the value of income taxes, sales taxes and other economic activity from that $50-70k than an outfit abroad.

Did you read the essay? You seem to be totally ignoring the point that excellent programmers will be paid well because they are scarce compared to "decent" programmers. The goal is not to import cut-rate talent at cut-rate prices.

Excellent programmers are only paid well if they have a good internal idea of their value and are able to negotiate.

I've known countless great developers with terrible self-esteem and/or total inability to effectively negotiate. Far more, in fact, than the reverse.

The only reasonable way to let more "great programmers" in is to let more of all kinds of programmers in.

Or maybe interview them before hiring? :)

Well, will great programmers line up at the "great programmers" H1B line? Probably not. Will the government screen applicants in order to increase the concentration of "great programmers"? Hah. There are no means available to us to increase the concentration of great programmers in a pool of programmers without great cost, and this inevitably means that in order to get more great programmers, one has to go through more programmers.

Why can't programmers work as contractors from their location before filing for their H1B's? Yes, hiring process has to change. The companies those who have distributed teams have figured this out already.

Exactly. It's strip mining. Destroy the 'environment' with a relatively low yield.

The problem is that it's extremely difficult to identify whether someone will excel at a job just through an interview. Even if someone really impresses everyone during the interview phase, it's totally possible that once they get hired they'll hate whatever you have them do and just do a mediocre job at it.

I'd go so far as to say the CEO mentioned in the story with their 70 "great" programmers who would hire another 30 "great" programmers...

A. Doesn't really have 70 "great" programmers, certainly not 100% of their team. I just don't believe that.

B. Actually needs 100 "great" programmers, and none that are just "good", in order to succeed fabulously.

C. That the CEO in question could accurately and consistently identify greatness in advance of hiring.

Sorry, it's just not a believable situation.

Also, her can hire 30 great programmers in a few months if he pays them rely well. But of course he is not looking to do that.

Well then the interview process seems to be the problem then.

Something some have been saying for decades.

Some are true. If you interview a lot you know most of the interviews are useless to figure out good candidates from mediocre ones.

So the 100,000 we're importing each year are all exceptional? Have we absolutely maxed the yield of that 100k? I don't think so.

Actually, studies have shown that IS the goal. It might not be Paul's goal, personally, but generally speaking it is the goal of immigration policy for tech workers - to make labor cheap.

Yeah, I concur. Basically the gradient in the price of labour between countries is driven up to a point by immigration policies. In the general sense increasing the pool of candidates will lower wages.

I suppose what PG is after is creating a policy of allowing 'black swan standard' programmers of outstanding skill more in to the US using a different mechanism than the current H1B?

I'm pretty sure that already exists in the form of an O-1 visa. However I doubt the vast majority of programmers who get an H1B come close to meeting the standards for an O-1 visa.

So yeah, if you are a really great programmer and the rest of the world knows this, then any employer in the US can help you get an O-1 visa based off of that. If your programming prowess isn't well demonstrated, then yeah, you have to go through other channels.

No it isn't. For great programmers, the O-1 visa is basically a hack that we use to get in the US. It was not intended to be used that way for programmer (you can note that the criteria fits more for profile of a reasonable successful working in entertainment industry, athlete etc.)

You will need to be something like a top 1% programmers, working on things that are semi-public to qualify for the O-1, but any decent (top 25%? I'm pulling number out of my ass) fashion models can probably get in.

If the O-1 is already admitting the top 1%, then we're already closing in on solving the ostensible problem.

At least inside an order of magnitude (1/5) at a naive guess, but probably much closer, in fact, if we run with two assumptions this piece rests on:

(a) The small top portion of a given talent pool have exceptional intrinsic abilities that give them a power-relation advantages over the rest of the pool when it comes to productive enterprise.

(b) Taking a small highest portion of a very large talent pool is going to give you the largest source of power-law productive talent.

If (a) is true, one would assume the top 1% of external programmers is going to be as much better than the next 5% as the top 20% is than the next 80%.

If (b) is true and we're already looking at the worldwide market, the top 1% is already a huge boost to the pool, almost certainly bigger than the number of open jobs on the market (if 5% of the top 1% of the world's smartest are programmers, then that's a number bigger than the ~4 million unfilled positions of any kind in the US). The top 5% is redundant.

It's a bit more nuisance than that. As I mention, I was pulling numbers out of thin air. The main point I was trying to make is that criteria for O1 isn't applicable as a good measurement for hackers. We don't have any award for what we do, and the nature of the work is that there isn't much publicity most of the time (it's even the reverse, people who works on really haRd stuff have to be silence about them). And that's no fault of anyone, we barely know how to judge good and bad programmer ourselves.

Another point to be noted is that if you try to get the top 1%, you might get 1% of that pool (1% of 1%). As many people noted, not everyone want to come to the US. You might as well trying to get all of them

Agreed, the goal is to drive down prices of IT salaries. I find it disingenuous of PG to indicate otherwise since he sits on the side of the table that directly benefits from a cheaper IT labor market.

I have worked at numerous places where they have hired on H1Bs. One of those employers did so because they were looking for good talent no matter where they could find it and H1B holders were paid fairly. Every other employer was doing it because they could pay lower wages and force longer hours on H1B holders since they are in a sort of held-hostage situation. In one case developers were frequently working such long hours that they would just sleep at the office and only go home once or twice a week. This same place was paying their entry to mid developers in the 25K to 35K range and their most senior developers were making less than 50K.

If you are just worried about keeping your salary up, that will go down no matter what, as the talent pool all over the world increases and companies will offshore more work, that not only means less salary but fewer jobs.

Most of those who argue against pg's argument here are concerned about lower salaries, no one is concerned about fewer jobs (because companies will move work offshore), less innovation (new product development moving away).

Creating boundaries and not letting talent in, is just a big downward spiral and if it accelerates to a certain speed it will be too difficult to turn it around. May be not in short term but in couple to few decades.

I agree with you.

Fortunately we already have a system that lets only the exceptional talent in. It's called the "American" Higher Education System, and it's pretty good at bringing the top talent to the U.S. already. Perfect? Of course not. Good enough? I think it is.

Normally I don't hold someone's wealth against them, but on this issue it's hard for me not to be a little prejudicial.

Except talented graduates of the American higher education systems have to leave the country if they don't get selected in the H-1B lottery. Last year, there were 45,000 applicants for the 20,000 advanced degree H-1B cap.

"Fortunately we already have a system that lets only the exceptional talent in. It's called the "American" Higher Education System"

Because, you know, people educated outside the US, like Europe, South Africa or Japan, have not value whatsoever.

It is American E.S who lags behind them. e.g Most educated Europeans need to speak at least 2 to 3 languages fluently.

You also believe Chinese, African and South American will remain in the dark forever.

I have an advice for you: travel the world.

Why would the number of languages you can speak indicate effectiveness of an educational system? Yes, I know the argument about cultural awareness. That won't make you better at building web servers. It might make you better at interacting with people of that culture.

Fundamentally though multiple languages is incredibly wasteful. I'd never propose that English should be a global language - it is such a steaming pile of shit thinking it the best we have is insane - it just has network effects in its favor. Of course, building a language scientifically that uses all enunciable syllables and minimizes word size and maximizes understandability is a major project and getting people to speak it is impossible.

And yes, the non-higher US educational system is colossal garbage, but we know that. We are talking about US higher education, where you pick your courses and rarely are students enrolling to learn two more languages for the fun of it. In that context, millions of students around the world strive to get into US schools, not because the teachers are any better - in my experience, one, individual students are different and learn better in different ways so one scale of "better" or "worse" education is insane, and two, there are diminishing returns on teaching skill such that the difference between the best public school teacher and the best teacher period is probably a fraction of a percent of student performance at worst. The US education system is good because of the business networks the prestigious schools get you into and how almost anyone will hire a US school grad.

Whoa, whoa, calm down. I was talking about immigrants who come to do graduate work in the US.

What I'm not clear on is what the effect of opening the doors to programmers will be.

There would be many effects which would interact with each other. But one thing that is sadly true right now is that for an engineering manager to increase his/her hiring budget there is unlikely to be a significant quality increase. Think about what this means.

If there were more talent, then companies would be able to justify increasing budgets to build/grow a superior team. In this market if you double your budget you just get twice as many mediocre programmers or you end up getting into a bidding war for highly priced talent. Neither is good for the field as a whole.

What you touched at the end is part of a bigger problem, I think - people who write something as inconsequential as a shopping website, or Yet Another Chat App, are not worth $150,000/year. Maybe one out of one-hundred of those folks could use their talent on something that demands a wage like that outside of the absurdity that is the Bay Area. I don't feel the talent pool will be diluted so much as your run-of-the-mill developer won't be expecting a six-figure salary coming out of college anymore.

> something as inconsequential as a shopping website, or Yet Another Chat App

Alright so first off, 150k will give you a comfortable upper middle class lifestyle in SF/SV (assuming you have no dependents, in which case it's just middle class). It's really not the astronomical salary that you seem to be imagining.

Secondly, it is completely impractical to pay people based on the "difficulty" of their work. Difficulty, even if we can agree on a definition, does not correlate with revenue. Revenue is traditionally where salaries come from.

Intuitively, if person X in a team of n people writes an app that produces profit Z, then it would make sense for person X to get something on the order of Z/n -- not 100k because it's just a chat app. This is not actually how it works because of some artificial constraints. I believe the calculation in most cases looks more like pay = 120k + 20k if in expensive city + MIN(.01 * profit, 150k).

> Alright so first off, 150k will give you a comfortable upper middle class lifestyle in SF/SV...It's really not the astronomical salary that you seem to be imagining.

If we're going to say we shouldn't limit ourselves to 5% of workers then perhaps we shouldn't limit ourselves to 5% of the land. There's plenty of places in the country where 150k would be a very comfortable salary.

Also throw in all the college debt they require you to pile on before being hired, not to mention the hours spent studying instead of working. And that it is a cyclical feast or famine industry where it ping pongs between 70 hour weeks of deadline crunches and post-dotcom, post-bank bust periods where no one is hiring. And that the career of many ends at 40. Plus as you mentioned, the San Francisco rents for those requiring you work in the city.

The OP could have made their point more subtly, but I'm not sure either of the points you've made necessarily disagree with the argument they were making

$150k isn't astronomical in San Francisco (because rents have inflated to match the salaries) but startup employees who are prudent and don't have dependents will likely save money faster than comparable roles in most if not all other parts of the world. And a substantial proportion of the companies in the Bay Area don't generate revenue in excess of what they pay their programmers; many never will, even if they are blessed with unusually productive programmers

The potential profitability of a startup is even more difficult to gauge than the difficulty of a programming role, and the fondness of VCs for disbursing their money in the Bay Area is probably more to do with the distribution of potential acquirers than the distribution of productive programmers.

Yes. Over 100,000 H1-B's are coming over every year. This keeps discussing exceptional programmers. You mean we need more than 100,000 exceptional programmers coming over every year? The reality is that the idea that even 10,000 of these people are exceptional programmers is a laugh.

Every year 100,000 H1-Bs can come in. To believe this article, we'd have to pretend that we have a big wall up preventing these dozens or hundreds of exceptional programmers from immigrating to the US, and completely ignore the existence of the H1-B visa and the hundreds of thousands pouring in every year.

So the problem isn't the immigration restriction, it's the lack of screening. Using PG's logic, all of those 100,000 should be 'exceptional' or else we're wasting tens of thousands of visa slots that should be going to the 'exceptional.' And how is 'exceptional' determined? We should let everyone in with the hope that some percentage happens to be exceptional? What about the non exceptional? What would that do to the overall quality of coding if you 'dump' 95,000 unexceptional programmers with the intent of harvesting 5,000 exceptional ones. Is it fair to suggest that the Infosys recruiters aren't hiring 'exceptional' but lower cost? I get recruiter emails all the time; several per day, yet never once have I received an email from Accenture, Infosys or any similar company known for hiring lots or foreign workers. So interesting that their shortage obviously isn't such that they'd resort to bugging me. Of course, maybe my years of experience and companies I worked for would indicate that that I would not be as cheap as the thousands they bring over from India. Nor would I put up with being locked into a position as an effective indentured servant. So many it isn't that there's a shortage of engineers but a shortage of ones that are willing to work under conditions common to those who desire to import more labor. Facebook doesn't necessarily want to hire more imported devs, but an increase of supply would allow them to have a larger talent pool at a lower cost. Of course, this discussion is a bit old school..

With remote working, geography is somewhat irrelevant. Perhaps instead if changing immigration instead PG promoted companies embracing a remote culture -- then you could have the best of the best with minimal beareaucratic entanglements. After all, given that, according to PG, it's about 'exceptional' talent, working remotely shouldn't require the same level of management overhead as would a lower quality dev 'sweatshop.' However the fact that isn't even being discussed makes one believe that this isn't about finding 'exceptional' talent as much as it's about lowering the scarcity of developers willing to work for lower wages than they might have received otherwise.

Under the PG logic, we ought to simply open the floodgates to all people, because inevitably from the multitudes there's bound to be a few geniuses. But, does the cost of those geniuses outweigh the costs to everyone else? Should we strip mine the Rocky Mountains to find an ounce of gold?

I don't know the answer to the question and I am not advocating either way, however when a company like Facebook begins asking for something, I question the motives -- I don't think Facebook has a talent shortage at all, they have a desire to pay less for their inputs. Which is a fair desire; however we shouldn't just blindly allow policy decisions to happen just because some tech 'leaders' ask for it. It is and always has been about the bottom line.

You could do a salary auction, so the people offering the highest salaries get the Visa's. At least that would incentivise the people adding more value rather than less...

Here are the insidious effects of outsourcing and remote workers. Slowly and surely they will take over. Take a look at this and you will understand the dangers of offshoring and remote work. How Dell lost to Asus.


Where did you get the > 100000 H1B's number?

Easy enough to find through the Wikipedia citations.

153,223 visas were issued in 2013, although some of that is to continue the presence of people who were already here in previous years... It's not all new arrivals.

The US State Department, this page has a graph of H1-B visa issuances and links to some of the reports -


The US Citizenship and Immigration Services web page has numbers as well.

What I take away from the HN/Startup/Recruiting drama:

* Companies don't know how find good people (they think they know how to attract them, but honestly, how can they tell? They don't notice the ones they fail to attract, which I'd argue is most people)

* Companies are unable to produce (e.g. educate) good people

* They want to solve their failures by increasing the search space of people

I have no sympathy at all here. If you want good people you have to pick them up early and educate them. A startup however wants great people now, and they are supposed to be a great match by pure chance. This is classic irrational dream-thinking. You have to be pretty proud of yourself to expect all the good things will come to you just like that.

I suggest an alternative (my) approach, I call it the "secret elite ninja clan" approach:

1. Find out what skills are required in your industry.

2. Become a good at teaching these skills.

3. Find a pupil (as motivated as possible, no skills required)

4. Educate that pupil until a) they are as good as you are or better / b) they loose interest and leave you

5. Make money by utilizing the resulting skills. Also test your pupil's new talents.

6. Make pupil a partner if possible, return to step 1.

Also important: If you meet someone, figure out how that person can generate value, don't get cornered by your expectations. Improvise, diversify.

I am currently with my third pupil (first two were not motivated enough) and she seems to have it in her blood. I think if we keep up we can "grow" a pretty good company of really good people in a decade or so. Of course, there won't be a CEO, or a product, just really good hourly rates.

> Companies are unable to produce (e.g. educate) good people

It's really nice to hear someone say this. I've been out of the tech industry for a while (went back to school) and it is hard to put my finger on it but it feels like there is a trend to shift training and mentorship costs from companies to prospective employees. An example: Data science boot camps. Take smart, highly skilled and educated people, pay them nothing for 1-3m to teach them the concrete skills companies are hiring for, and split the cost savings with the company for hires.

You are basically saying that programming is not engineering but a (highly technical) craft and the best way to foster talent in it is to utilize the age old master/apprentice relationship? If so I agree.

Universities do give the necessary theoretical muscles for a lots of things but they surely do not prepare for the craftmanship aspects (beyond informal cultural indoctrination, if any).

I wonder if there could be any feasible structured approach to merge the academic and ninja-craftmanship paths to learning :)

I never really did academia so I wouldn't know. To be honest, I think the age of academia is over. I have more against these institutions than I see value in them. I say get rid of them, we can do better.

Why can't we teach "theoretical muscle" outside of universities? Wait, was the purpose of universities to maintain the state's control of education? Have they been putting thoughts in chains? Kept science away from the masses? I am highly critical... ;)

I suppose one of the values academia has is providing a garden for information from past generations to persist and be understood. The stuff that got invented in the early industrial revolution could have been produced in the antique greece. Or perhaps wollops of it was - we will not know because what passed for academia then were basically a bunch of mystery cults who guarded their insights with murderous zeal (pythagoreans etc).*

In the pre-internet age, without international academia, there would have been no community with whom to share discoveries so they would benefit all. Einstein would have been a historical nobody without people to understand him, etc.

So to me, you will have to suggest other at least somewhat curated and open mechanisms for living information to persist. Perhaps internet and mans curiosity alone is sufficient to provide this but I don't know...

*From what I remember from one popular historical source or another

Academia moves too slow in adapting to innovation, at least in terms of practice oriented fields like engineering. It's well suited to teach and progress theory but horrible in terms of preparing practitioners.

Good point. I think the slowness of the system is one of its inherent values and not flaws just as long as the slowness does not turn into stagnation.

There already is a name for it - the Cravath System, it's the approach taken by the best law firms.


Nice to be validated by a third party. :)

I've done exactly what you've suggested (and I would be confident enough to say I've done it successfully).

However, two flaws with your suggestions: time and risk. Increasing the search space of people eliminates/reduces both of these.

How much time and risk is doing it this way worth?

I will argue that the presented approach is the "right thing" (reap what you sow) and increasing the search space is the "wrong thing" (why should US companies get more than their 5% of programming talent?).

I don't want US companies to have more talent than the US population can produce. I actually consider their requests stealing. It's not theirs to take. If they can't produce their own talent then they should perish by their own merits.

That being said, I don't believe in the 95/5% figure proposed by Graham. I think everybody can be a valuable partner given enough motivation.

I also think that they are not looking for talent but for slaves. It's really just imperialism in disguise.

You touch on why I don't like increased immigration, which is the stealing aspect. The problem is you take prospective entrepreneurs and great developers from other nations and slave them to US companies at threat of deportation. It is hard to be anything but a wage slave in that environment, which is exactly what companies want, and while the outside developers might have a grass is greener effect going on, is really not in their best interests. There are a lot of places to go if your home country is shit, and you can make a much better deal than an h1b.

Perhaps you feel the same way about labor movement within the US? Have you ever moved from one county, or one US state to another for educational or career opportunities? If someone was to move from Virginia to California, would that be a case of California 'stealing'from Virginia? I think it is, in the mechanical sense of virginia loses talent and taxes, and California gains it: surely what matters though, is that the right of humans to engage in the 'pursuit of happiness' should outweigh the right of a state (including nation states) to restrict such movement.

If you accept that idea, you can still argue that the obligations of a nation state are to promote the wellbeing of its own citizens above that of non citizens, but we shouldn't pretend that the barriers we put up are some noble effort to prevent 'stealing' from poor countries: people own the right to their lives and labor, not their state or government of origin.

Someone else can always offer 20% more than you if they use you to train. This may work on the small scale where you build lasting relationships, but on the scale of large companies? You'd rapidly gain a reputation of being a springboard, and not a place people join to do their best work.

20% more of what? How am I used to "train"?

I'd argue we'd gain a reputation of being really good, and that we improve together. That's not something you can buy. It might not be obvious, but while creating a great agency, this also implies creating a great workplace of my own. So if I feel like abandoning ship I know I have to change something.

Also, what's better than building lasting relationships? I'd stay "small scale" awesome anytime over being just another asset of a "large company".

I'd argue that we live in a time where you don't have to be "centralized large" anymore to achieve big things. Rather we should figure out how to do even better with loose organization paradigms.

McKinsey et al have built incredibly successful franchises by being "springboards", and one of their most powerful assets is their alumni network.

Addendum to #3: Motivation is necessary but not sufficient in software development; it is one of the professions that really does have minimum cognitive capability and working memory requirements, which current research shows to be highly nonplastic via education or training. Genes matter.

> current research shows to be highly nonplastic via education or training

I'd be very interested to see what you're referring to. Citation needed.

edit: The only thing I can thing I can think of that you might be referring to is the recent meta-study of the impact of practice on performance:


I don't have access to the full article so I don't know if they looked at programmers specifically. (Anyone?) They found that, depending on the activity, practice accounted for about 0-25% of the performance. (Depending on where programmers fall in that range, if excellent programmers are 1000x more productive, I'd take deliberate practice for 250x, Alex.)

However, the assumption that, if practice as measured in these studies isn't the answer, then talent is, is obviously false. Quoting this response piece by Alfie Kohn:


"That’s not necessarily true, however. The question posed by Macnamara and her colleagues was appropriately open-ended: “We have empirical evidence that deliberate practice, while important, …does not largely account for individual differences in performance. The question now is what else matters.” And there are many possible answers. One is how early in life you were introduced to the activity — which, as the researchers explain, appears to have effects that go beyond how many years of practice you booked. Others include how open you are to collaborating and learning from others, and how much you enjoy the activity."

I recommend the entire article.

Regarding the first article, they discovered 9331 studies that studied the impact of practice on performance, and narrowed it down to 157 studies based on their criteria. The breakdown in terms of genre, number of studies, total number of participants, and % of variance in performance capable of being explained by deliberate practice was:

Music 28 1,259: 21%

Games 11 1,291: 26%

Sports 60 2,633: 18%

Professions 7 321: 1%

Education 51 5631: 4%

So not programmers specifically. I didn't read the paper very thoroughly and examine their methodology (perhaps their criteria were such that they were allowed to cherrypick results), but it seems to me that the professions category seems to suffer from particularly low sample size.

It's important to note that under deliberate practice, they did not include starting age. To explain the other ~80% of variance, they proposed starting age, general intelligence and working memory capacity. Pm me if you would like to see the article.

Applications are open for YC Winter 2022

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact