5 ms·
The 10x developer is not a myth
- dcre 13y agoI'll save everyone the trouble. "Yeah it is!" "No it isn't!" "Yeah it is!" "No it isn't!" I do like your other article about converting imperative list processing code into functional style, though. http://brikis98.blogspot.com/2013/05/10-recipes-for-turning-imperative-java.html http://brikis98.blogspot.com/2013/05/10-recipes-for-turning-...
- plorkyeran 13y agoMy problem with the notion of the 10x developer is that I've never seen a reasonable study into what a 1x developer is. An order of magnitude gap in productivity between the best and the worst is a massive understatement. I've worked with programmers with net-negative or zero productivity, and being ten times more productive than that is trivial. Thus, the real question is whether or not the people who are a tenth as productive as the very best developers happen to be average, and to answer that we'd first need a much better idea of what the "average" developer is.
- eitland 13y agoAs I have pointed out before I have seen on first hand the difference between someone who is great and someone who is filling out the blanks. This is from a few years ago: The "10x" consultant would delete hundreds of lines of code and keep the functionality. He would rewrite things and make them simpler. And in between he was helping the rest of us, explain architecture and generally make sure we were able to follow. On the other hand I have seen other consultants, who were definitely smart[1], who would still do things like: Use tiles (a templating framework for java/struts) to implement authorization. (Cleaning up this fell on me. : ) Add style tags to the body of the page (once the designer found and fixed this it solved all the perceived performance problems we had.) [1]: If you had seen that code you would have agreed. It was some kind of weird artwork :-/ It worked perfect but every little change took full concentration, a significant amount of time and added to templates spanning hundreds of loc.
- TillE 13y ago"Star" athletes are an interesting example. Are they 10x better than the average professional athlete? Well no, probably not. Pick whichever objective statistical measure you like, and you'll probably find that the top five players in the world are maybe 2-3x better than the average pro. Similarly, it's trivial to find thousands of guitarists on YouTube with enormous technical ability, who will never become famous. I'd suggest that the top 10-20% of developers are actually quite good, and being obsessed with the top 0.01% isn't very useful.
- brikis98 13y agoFirst of all, some star athletes are statistically far more than 10x better than the average. For example, the average NHL player scores less than 50 goals in his career [1] whereas Gretzky scored 894 [2] and Mario Lemieux scored 690 [3]. And that doesn't even count their assists, leadership, defense, name recognition (bringing in fans), etc. And I'm not even comparing these guys to other pro hockey players, such as the minor leagues and leagues outside of the US. However, not all sports have "points" that scale the same way, so the 10x number is not as easy to apply. For example, Usain Bolt is not literally 10 times faster than the average professional sprinter; his best 100m is 9.58 [4], where as any moderately fit male can easily hit sub 20 seconds, and I believe any professional sprinter will go under 11 seconds. Nevertheless, I'd guess that in the 100m sprint, a difference of 1 or 2 seconds represents an order of magnitude (or two) difference in ability, even if it's only 10-20% of the time. What kind of odds would you give him in a race against an "average professional"? 10:1? 100:1? 1000:1? Usain is roughly as far above other pro sprinters as Gretzky and Lemieux were against other pro hockey players. I'd also mention that "fame" is a bit of an x-factor. The world is not a perfect meritocracy and there is so much luck and so many external factors that go into being famous that it's not necessarily true that only famous scientists/musicians/writers are the only ones who are 10x. Of course, the famous folks are the only ones I can reasonably use as examples, and fame likely correlates with talent, though that talent may just be at being famous :) [1] http://www.quanthockey.com/Distributions/CareerGoals.php http://www.quanthockey.com/Distributions/CareerGoals.php [2] http://www.nhl.com/ice/player.htm?id=8447400 http://www.nhl.com/ice/player.htm?id=8447400 [3] http://www.nhl.com/ice/player.htm?id=8448782 http://www.nhl.com/ice/player.htm?id=8448782 [4] http://en.wikipedia.org/wiki/Men's_100_metres_world_record_progression http://en.wikipedia.org/wiki/Men's_100_metres_world_record_p...
- LordHumungous 13y agoThere's a bit of a difference between science, where you are trying to find insight on unanswered questions, and engineering, where the problem space is usually well understood. In the former a single brilliant individual can have a huge impact, whereas in engineering it is usually teams that do so. My problem with the "rockstar developer" idea is not so much that it is incorrect, it is that it places the emphasis on the individual over the team, which is the real unit of productivity.
- angersock 13y agoOne of the skills, I think, of being a 10x developer is picking the right tool for the job--picking a language and level of abstraction that will as cleanly and simply solve the task at hand. It takes a good amount of experience and knowledge to know when to, for example, prefer assembly to C to C++ to Bash to Ruby to Prolog--not only that experience and knowledge, but the wisdom to see how that choice affects the other people on your team or future people maintaining the code and environment. (This is an area in which I wish I was further developed.)