Atlas · Details
Being the Averagest
Author’s note
I was deeply influenced by Paul Graham's writings in the late 1990s and early 2000s. This essay was inspired by his "Beating the Averages".
In the essay, I explore how not being able to reliably measure and compare programmers, at a precise granularity, leads to lack of competition and lack of self-improvement among engineering populations. But self-directed self-improvement is exactly what separates the great programmers from the average ones.
AI Notes
A sickbed rant, written on Nyquil during what Steve calls one of the most miserable weeks he'd had in years, with an opening disclaimer promising the next post would contain an Emacs macro by way of apology. Under the grump sits a day job: Steve ran developer training at Amazon at the time, and the essay records his discovery that the whole enterprise stalls on a single problem, getting Bob to show up, because Bob is satisfied. The tour of how companies pretend to measure engineers includes a stack-ranking scheme he abbreviates, with malice aforethought, as the "B.S. system," plus a Dilbert strip, a hungry-bear joke, and the era when practicing golf was considered cheating. Steve files himself among the patients: contest wins, weeks of Java without opening the API docs, and sixteen-odd years before he spotted the pattern in his own recurring flashes of insight.
It reads now like Dunning and Kruger rediscovered from interview-room evidence — cheerful candidates handing over code "not even remotely close to a correct solution" — though their paper had been out five years and the essay never mentions it. The numbers are confessed guesses ("3/4, maybe?" of the world's programmers are stuck), and the proposed treatment amounts to handing Bob some books once his blinders are off, which quietly assumes the hard step already happened. The part Steve paid for personally is a guitar confession: bad guitarists everywhere practice by playing the songs they already know straight through, rehearsing their own mistakes, a habit it took him a decade and one embarrassing lesson from a grandmaster to break.
Related listings
-
2005
Practicing Programming
A few months later — the prescriptive companion. Being the Averagest names the problem; Practicing Programming gives the working answer.
-
2005
Transformation
Same season — one specific example of the problem Averagest names. The refactoring-button generation is the Bob Paradox in one industry.
-
2008
Done, and Gets Things Smart
Four years later, with Steve at Google — the management-side counterpart. Averagest is about Bob; Done and Gets Things Smart is about the small number of programmers who are doing the work Bob can't see he is missing.
From the peanut gallery
Read the rest of the thread · 3 more
-
I've never done it, but I've worked with two of the top 16 collegiate finalists before and they were pretty sharp. (I think they're working for google now.)
-
Yeah, TopCoder's cool. I might try to find a way to bring it in house for an internal programming competition, maybe quarterly or twice a year. Could be fun. It's an amazingly well-written Java application, incidentally; one of the best I've seen.
-
That's a very interesting, complex question, and undeserving of a flip answer from me.
All I can say is: if you're working your ass off, stop right now. Amazon's not worth it. If you have a crappy manager who's making you work your ass off, fire your manager (by finding another group to work in.) There are plenty of bad, insecure, incompetent, neurotic managers in every organization, including ours, and you don't need to keep them in business by working hard to make them look good. I don't know why it takes so long to root out and eliminate bad managers at Amazon, but that seems to be the way of things.
Once you find a group at Amazon where you're actually working because you enjoy what you're doing (which is typically determined more by your team members and your management than by the actual work), then you can come back to this post and start wondering whether you might not want to "work" (in a fun way) to make yourself more effective at doing what you love to do.
What many people find is that when they're in the right environment, doing something they believe in (and being recognized by their peers for it), they work harder than folks who are supposedly "working their asses off." But it doesn't feel like work anymore. When it does feel like work, something's going wrong, and you need to fix it.
If you can't find a suitable team in Amazon, well, there are lots of places that pay higher than we do. I know a few guys who've gone across the street to work for Wells Fargo or Washington Mutual, made 50% more than they do here, and they leave at 3:00pm to go play golf.
My god, life's too short to bust your ass for wage increases. Nobody gets rich off wages.
Are you insinuating that working our asses off year after year for that 40 rating and a 1% raise isn't motivation enough to make us all rise to stardom??
— Anonymous · October 28, 2004 03:12 AM