7 ms·
Of course it's a myth. That would literally mean that a 10x programmer can do in one day what it takes the average programmer two weeks. It's absurd. And we're
by mnm1 7y ago
Of course it's a myth. That would literally mean that a 10x programmer can do in one day what it takes the average programmer two weeks. It's absurd. And we're not talking about the worst of the worst programmers in the myth. The myth is about average programmers. What's amazing is that people are willing to and want to believe this nonsense about themselves rather than realize it for what it is: arrogance.
- m0zg 7y agoIf you don't know how to do a thing, or you don't know what to do, or you don't know what not to do, then someone who does know those things will have infinitely higher productivity than you. I personally know people who can do in a day what a "regular" programmers won't be able to do at all, no matter the timeframe. I also know people who can crank out a couple of KLOCs of pristine, nontrivial C++ a day, every day, with ease (whereas a "regular programmer" does like 20, if you average it out).
- pauljurczak 7y agoAgree with infinite ratio argument. Debunking 10x "myth" may work for relatively routine and mundane tasks. For high complexity problems, where there is no off-the-shelf or book solution, you basically have two categories: majority of "competent" programmers, which can't do it and a small minority, which can. Productivity ratio is infinite in such cases.
- mnm1 7y agoThe ratio in your case is not only infinite, it's also meaningless. So what if a hypothetical programmer can code while a baby can't? That's an infinite productivity ratio that's just as meaningless.
- frou_dh 7y agoSay a technically ambitious software startup crashes and burns because, despite their best efforts, they never managed to get a working product out the door before running out of money. If you were asked to do a postmortem on that, would you be insisting that the skill level and productivity of the programmers involved was "meaningless" to the outcome? Not even address it in the report?
- mnm1 7y agoThis has nothing to do with the parent post which is comparing programmers of different skill levels. You want th compare programmers to non programmers. That's meaningless. Of course programmers can program and non programmers cannot. If a company hires non programmers and expects then to program without any training, then yes the skill of the non programmers is not the issue. The sanity and competence of the hiring manager is and is the only thing that would show up in the postmortem. You're going to blame the non programmers for not programming? What do you expect them to do? Are you going to hire someone who is 4'11" and never played basketball before in the NBA? Are you going to hire a janitor to lead your space program? All so you can say that your qualified employees are infinitely better? That's ludicrous but exactly what you're suggesting.
- frou_dh 7y ago> You want to compare programmers to non programmers. No I don't. I said technically ambitious startup because I didn't mean a scenario where the group was too clueless to even program something easy. Read my comment assuming the programmers in that startup scenario are average industry programmers. Does your answer change?
- m0zg 7y agoMy point exactly. And this also has secondary effects in terms of motivation: if a person knows exactly what needs to be done and how to do it, the startup cost is much less, so they'll just go ahead and do it, whereas someone who does not have this clarity and skill could sit on it for hours/days/weeks and just generally drag their feet because it's "hard" for them.
- j7ake 7y agoI would agree with you that it's absurd that the 10x programmer would be 10 times more productive than the average programmer at ALL tasks. But in certain specialized scenarios, it's easy to imagine one programmer being 10x or even infinitely more productive than the average. In other scenarios, the situation could be reversed. Here is an example anecdote of what it means when people talk about 10x programmer. Here the "hero" of the story was infinitely more productive than everybody on the team. Henry Ford had ordered a dynamo for one of his plants. The dynamo didn't work, and not even the manufacturers could figure out why. A Ford employee told his boss that von Neumann was "the smartest man in America," so Ford called von Neumann and asked him to come out and take a look at the dynamo. Von Neumann came, looked at the schematics, walked around the dynamo, then took out a pencil. He marked a line on the outside casing and said, "If you'll go in and cut the coil here, the dynamo will work fine." They cut the coil, and the dynamo did work fine. Ford then told von Neumann to send him a bill for the work. Von Neumann sent Ford a bill for $5,000. Ford was astounded - $5,000 was a lot in the 1950s - and asked von Neumann for an itemised account. Here's what he submitted: Drawing a line with the pencil: $ 1 Knowing where to draw the line with the pencil: $4,999 Ford paid the bill.
- kranner 7y agoThe von Neumann story is apocryphal. I've read it before but it was Nikola Tesla instead of von Neumann in that version. https://www.snopes.com/fact-check/know-where-man/ https://www.snopes.com/fact-check/know-where-man/
- j7ake 7y agoThanks for the correction . I didn’t mean to convey the anecdote as factually true , but only as an illustrative example.
- alkonaut 7y agoFor me the “10x” meme was never about 10x vs the average (which is a unicorn) but rather 10x variation where there are 10x variation within a group of developers. This is very much a thing in my experience, but it’s because you can have a 1/5x average developer and a 2x average developer. That’s a 10x difference. There is simply no limit to how unproductive you can be, but there is a limit to how much you can produce. If you have a group with a very low productivity as average, then a single very good developer can be a 10x developer compared to that group. From the perspective of one of the 1/5 developers this senior “2x average” dev will look like the unicorn 10x dev. Perhaps this is where the myth comes from?
- mnm1 7y agoYour 10x developer is still only 2x the average. That's exactly my point.
- gdy 7y agoI believe that it's your comment which is arrogant, not the 10x-er concept. Have some humility and accept that there are people out there who are immensely more gifted than you are. Aggressive mediocrity is distasteful.
- mnm1 7y agoI thought we were talking about the myth not just slinging personal attacks, but seeing as to how you resort to the latter, I assume you have nothing meaningful to say about the former, let alone an argument against it.
- deleted 7y ago[deleted]
- cryptica 7y agoThis is very short term thinking. You can't tell who is a 10x developer based on a two week project. That project is not complex enough to challenge anyone. You can see 10x or 100x developers only when you have large complex problems that could take years to solve correctly by a regular developer (e.g. scalable load balancers, scalable messaging systems, decentralized trading engines, advanced ERP systems, scalable machine learning solutions). Some of these projects can and do take years to implement, but a 10x developer can deliver in 1/10th of the time. For example, from my own personal experience, I worked and maintained a popular open source project for 5 years (part time), but I rewrote the whole thing (to the same standard as before in terms of meeting functional requirements/stability) in just 3 months (part time); that's 20x productivity. The irony of 20x productivity is that during the rewrite, there are times when I would sit a whole day without implementing a single line of code; just thinking and searching for the best solution to a tiny sub-problem that had significant implications for future sub-problems. So the productivity gains were not a result of faster coding; it was the result of being able to foresee future problems and considering all possible alternatives and possible permutations of design decisions.