4 ms·
"For many years, I have wondered why a great programmer (one who is 10x as productive as a poor programmer) doesn't make 10x the income." For many years I have
by Patient0 13y ago
"For many years, I have wondered why a great programmer (one who is 10x as productive as a poor programmer) doesn't make 10x the income."
For many years I have wondered why so many people think that supply versus demand ought to be a linear function.
Even in the most simple economics 101 scenario you do not end up with a demand curve which is a straight line. It's always a curve, which is usually very steep at one end and very shallow at the other.
If the supply of oil dropped by 50% overnight, what do you think would happen? Those people who absolutely have to have oil, and can afford it, will pay for it, through the nose!
The price will go up (and up and up!) until we are at a new equilibrium in which only 50% as much oil is consumed by those buyers that are still able and willing to pay for it at the new price.
If the supply dropped by 50%, the price will probably go up by a factor of 100 or more, not just 2.
Similarly, in the same article he mentions that some NBA players are paid 1000x as much as some others. But are those players actually 1000x better? No of course not!
The right way to think of this is "supply vs demand for someone with that particular skill set".
The only thing you could reasonably expect is for a more productive/smarter/better person to be paid more than someone else. But how much more is going to depend on supply vs demand for someone with that skill set.
- Bill_Dimm 13y agoFor many years I have wondered why so many people think that supply versus demand ought to be a linear function. Many curves are linear if you zoom in on a tiny enough piece of them. If there are a million 1x programmers in the world, and you increase the supply by a single 1x programmer, the price for a programmer drops, in theory, but only by a miniscule amount. Moving one part in a million along the curve is not enough for the non-linear terms to be significant compared to the linear term. Likewise, adding a single 10x programmer is still almost completely linear -- you are adding 10 more units of programming capacity to the million units that already exist. We aren't talking about a 50% change in supply here, we are talking about a 0.0001% change. Now, if you are a tiny company that needs maybe two 1x programmers, you aren't going to pay 10x for a 10x programmer that will be idle for 80% of the time, but why wouldn't a large company that needs hundreds of programmers be willing to pay 10x for a 10x programmer instead of paying for ten 1x programmers when the cost is the same to achieve the same amount of work? One final analogy: You walk into a store and find that a single roll of toilet paper costs $0.50. Would you expect a 20-pack to cost vastly less than $10 (say $1.00 or $2.00) due to supply and demand? There are practical reasons for there to be some discount for the larger package (less packaging per roll, less human labor to deliver to store shelves, etc.), but a discount beyond that? By the way, the whole NBA analogy is terrible. The goal is to win the game, so being a little better (in terms of points scored) than the average player can have a big impact on the binary win/lose outcome. You don't need to score 1000x as many points to be worth 1000x as much money. In sharp contrast, much of software development is not so binary (perhaps just a few highly technical areas where an average programmer may never create an algorithm that is good enough to work).
- Patient0 13y agoYes these are all very good points. And in fact my oil analogy isn't so great because that is talking the about supply of a largely fungible commodity whereas with programmers the whole point is that different programmers have different skill sets. So it's lots of different markets that aren't really competing against each other (the market for quantitative programmers who know Haskell and financial mathematics vs the market for programmers who know lots about Java, Spring, Hibernate and SCRUM) rather than a single market. And that's a better explanation for why there are 10x differences in pay: the supply and demand in each "niche" is often very different (by an order of magnitude). If you're a programmer working in exactly the same niche as another programmer and you can prove that you're ten times as productive, then yes I suppose you could get 10x the pay... The trick is the first part though (proving that you're actually 10 times as productive).