
Steve Jobs: the difference between superb programmers vs. average ones is 25:1 - tambourine_man
http://www.fastcompany.com/1836987/steve-jobs-the-payoff-of-a-great-employee
======
warmfuzzykitten
Steve wasn't exactly a man of science. He pulled that number out of his ass
and everyone here seems to think it smells great! Why not 100:1?

I'm pretty sure you can find 100x spread in developer compensation at Google.
The ones who got in early vs. the ones who came after the IPO. They got in
early because they were amazing, not because they were lucky. Not.

~~~
taligent
I mean what would Steve Jobs know. He surely hasn't met many decent developers
managing the Macintosh or NeXT teams or as CEO of an IT company with 100K+
employees.

Did it ever occur to you that 25:1 number might come from being in a unique
position to compare the relative output of multiple engineering teams of
similar sizes at Apple ?

~~~
warmfuzzykitten
As I said, why not 10:1 (a commonly repeated, equally unsupported ratio) 50:1
or 100:1? So no, the 25:1 number came from being in the unique position to
spout precise-sounding, unsubstantiated numbers in an environment where nobody
would argue with him. What did occur to me is there are no significant digits
in that number.

~~~
robocat
Being pedantic, but I definitely have seen developers with zero productivity:
so everyone else productive is infinitely better...

Excepting, there are also programmers and teams with negative productivity -
work out the ratio!

------
emehrkay
My boss tried to pull this quote out when he was trying to justify his defense
against me saying we need to unit test.

His question to the developers was "why does it seem like when we make small
changes things seem to break?"

My answer "we do not test, we need to cultivate a culture of testing. It takes
some upfront effort, but it saves in the long run."

His response "that is what separates average programmers from rockstars..."

I cut him off because I knew he was going in the wrong direction, "yeah, the
good ones unit test."

Him: "Well you should be able to know that if you make a change, it will have
an affect on everything else, so you should test that out manually"

Me: "Unit tests cover every possible case that we can think of
programatically. We can easily push a button and see if my change broke some
obscure piece of code somewhere."

Him: "The difference between ...."

I tuned him out and lost a little respect. Oh, we develop a mess of a php app.

~~~
eric-hu
Your boss must be a good developer right? So he should be able to manually go
through the code of 25 developers and know what changes are going to affect
everything else. If that seems naive, stupid or obviously unreasonable, this
is what your boss is asking for, EXCEPT he's also asking you to produce code.

It's hard enough doing this with your own code, let alone collaborating with
others. I'm taking the verbose route to say the same as the other replies:

Quit.

------
swannodette
One of the Jobs 25:1 people - Jean-Marie Hullot. A French Lisp Programmer who
studied at INRIA under Gerard Huet. He invented Interface Builder.

<http://en.wikipedia.org/wiki/Jean-Marie_Hullot>

EDIT: For the backstory on Steve Jobs, NeXT, Jean-Marie Hullot, Interface
Builder, Tim Berners-Lee, and the WWW this is a good read
<http://fds.oup.com/www.oup.co.uk/pdf/0-19-286207-3.pdf>

~~~
taligent
I like Avie Tevanian (one of the original developers of Mach kernel and CSTO
of Apple) and Dave Hyatt (architect of WebKit). Both have really helped change
the industry.

~~~
warmfuzzykitten
I like Bill Atkinson, creator of QuickDraw and HyperCard. I don't debate that
Steve Jobs was able to find and get the best work out of highly talented
people, I just think the 25:1 ratio is nonsense.

------
pudakai
This has long been known about the programmer/developer profession, that the
standard deviation of performance between practitioners is extremely high
compared to many other fields.

The more interesting part to me is why don't wages for this profession follow
this spread. Except for the rare cases of striking it rich on equity, the
compensation spread between mundane developers and excellent top notch ones
with the same skill acronyms and seniority is 3-4x at best and that is
probably an extremely generous estimate.

~~~
ramchip
I think it's simply that code written to be 25x cleaner, shorter, and faster,
will not bring 25x the revenue to the company. Coding skill is only one factor
in the ultimate fate of a product.

A company I worked at has this business model where they recruit extremely
cheap interns (mostly from France) and have them develop products. In their
eyes it's not profitable to pay more for a better coder, since the quality of
the final product doesn't have much impact on their bottom line; they sell to
big business so there's no review site rating their products and clients don't
talk to each other.

~~~
malandrew
You can also be a 25x developer and have net-negative product designers and
biz dev people on your team that completely negate or at least greatly
attenuate the value you contribute.

Besides people, you also have the value of the solution as well. A top
developer creator an overkill solution for a trivial problem doesn't create
much value either. The value of a solution is proportional to the cost of the
problem.

~~~
malandrew
gahhhhhhhhh... I hate autocorrect. It results in typos that make you look like
a non-native writer in the language and produces more interference in the mind
of the reader, not less, because it's easier to read over a simple typo than
incorrect diction.

"A top developer creator an overkill solution..." would have read better had
whatever typo that had lead to "creator" instead of "creating" had remained in
my original text.

At least red underlines instead of autocorrect highlights the error and
prompts you to go back and choose the correct word (<\-- perfect example...
while writing this previous sentence, "word" originally had a typo and was
changed to "work")

------
vibrunazo
95%'ish of every professional in every profession are just tired demotivated
people who just wanna get whatever done and go back home. They'll just do the
bare minimum that won't get them fired.

Programmers are just not an exception to this rule. Nothing to see here.

~~~
crazygringo
A good waiter will never be 25 times better than a bad waiter.

A fast construction worker will never be 25 times faster than a slow one.

Programming is fundamentally different.

~~~
notJim
> A fast construction worker will never be 25 times faster than a slow one.

I actually sort of doubt this. Fields like construction often require quite a
bit on-site problem-solving and quick thinking, simply because making large
physical objects stick together in an ordered way is fairly complicated. When
you consider also that construction work is a team-oriented profession, it
becomes imaginable that the right worker could make the whole team far more
effective.

And actually, even the waiter example, I'm not sure. A great waiter makes the
customer feel like an honored, highly-ranked guest of royalty. A bad one fills
people with hatred for the restaurant and anyone involved in it.

------
wamatt
This 25x thing correlates well with the "reality distortion field"

Also 250% of all statistics make 66% sense -5% of the time.

------
rboyd
Steve also says in this recording that he thinks the talent gap is only about
2:1 for hardware engineers. I'd like to hear from anyone in that field on
whether or not they agree.

~~~
gte910h
Really bad hardware engineers make very expensive, hard to test, shitty
designs that fail intermittently. I think HOW horrible productivity comes out
in HW is different than software.

