I disagree and think superstars also exist in software programming and can be identified. A 3-sigma[1] subset of top performers can exist in both athletic and intellectual endeavors.
IMO, I think the following are not just examples of 10x programmers but more like 100x or 1000x. It's not just because they're "faster and more productive" but because they can also solve problems most others can't: John Carmack (Doom, Oculus), Fabrice Bellard, Linus Torvalds, Charles Simonyi (MS Word & Excel), Dave Cutler (Windows NT kernel), Jeff Dean (Google mapreduce and later AI with Google Brain).
Whether or not future programmers of their abilities will trend towards using talent agents to negotiate like Brad Pitt remains to be seen. I'm guessing they won't.
[1] https://en.wikipedia.org/wiki/Normal_distribution#/media/Fil...
There are hundreds of thousands of companies whose needs are so pedestrian (whether they want to admit it or not) that paying for John Carmack wouldn’t be worth it. There’s no La Liga team that wouldn’t get better (and wouldn’t make a shitload more money) with Messi on their roster.
Adding Carmack to one of the "hundreds of thousands" of companies would be like adding Messi to your local pub team: it would make it better, you'd win your local league, but it wouldn't pay the $20 million a year that would make it "worth it".
The number of companies that could consider hiring Carmack is maybe 1-2 orders of magnitude above those who could consider hiring Messi.
So purely from a recruiting standpoint; if this sort of phenomenon happens at an undergraduate level, I can believe that just having John Carmack on your team alone can bring more talent in, for potentially cheaper just because of increased supply.
Just because somebody can add value doesn’t mean that their current cost is equal to their value. Any top flight club in the world would fall over themselves to pay Messi’s weekly wages. Nobody wants to pay nearly a billion euro for that right.
You could argue that someone like John would invent a system in a few months that simply took a very low level engineering mind to run that would cover all those needs. You pay him for one year and get ten years of business out of his system.
There are 10x programmers, even 1000x programmers. They invent protocols, programming languages, databases, IDEs, tools, operating systems, cryptology, algorithms, frameworks and libraries that are used at all your 100,0000+ companies doing pedestrian stuff to do the pedestrian stuff. Try to imagine a completely closed source world where everything had to be made from scratch. What percentage of those pedestrian companies would succeed?
These people are and were giants that have provided billions in revenue to the world economy. That's indisputable. We stand on their shoulders, and because they are broad enough to look like an endless plain to us in the multitude, we claim that there are no giants.
What the person wrote before is ludicrous because coding scales much, much better than sports
I'm not a big fan of the superstar idea. The only area where you can even have indentifiably top performers is in sports, where you have a contest that someone is going to win, and you want to pay up for the guy who is marginally better than the next guy.
*
I've worked at one of the trillion dollar companies, at a smaller company that sold for $4 billion, and now run my own startup
In each case I saw examples of this
For the company that sold at $4 billion, the top two developers were at least 100x developers
at the trillion dollar company, there were many developers in 10X to 100X range, not just a few
and in my startup I'm lucky to have two 1000x developers
Of the examples given, I'd say
Linus and Carmack and Simonyi for sure
I'd also say Stallman
* I also had 2 college friends who were somewhere between 100X and 500X
one of them coded an entire stock trading platform as a project for a one semester college course. The Professor was astonished and so was everyone else It was fully working
the other worked on making a mobile version of an enterprise product. His team freaked out because he did more on his solo project than a 200+ developer team that was the 'official team doing it'
seems they gave it to my friend/college mate just to see if he had some new approach. They didn't expect he'd do more than the official team
*
People don't understand mindset
we had one person in our college, this was back in 1999, he coded a FULL multi person chat software (like ICQ, but not as polished) in his first year summer vacation AS A HOBBY
If you really think someone like that is 'only marginally better' than people who clock in for 30 hours and then run back for 'work life balance' then you don't really understand coding
Coding is an art and a science
and you need practice and you need a sort of neural network in your head that keeps learning stuff specific to coding
Later, at a FAANG company, I was working on a new full-stack system with a team of 4. It took us 2 months to plan and build out about half the functionality. Progress felt a bit slow, but no one was alarmed by how long it was taking and things were basically on track. Then my team hired a senior guy, internal transfer, with about 10 years of experience. He got up to speed on the project and did the other half of the work himself in about two weeks. The bottleneck was the rest of us reviewing his code (which was pristine; he was on the internal standards committee for the language we were using). I realized that sedate big-company speeds had become normalized for the rest of us, while this guy had never stopped asking himself if something could be done faster.
If I'm worth my salary (debatable) this guy was worth 10x mine.
as the whole moneyball thing shows even that incentive might not be enough to make people figure out who really is productive or not.
Other comments have started to point out how wrong this is, but to put the final nail in the coffin, I just want to point out that "9 women can't have a baby in 1 month" is a principle that applies to software development generally. To think that one can casually split a project 1000 ways is assuming the mythical man month.
But I never said that. Quite a lot of people are reading my comment wrongly.
Like I said, I don't doubt that some devs are more productive than others. The question is whether it's worth paying up for the top guy, as opposed to the next guy. I never said you can just divide the top guy's salary by n average guys.
In a sports situation, the power law is much steeper. It's adversarial. And all the merchandise arguments connect to this too, it's all the same, the top guys kill and eat everything, everyone else around them are like housekeepers, they have work because it would not make sense to have CR7 do anything other than score goals. It's even well known that he doesn't track back, others have to fill in the defensive hole for him, and it's worth it.
It's also a principle of good software that other people should be able to understand your code. That's cooperative. Number 2 might be worse than number 1, but he doesn't get pummelled. Hopefully if you have a top character on your team, he helps everyone get better.
It's often not very obvious where the productivity is coming from, though of course everyone wants you to think it's them. In sports you can have the entire movement history of a player for every match they've ever played in. You know who is fast, who scores, who makes the passes, etc. And you have a well defined metric for what the goal is, and those goals have been static since the dawn of time. In business, you have constantly moving goalposts. Quick and dirty can beat well-thought, best-practice engineering. People have heterogenous roles, and you don't know what they're doing every minute of every day. That makes it a lot harder to think about who is better.
This all leads to the curve of reasonable pay being a lot less steep. I'm not saying there's no curve.
There are games written by one person that are more fun and sell better than games written by teams of 1000. Some one-man open-source libraries are used by ten people, some are used by millions. The degree to which you can control that is your multiplier.
Ever been in a design review meeting where some junior guy who has just joined the team asks a stupid question, and an attempt to answer this inadvertently finds what would have been a very expensive to fix design issue?
Now that might be the only really significant contribution that junior guy makes to the project, but it might have just saved millions, or saved the product, but I bet if you've been in that situation you don't find them heralded as some sort of uber programming hero.
If however the exact same stupid question leading to the exact same problem was found by your super-expensive rockstar programmer, chances are that management would get to hear about how they had saved the project, and their lavish compensation is totally justified.
I'm sure there's a lot of very competent makers in every field who don't get called up to make the thing they are good at, that people also want.
The problem is that while I think some devs are better than others, I'm not a big fan of the superstar idea. The only area where you can even have indentifiably top performers is in sports, where you have a contest that someone is going to win, and you want to pay up for the guy who is marginally better than the next guy.
I don't doubt that the Django guy would be useful for writing a Django app. The question is how big is the gap between him and someone who's been using Django for a few years, even without contributing PRs to the project. Do the thought experiment in your head of whether you could tell the difference between code written by one guy or another. For instance you are given a load of repos, how big is the set of people who aren't the original guy? My guess is you can find quite a few people who can use it properly without being the main guy. That's kinda the point of a framework.
You couldn't do that with sports. If MJ or LeBron had had bags over their heads, you would figure out who they were, the group of maybe-MJs would shrink very rapidly down to a small set, and you would be justified in paying them millions.
The other difference with sports is you don't have a fixed team size. You found a 10x guy, good for you. Now with the 999 other people you have 1009 people's worth of productivity. In a sports team, you absolutely want CR7 or Messi, you aren't splitting the pie 1000 ways.
Music is similar. There's only so much appetite for music in the world, and a band is only a handful of people, so you can pay up for the top people.