Stevey’s Google Platforms Rant
Steve Yegge, Software engineer, Google (formerly Amazon)
Your company builds excellent products, but they do not work together and outsiders cannot build on them. Is that a small engineering issue, or the central strategic weakness of the company?
The situation
By 2011 Google was the dominant search engine with a string of popular products, including Gmail, Maps, Docs and YouTube. In June it had launched Google+, its most serious attempt to build a social network to compete with Facebook. Steve Yegge, an engineer who had spent about six and a half years at Amazon before a similar period at Google, believed Google had a structural weakness that Google+ exposed: it built products, not platforms.
In October he wrote a long post about this for his colleagues on Google+. He intended to share it only inside Google. He shared it publicly by mistake, and although he removed it within hours, it was copied and became one of the most widely read pieces of writing about software strategy of its time.
What the post argues
Yegge begins by establishing his credentials: “I was at Amazon for about six and a half years, and now I’ve been at Google for that long.” He is critical of much about Amazon, but he says it did one thing far better than Google, and he describes how.
Around 2002, “plus or minus a year,” he writes, Bezos issued a mandate that went “something along these lines.” All teams “will henceforth expose their data and functionality through service interfaces.” Teams “must communicate with each other through these interfaces.” There would be no other form of communication between programs: no direct reading of another team’s database, no shortcuts. “It doesn’t matter what technology they use.” All service interfaces “must be designed from the ground up to be externalizable,” meaning ready to be offered to outside developers. And: “Anyone who doesn’t do this will be fired.” Yegge adds that the memo ended with “Thank you; have a nice day!”
The mandate, he argues, transformed Amazon into a platform company, and the painful discipline it imposed is what made Amazon Web Services possible. Every internal service had to be good enough for strangers to use.
He contrasts this with Google, which he says builds excellent products that are hard to build on. His sharpest line concerns Google’s new social network: “Google+ is a prime example of our complete failure to understand platforms.” He offers principles. “A product is useless without a platform,” and “a platform-less product will always be replaced by an equivalent platform-ized product.” He insists that “Accessibility is actually more important than Security,” in the sense that a platform must first be usable by others. And he states what he calls the golden rule: “The Golden Rule of platforms is that you Eat Your Own Dogfood,” meaning that a company should use its own platform in the same way outsiders would.
The decision it carried
The post did not carry a decision of its own; it was an argument from an engineer. The decision it describes and recommends is Amazon’s: require every team to work through service interfaces designed for external use. Yegge urged Google to adopt the same discipline across its products.
What happened
Amazon Web Services, which grew out of the platform discipline Yegge described, launched to outside customers in 2006 and became one of the largest and most profitable technology businesses in the world, and the foundation of much of the internet.
Google+ never achieved the engagement Google hoped for. In October 2018 Google announced it would close the consumer version, citing low usage and disclosing a flaw in one of its programming interfaces; it closed in April 2019. Google continued to build strong developer platforms elsewhere, notably Android and its cloud services, so Yegge’s critique applied more to some parts of the company than others.
Yegge was not fired for the accidental post; Google’s response was widely noted as tolerant. He later left Google.
How to read it as a product manager
The rant is one of the clearest explanations of the difference between a product and a platform.
A product does something for its users. A platform lets others build things for their users. Platforms can grow far beyond what their creators imagine, because other people supply the innovation.
The Amazon mandate shows the cost of becoming a platform. Requiring teams to use only external-quality interfaces slows them down, removes shortcuts and forces them to think about strangers. Few teams would choose that on their own, which is why it took an order from the top with a threat attached.
“Eat your own dogfood” is a practical test. If internal teams use private shortcuts, the public interface will be second-rate, because no one important depends on it. When the company’s own products depend on the platform, its flaws get fixed.
The post also shows when platform thinking matters most: in products whose value depends on others building on them, such as social networks, operating systems and cloud services.
The decision, examined closely
What triggered it
For Yegge, the trigger was Google+. A social network’s value depends heavily on outside developers and on integration with other products, and he believed Google+ lacked the platform foundations to compete with Facebook, which had invested heavily in its developer platform.
The constraints
Changing a large company’s engineering culture toward platforms is slow and politically difficult, because it imposes costs on every team for benefits that arrive later and accrue to the company as a whole. Yegge was an individual engineer, not an executive; his post could argue but not mandate.
What the author was optimising for
The post optimises for Google’s long-term ability to be built upon. Yegge’s concern was not any single product but the company’s capacity to become the foundation for other people’s work.
Second-order effects
The accidental publication gave the Amazon mandate a fame it might never otherwise have had; it became one of the most quoted descriptions of service-oriented architecture and of how AWS came to exist. It also showed how internal criticism can become public, and how a company’s reaction to it signals its culture.
The counterfactual
If Google had embraced platform discipline across its consumer products, Google+ might have offered developers more, though it is far from clear that would have overcome Facebook’s lead. Social networks depend on users as much as developers. The rant is strongest as a general principle and weaker as an explanation of any single product’s fate.
What is contested
The Amazon mandate is known mainly through Yegge’s recollection, and he was careful to say it went “something along these lines.” Its exact wording and date are uncertain, and some accounts suggest the shift to services at Amazon was gradual rather than the result of a single memo. Google’s defenders noted that it already had successful platforms. The post’s tone, which Yegge called a rant, also invited readers to focus on its criticisms rather than its principles.
Sources and limitations
Quotations were verified against an archived copy used as a course reading at the University of Washington. The account of the Amazon mandate is Yegge’s recollection and is presented as approximate. Details of Google+ and AWS come from widely reported company history. The interpretation of the post’s significance is the author’s.
Before and after
Timeline
- By Yegge’s recollection, Bezos issues his mandate that all teams communicate through service interfaces.
- Amazon Web Services launches storage and computing services to outside customers.
- Google launches Google+.
- Yegge’s post intended for Google colleagues is shared publicly by mistake.
- Google announces it will close the consumer version of Google+.
- Google+ closes for consumers.
For people who build products
Lessons
- Products that expose clean interfaces can become platforms; products that do not stay products.
- Requiring internal teams to work through the same interfaces outsiders would use forces quality and makes externalisation possible later.
- “Eat your own dogfood”: use your own platform the way customers would, or you will not see its flaws.
- Platform discipline is expensive and painful in the short term, which is why it usually requires a mandate from the top.
Take it to your team
Questions to ask
- Could another team, or another company, build on what we have made without talking to us?
- Do our internal teams use the same interfaces we would offer customers?
- Which of our products would be more valuable as a platform than as a product?
Read the original
Sources and rights
Where it came from. Written by Steve Yegge on Google+ in October 2011 for Google employees only and shared publicly by mistake; Yegge removed it quickly, but copies were preserved and widely discussed.
Rights. The post belongs to its author. This page quotes short passages for commentary and criticism and links to an archived copy used in university teaching.
Shrikant Kumar. “Stevey’s Google Platforms Rant: annotated.” Annotated memo, Telos. https://shrikantk.com/memos/yegge-platforms-rant/