Atlas · Details
It's Not Software
Author’s note
Probably the craziest thing about this post, written in 2004 a few months before I left Amazon to go to Google, is how eerily it foreshadows the stuff I'm yelling about in the Platforms Rant fully seven years later. This post recounts a good number of the "Indiana-Jones style learnings" we were grappling with back then, as we moved to a service-oriented architecture at Amazon.
I make a bunch of predictions, by sketching what needs to happen. My post predicts lambdas/serverless in the "Tradition #3" section. It also predicts that C++ will largely die out on the server side, which has mosty come true. Overall, pretty decent read, and almost futuristic for 2004.
AI Notes
Steve wrote this one for his fellow Amazon engineers, and it reads that way: it assumes you know what Obidos and Gurupa are, cites the internal recruiting tool by acronym, and at one point timestamps itself at 2:47 a.m., mid-thought. The method is to haul out one Software Industry certainty at a time (lifecycle models, the never-rewrite rule, the app/library divide) and check whether it survives the move onto servers you control. Joel Spolsky's "never rewrite" essay gets named and disputed head-on. Much of what results now reads as plain common sense, which is the tell: none of it was common sense in October 2004, and the industry took years to arrive where this rant already stood.
The predictions get graded elsewhere on this page, so a different tip: read past the ending. The original comment thread is still attached, and it includes a question from an engineer who signs off "I'm in AWS" — this in 2004, before S3 or EC2 existed — asking whether Amazon ships too fast, and Steve's reply defending launch-early, launch-often with a nod to Dick Gabriel's "Worse is Better." The piece is baggy even by Drunken Rants standards. The wiki enthusiasm runs several paragraphs past its point, two separate wind-ups against C++ both end with a promise to write that essay later, and the numbered Traditions give up at "Tradition #N: <Your Tradition Here>". The mess is part of the record; nothing else in the archive catches Amazon reasoning its way out of the software industry in real time.
Related listings
-
2006
Good Agile, Bad Agile
The following year, on the same gap from the other side. It's Not Software says the lifecycle isn't Waterfall and isn't Agile; Good Agile is the long account of why Agile in particular fails for the kind of work Amazon was doing.
-
2011
Platforms Rant
Six years later, the same insight at full strength. It's Not Software names Servware; the Platforms Rant says the product is the platform you accidentally built underneath the Servware.
-
2010
Business Requirements are Bullshit
Five years later, on what falls apart when you keep using the Software-industry playbook in a Servware shop. The 2005 piece predicted exactly the kind of mismatch the 2010 piece is angry about.