When I see cases like this, I've been asking: would the Principle of Charity  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
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.
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".
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?
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?
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.
"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" . 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.
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
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.
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.
Obviously anything is unobjectionable if you agree beforehand to disregard any interpretation you could possibly find objectionable.
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.
So what? Why is that a problem that needs to be solved?
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.
I just explained this here: https://news.ycombinator.com/item?id=8805475
> 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 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.
It turns out that high-wage employees (e.g. software developers) actually benefit from high immigration because of the resulting increase in capital inflows.
> ...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 . PG's essay is not sufficiently described by a rudimentary labor supply curve as you claim.
 http://www2.hawaii.edu/~noy/362texts/immigration.pdf p.156, particularly footnote 8
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.
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 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.
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.
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-he-started-it (even if he 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 intellectually mediocre and emotionally foul. HN has a problem with this, and the principle of charity may be a tonic for it.
This has nothing to do with immigration policy, so I see no reason why everyone on both sides of this (or any) argument shouldn't want to abide by this principle. What reason could there be not to?
This isn't that hard. Let companies bid for H1-B slots. The more they are willing to pay, the better the programmer.
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.
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.
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, 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.
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.
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.
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.
Thus, it is undeserving of charity and undeserving of HN. Do the moderator's duty and get it out of here.
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!"
This just isn't a substantive post. It's full of loaded language, highly questionable assertions, and doubtful anecdotes.
(2) If a phrase that you suggest is used, would this allow you to focus on the substance of the argument?
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 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.
What is that empirical data? I'm curious, not being snide.
Some raw data
A good analysis of several data sets with links to raw data
Nearly everything I've read indicates that immigration doesn't really hurt wages, except perhaps those of recent immigrants.
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.
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.
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.
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.
Or are you insinuating that all changes in salary are due to illegal collusion? Boy have I got news for you!
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).
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.
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 do you want to see happen?
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...
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.
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.
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.
Even pg can occasionally come off as an ignoramus, but don't let that convince you of the fallibility of your glorious leader.
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. :)
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.
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.
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."
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.
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.
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.
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.
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.
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?
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?
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.
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.
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?
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.
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.
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.
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.
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.
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.
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'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?
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.
You could, but that's a really limited version of economics that misses the fact that it's not a zero-sum game.
If it happens, do you think it's realistic that it would happen in some countries but not others?
Wages for developers on the whole in the UK are far lower than the US.
The BigCos are already big enough to have international offices to mitigate these immigration issues. A 20 person startup doesn't.
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.
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.
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.
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.
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.
Now the equity and/or options are a completely different ball game.
Ignoring for the moment I don't think four years is very "brief" or eight is only a "handful" (and it may actually be even more)
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.
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.
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.
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.
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.
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.
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.
Disclosure: I'm an American who has worked for Microsoft in Beijing for 7+ years.
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?
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.
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.
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.
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.
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.
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.
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.
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).
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.
This mobility checks salary bottoms for those who do want to stay (e.g. for the market I'm in over in China).
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.
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.
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. 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?
 — http://h1b-visas.findthecompany.com
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.
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.
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.
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.)
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?
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.
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.
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 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?
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.
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.
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.
In 2012, all 10 of the top 10 H1B employers were offshore outsourcing companies.
In 2013, 50% of all H1B visas went to offshore outsourcers.
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.
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.
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.
Isn't that basically how Canada and Australia's visa programs work?
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?
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.
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.
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.
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.
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.
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.
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.
I've known countless great developers with terrible self-esteem and/or total inability to effectively negotiate. Far more, in fact, than the reverse.
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.
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?
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.
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.
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.
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
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.
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.
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.
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.
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.
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.
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).
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.
$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.
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.
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.
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 Citizenship and Immigration Services web page has numbers as well.
* 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.
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.
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 :)
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... ;)
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
However, two flaws with your suggestions: time and risk. Increasing the search space of people eliminates/reduces both of these.
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.
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.
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.
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.
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.