Are You a 10x Programmer? Or Just a Jerk?
thenewstack.io
thenewstack.io
A 2nd edition of Peopleware summarises it; the 10x programmer is not a myth, but it's comparing the best to the worst; NOT best to median. It's also not about programming specifically; it's simply a common distribution in many metrics of performance.
The rule of thumb Peopleware states is that you can rely on the best outperforming the worst by a factor of 10, and you can rely on the best outperforming the median by a factor of 2.5. This of course indicates that a median developer, middle of the pack, is a 4x developer. Obviously, this is a statistical rule, and if you've got a tiny sample size or some kind of singular outlier or other such; well, we're all adults and we understand how statistics and distributions work.
Peopleware uses Boehn (1981), Sackman (1968), Augustine (1979) and Lawrence (1981) as its sources. [ "Peopleware", DeMarco and Lister, 1987, p45 ]
If a 1X programmer is taken to be the worst or lowest quartile and not the median or competent programmer then this 10X is pointless and misleading.
This 1x programmer has no productivity whatsoever, has a negative contribution to any project they are on, damage designs and confuse meanings and doesn't even use the results of the time they consume from other programmers to improve because having copied the answer, their boss thinks they are improving and is off their back.
A top quartile programmer would be a more meaningful statement when considering HR decisions particularly since productivity is usually going to drop fast when changing workplace, domain, preferred languages, development styles, and coworkers.
You aren't getting 10x what you would expect given that you are optimistic in whoever you hire.. You are getting about 2.5x iff they are "10X".
The downside is that if you solve hard problems without breaking any sweat, most people won't notice at all. In order to not only perform 10x but also get rewarded 10x you need additional skills of playing politics and marketing yourself.
My favourite recent feedback from a user was that "The system thinks the way I do and it reminds me when I've forgotten something".
The last couple of years I've branched out to putting much more focus on UX and trying to get ahead of what users are trying to get done and so it's nice to see positive feedback on that - It's funny but those little gentle touches that improve a users workflow mean more to them than all the underlying (or not) elegance of the code, it's a bit too easy to stare at a tree closely and miss the forest.
In a field as vast as ours you might be 10x at one one thing and 0.5x on something else entirely.
A project that handles these tasks poorly can easily cost ten times as much as the same task executed well.
Some people will not add, they'll subtract, those should be kicked out quickly.
I'm not talking about experience level, an intern can help if properly guided, but if the dev is not engaged or has poor work ethic that can actually make others less productive.
The push for this team effect where everyone is equal is equally as foolish. 10 programmers producing 1x work will not produce the same work as the 10x programmer because the communication between those 10 will always be slower than one mind.
The problem occurs when the 10x meets the 3x developer. The 3x developer is use to being 3 times better on average so they think they are a 10x developer.
Take a 10x soldier/marine pair them up with 1x soldiers. The 10x soldier will always seem like a jerk to the rest because they know how to survive and will be pulling the team in that direction without discussion.
Put the 10x developer in charge and they will make the most of the 1x team members. Tell everyone they are equal the 10x developer will wonder why no one is pulling their own weight.
The problem is with the flatness of startups or with the easily replacable cog at large org. Everyone thinks that every developer is the same.
Breaking free of that environment probably looks like being a jerk. E.g. using languages and patterns nobody else knows, ignoring work they have no comparative advantage in (documentation, massaging people and bug reports), not writing as many unit tests, skipping peer review, writing harder to follow code, etc.
(By the way, would be very interested in places with a minimum of process)
You can't possibly know that for a fact.
Oh, and "someone on a team doing 10x more average code than his or her peers" is not what 10x programmer refers to.
That's the nature of this beast.
BTW, if you think I can know that, you also seem to think that it's ok to say someone is 10X better than someone else at something that can't be measured.
Did your project ever run into obstacles where >50% of the previous work had to be thrown out?
Still a jerk though. I try not to be, but sometimes.
The worst.
It's a pity that's the first result, because it's flat wrong. This article actually talks about the origin of the claim:
https://www.ybrikman.com/writing/2013/09/29/the-10x-develope...
I believe in 10x programmers, because I have known many programmers over the years, and I can think of many pairs where one was clearly 10x as productive as the other. And I think the reason there are 10x programmers is that our profession tolerates a lot of embarrassingly incompetent people. If someone were 10x as productive as an average developer, that would be truly extraordinary. But I don't see 10x programmers as all that extraordinary, because there are so many people who get paid to program but suck at it so bad, that being 10x as productive as they are is not all that impressive.
Betteridge's law of headlines works here too as they later go on to say that being a jerk and a 10x programmer are unrelated concepts.
Yeah. It looks like the author laid out her views in the first sentence.
> The myth of the 10x programmer persists, but the
> shine is wearing off.
"Myth" implies that they're non-existent, and "the shine is wearing off" implies that she doesn't much care for them whether or not they exist....or maybe there is something to the "myth" that some people contribute extraordinary achievements in a their field.