Pages

Monday, August 13, 2012

Convenience (and Diaper Stench): Amazon v. Walmart

This is the first post in a series about deconstructing Amazon's Feedback Loop in an attempt to understand both how its components work as individual units and together as a collective system. 


We’ll begin deconstructing the Amazon Feedback Loop by focusing on the Convenience Growth Lever.

When retailers invest in the Convenience Growth Lever, we’re talking about the infrastructure that makes the shopping experience as quick, simple, and hassle-free as possible for customers. The better job you do taking away the headaches of shopping, goes the logic, the more consumers will want to spend money with you. And you grow. 

The convenience infrastructure for traditional retailers revolves around placing stores as near as possible to the greatest mass of shoppers and then supporting those stores with staff, stock, and maintenance to keep them in good working order. It’s largely steeped in real-estate, an asset that tends to get costlier with time. 

For web-based retailers, it’s a different set of variables based largely on technology and the ability to deliver goods to customers as quickly as possible. Technology tends to cost less through its cycles of innovation, allowing users to do more with it at a cheaper price as time marches on. 

Let’s start the convenience discussion with a contemplation of diaper stench. 


Walmart vs. Amazon: A Case Study in Convenience and Diaper Stench


It’s Monday afternoon and my wife informs me that we’re running low on those special fresh-scented garbage bags that line the sides of the diaper-genie device in the baby’s nursery. Given that we’ve recently introduced our seven-month old daughter to the pleasure of solid foods, that they often don’t agree with her little system and therefore wreak havoc on her little outputs, we’re going through a lot of diapers. And keeping those liners in stock is of some importance to our family’s collective olfactory wellbeing. 
Stench Defenders
Walmart is only a ten minute drive away. But I severely dislike going to Walmart. I can only tolerate it if I know we’re going to fill the cart to its brim and thereby not have to go back for several more weeks. But to buy just one item? This could put me in an ill mood for hours. 

So I grab the Kindle Fire, do a quick product search, and buy exactly what we need from Amazon. For a reasonable premium, I get it delivered the next day. The stench crisis is averted. The nursery shall remain an inviting environment for all. 

Herein lies a crucial tension between web and physical retailers when it comes to convenience. I prefer not to step foot in a store at all. And though my wife doesn’t fully concur, she’s quickly learning the advantages of an Amazon Prime membership. Where we find common ground is in some rough calculus of how many items we need at the moment, multiplied by the number of miles we must drive to get to the shopping outlet, times the traffic at the moment, raised to the power of the number of different stores we’ll have to visit to check all the items off our list. 

The bigger the number, the more likely we are to just buy what we need online. 

Convenience for traditional retailers is largely a function of proximity to their shoppers (and number of parking spaces available immediately next to the door). For traditional retailers to grow, gaining access to more customers, they must invest in more and better locations. It is indeed about location, location, location. 

Of course there is a limited supply of good places to build stores, so that real estate becomes a hot commodity, appreciating in value in direct proportion to the number of companies bidding on the spot. 

And stores are costly to staff with workers, stock with inventory, and maintain to reasonable aesthetic and hygienic standards. 

It’s different on the web. Consider these major drivers that define convenience for shopping on the web (and contrast it with the alternative of having to go to Walmart) in context of my own experience buying diaper bin liners for my daughter’s nursery: 

1. Convenience in accessing Amazon’s web site. 

I picked up the Kindle Fire, turned on the screen, and was shopping. Convenience in this sense is a function of proximity to an internet-connected device. I used the Kindle, but I could have just as easily used the iPhone with its Amazon app, my wife’s iTouch, or my laptop. We have an abundance of options for connecting to the web in my house, and that’s a characteristic shared by more and more shoppers. 

Contrast this to the alternative of getting in the car, driving ten miles, parking, walking from the car to the front door, traversing the aisles in search of a specific product, waiting in line at checkout, walking back to the car, and driving home. 

Even if Walmart decided to be more convenient to me specifically, building a full-service store only a mile from my house, I would still have to go through all these steps. My drive would be shorter, but it hardly reduces the overall effort. 

2. Convenience in finding the liners with ease. 

In the search field of the Amazon shopping app on the Kindle, I typed in the name of the liners. In less than a second I saw the specific product I needed along with several alternatives for my consideration. 

Contrast this with the alternative experience at Walmart. I must navigate the store by department, understanding from experience (this is my second child after all) that diaper bin liners are NOT with regular trash bags, they’re with the baby things. Walk to the back corner of the store to find that department, then walk up and down its six aisles until I spot the specific item. It’s not there. There seems to be a generic alternative. Will that work? I better ask a worker. But none are close. Ah, there’s one! She says she has no idea. Great. Guess I better buy it, try it, and if it doesn’t work I’ll return it (another trip to Walmart). 

Amazon seems to know that you buy diaper liners on a repeat basis. While its awareness of my purchase needs can be a little creepy, it’s also convenient that Amazon reminds me of these liners a few months later, right when it’s time to stock back up. This makes the search process even more convenient by eliminating it altogether. 

3. Convenience of my speedy purchase transaction. 

My Kindle Fire came pre-loaded with my Amazon account information, its direct link to my credit card, and the shipping address for getting the order to me. So when I bought the liners, I clicked one button to complete the transaction. The whole thing, from turning on the Kindle to searching for the product to receiving confirmation that my order was received took maybe three minutes. Had I gone through my laptop, it might have taken an additional moment or two. 

If there are more than two people in front of me in a Walmart check-out queue (and there always are more), I’m anxiously scanning all the other lines in search of a faster path to buy my stuff and get out of the store. My blood pressure remains elevated for hours after waiting in those lines. 

4. Convenience of how quickly the liners are delivered. 

I placed the order on Monday, paid a few extra bucks, and had it delivered to my front door by the end of day Tuesday. 

Walmart is open early in the morning, late at night, and all times in between. Had I needed those liners any more quickly, Walmart would have won the convenience battle and earned my business. For customers that need (or want) immediate gratification – and there are many – Amazon and web retailers will never satisfy that need. Indeed, our family shopping trips to Walmart are defined more and more by our own procrastination, putting off buying something until it’s urgent and requires that inconvenient trip. 

Here the point goes to Walmart and store-based retailers in general. They have been protected from web shops taking over more of the turf by what we’ll call the Convenience Barrier: I need those liners, I drive to Walmart, I buy them, and I walk out the door with liners in hand. No delay. Instant gratification. 

Only a few years ago, Amazon would have required three to five days to get the liners to me. Now I can get them next day, and there are reports of people placing orders early in the morning and having the stuff delivered by the time they get home from work. (See a story about that here.) Amazon and its web-based compatriots are clearly making progress here. Though they’ll never provide the instant gratification of store-based retailers (unless they begin to offer that option, too…of opening physical stores), it’s clear they’re working hard to get orders processed and delivered as quickly as possible. 


Conclusions 


So, Walmart’s convenience is driven largely by real estate and location and it must therefore invest in more stores to increase the convenience factor and grow. (And even then, there are pretty much the same steps required to get to the store one mile away as to get to the one ten miles away. The convenience is enhanced over other store-based retailers that are farther away, but building a store nearer to me has only marginal additional convenience when I’m comparing it to a web-based shopping experience.) 

Three of the convenience factors listed above for Amazon are driven by technology (access to its website, ease of searching for products, and speed of transaction). The fourth – how quickly the product is delivered to you – is largely a function of real estate in that Amazon can improve delivery speed by building fulfillment centers nearer to its customers. 

In the next couple of articles we’ll dig deeper into Amazon’s convenience factors by breaking them down between technology and the speed with which it delivers orders to your doorstep.

Thursday, August 9, 2012

Deconstructing Amazon’s Feedback Loop...A New Series

So far I’ve put the feedback loop out there (twice!) with no real explanation. What a tease! Okay, we’ll dedicate this post to deconstructing that schematic at a high level in preparation for building it back up in greater detail.  This is the first article in what's bound to be a longer series than I currently intend. Unfortunately for readers, the Bard's words are lost on me - brevity is the soul of wit - as I clearly lack both. 

Amazon's Feedback Loop

The nature of a feedback loop is that its outputs don’t escape from the system. They get recycled back in, and this creates a compounding effect as they become the fuel to churn the loop and create even more outputs. Which are again recycled back into the system, and the loop churns ad infinitum. 

It’s recursive. It feeds itself. It’s a perpetual motion machine. 

In the Amazon Feedback Loop, the fuel is cash. And in the simplest sense, it runs like this: 

Amazon feeds cash into the loop, investing in the growth levers – lower prices, wider selection, and enhanced convenience. This earns it a greater portion of the broad middle, bringing more customers to Amazon, producing more sales growth in the form of higher volume (more overall sales) and faster velocity (selling its inventory at a quicker rate). The combination of volume and velocity generate more gross profit dollars (cash) as well as negative working capital dollars (cash) which Amazon can then use as fuel to feed back into the loop. 

And the feedback loop churns and churns. Unless competitors can keep up (unless they can BOTH create cash AND make the decision to invest it in the growth levers), Amazon pulls further away with each repetition of the cycle. 

We’ll spend the next several articles reviewing the individual components as we deconstruct Amazon’s Feedback Loop. Next, we’ll focus on convenience, that growth lever which provides the greatest distinction (in a good sense and a bad sense) between web retailers and traditional retailers.

Monday, August 6, 2012

Bringing It All Back to Amazon: Summary and What’s Coming



Amazon's Feedback Loop
After six entries in this series, and spreading it out over two weeks, we're finally getting back to Amazon and its feedback loop. I hope you’ve muddled through all this build-up. 

Here’s the quick version of what we’ve covered so far: 

The three variables most important to a retailer’s growth are prices (the lower the better), selection (the wider the better) and convenience (make it easy for the customer to buy your stuff). There are other variables of course, but these three – dubbed the Growth Levers – earn you access to the Broad Middle of the market…that portion with the most customers. By reaching the broad middle, you get high growth. 

The key that gains you entry to the best growth in the broad middle is low price. Sam Walton discovered a power law relationship between lowering prices and increasing sales, the more you lower them the higher your sales volume goes. And it’s not a 1:1 type relationship; Walton found that it was more like 1:3. So Walmart built its business on this premise, even instituting the productivity loop as a way to keep costs down so it could pass those savings on to customers in the form of lower prices. Those lower prices complete the productivity loop by driving an even higher volume of sales. 

Finally, we delved ever so lightly into game theory, putting together a scenario to test former Walmart CEO David Glass’ statement: 
We want everybody to be selling the same stuff, and we want to compete on a price basis, and they will go broke five percent before we will. 
We constructed the Price-Cost Matrix and tested how each quadrant would fare against the others. Our simple logic led to the equally simple conclusion…Low Cost, Low Price is the best competitive advantage because it will win the price wars. For the fanatic willing to lower prices over and over and over again, he will win as long as his cost structure is the lowest, too. The other competitors will go broke five percent before he does. 

And now (FINALLY!) we’re back to Amazon… 

It's all too obvious that Jeff Bezos spent plenty of time internalizing the lessons of Walmart's success, most importantly that low prices strike a chord with consumers. The lower your price, the more your sales grow...in exponential fashion. 

Bezos would also recognize that the right combination of investment in the growth levers would deliver the astute retailer to the broad middle of the consumer market. That fattest portion of the bell curve distribution. That area that offers the greatest potential for growth. 

And Bezos is nothing if not ambitious. Growth is what he wanted from the outset. And he did not face the same limitations as Sam Walton and other retailers in the physical world of selling goods out of storefronts. That need to balance your investments with the bulk going into real estate (location, location, location). Location was far less important when selling goods over the web. Shoppers could access your store from any computer, and you could ship products from any warehouse location. The merchandise would get to the customers all the same. 

The web - theoretically at least - would allow a retailer to push all the growth levers simultaneously. Moreover, the web could allow a SINGLE web-based retailer the ability to offer the lowest prices, the widest selection, and be the most convenient place to shop online. The implications of that are huge (and I believe Bezos understood this intuitively): if Amazon could push all three growth levers further than anyone else, it had the potential to dominate. It could be the sole place shoppers would go when ordering something (anything!) online. It could be so dominant, shoppers would never bother trying other sites at all. It had, in short, the potential to be UBIQUITOUS. 

In the early days of web retail, a time marked by vicious competition in pursuit of staking a claim to various niches on the internet, the real constraint to any player looking to grow was cash. But with the right amount of cash and the right approach to pushing the growth levers, a single web retailer could emerge as the sole winner. It could be so big, develop such an advantage based on the growth levers, that no other retailer could catch up. 

Of course the corollary of that was also true: any retailer with access to cash and this same vision could invest in the growth levers in pursuit of its own ubiquity dream. 

This was the hallmark of the web retailing in the earliest days. And this is what prompted Amazon's land rush approach to growth. But we'll get to that later. First, let's deconstruct the Amazon Feedback Loop and wrap our minds around what exactly it’s meant to convey. That’s next…

Friday, August 3, 2012

Sophie the Giraffe and the Productivity Loop

This is the sixth post in a series about Amazon's Feedback Loop, the mechanism most responsible for the company's success. See also the previous posts, The Growth Levers in Retail: Price, Selection, ConvenienceUnlocking the Broad Middle (Hint: Price Is the Key); Sam Walton, Panties and Power Laws; The Productivity Loop (Walmart's Feedback Loop); and Why Is Price the Ultimate Competitive Advantage? (Playing Games).

To demonstrate Walmart's productivity loop, let's use a hypothetical example. Let's say Walmart begins selling Sophie the Giraffe teething toys, those over-priced French rubbery things so many moms insist on buying for their tykes (my wife included).  Boutique shops sell them for about $24. I'll assume they buy the toys wholesale for $16 and slap on a 50 percent markup.  (These boutiques are aiming for the less price sensitive customers, those on the right-hand side of our consumer bell curve.)

Sophie the Giraffe

Walmart starts off with a small order in which they pay the standard wholesale price and mark it up 30 percent. Their Sophie now costs about $21, a nice discount to the boutiques, and Walmart sells through the first lot pretty quickly. Seeing some customer demand for the toy, the Walmart merchant now goes back to the manufacturer, Vulli, and places an order for 100,000. They require a 20 percent discount - $12.80 per toy instead of $16 -  in return for the bulk purchase. As you wish, says Vulli, and fills the request.

Even though they sold through the previous order at $21, Walmart sticks with their30 percent markup. They sell the new batch of Sophies at $16.64 and advertise to all the young moms of the world that they have the best price. Moms can't pass it up, and they sell out within days.

Walmart now goes back to Vulli and asks for an order of one million Sophies, but it wants a 30 percent discount this time in exchange for the massive bulk purchase. Vulli complies, Walmart gets it for $11.20 per unit, marks it up (30 percent) to $14.56, and sells out again.

Walmart is churning the price part of the productivity loop, and boutique owners are pulling out their hair as they watch Walmart sell the giraffe for less than they can buy it wholesale. But even if they could buy it at the same price as Walmart, they couldn't afford to mark it up only 30 percent. That wouldn't provide enough gross profit to pay overhead expenses for high rent (convenient location), fancy in-store fixtures, marketing, and management salaries. Their expense structure ties them to the 50 percent markup. They need to charge the higher price; they must get that fat gross profit. They need it to pay their more expensive bills.

So Walmart wins the battle of Sophie the Giraffe on two fronts, both victories stemming from the productivity loop. First, its low price creates large demand, moving the product off shelves in high volumes. This high volume lets Walmart go back to Vulli, order more Sophies, and extract a discount that allows them to sell it even cheaper in the next cycle. Second, Walmart can afford to mark it up for 30 percent because it keeps the overhead low, which makes the sales price even cheaper and helps drive even higher volume sales.

Low price drives much higher volume. The higher volume allows Walmart to buy goods in bulk for a lower cost. And because Walmart has lower overhead, it can afford a lower markup on its merchandise, creating an even lower price and driving even higher volume.

Walmart churns this loop every day across hundreds of thousands of items, constantly widening the price gap and making it harder and harder for competition to catch up.

That's the essence of the productivity loop, whether it's practiced by Walmart or any other retailer.

I think it's fair to assume that, at some point before starting Amazon, Jeff Bezos studied Walton's success in some detail. He made himself intimately familiar with the model of the feedback loop. And he was ready to apply it in his company when he launched Amazon in 1995.


Next, we'll (finally!) get back to Amazon and discuss its feedback loop.

Wednesday, August 1, 2012

Why Is Price the Ultimate Competitive Advantage? (Playing Games)

This is the fifth post in a series about Amazon's Feedback Loop, the mechanism most responsible for the company's success. See also the previous posts, The Growth Levers in Retail: Price, Selection, ConvenienceUnlocking the Broad Middle (Hint: Price Is the Key)Sam Walton, Panties and Power Laws; and The Productivity Loop (Walmart's Feedback Loop).

There are two forms of pricing power: the ability to raise prices and the ability to lower prices. 

The ability to raise prices for your offerings - demanding a premium over competitors’ products based on something you do better than they do - is an excellent indication that your business offers some form of competitive advantage. Otherwise you probably couldn’t charge a higher price. If you sell clothing, you must be appealing to some fashion sensibility. If you peddle electronic devices, your technology must satisfy some consumer desire for functionality, novelty, or style. 

Having the ability to charge high prices can be very nice. Of course you must ask WHY you can charge the high price and whether the cause is defensible and durable for the long-term, or whether it's fleeting and likely to dissipate with time. And, of course, most advantages do go away with time. New fashion designs get mimicked, and the public’s taste for a particular style is fickle. Innovation in technology may provide a lead over the peloton of competitors for a while, but it has a tendency to figure out your tricks, duplicate your product features, and draw you back into the pack over time. 

Most competitive advantages are decidedly NOT enduring. 

But when a company dedicates itself to offering the lowest prices (and maintaining a low cost structure to boot), it has a durable advantage that is very, very difficult to compete against. It is the ultimate competitive advantage, better than those that allow a business the ability to charge higher prices. 

Why? 

Consider this statement attributed to David Glass, the former Walmart CEO: 

We want everybody to be selling the same stuff, and we want to compete on a price basis, and they will go broke five percent before we will. *

To understand Glass’s point, we have to dabble a bit here in a rough (very rough) game theory scenario. (My apologies in advance to actual game theorists.) Let’s reduce the totality of competitive capitalism - that unrelenting tug-o-war among firms to gain the slightest of edge over rivals - to the following matrix (the Price-Cost Matrix) and assume that a company must fit into one of the squares. We’ll further assume that no company possesses an insurmountable competitive advantage over another. Any one company might stumble upon a popular fad that drives sales, or its engineers might cobble together a product whose innovation wows customers. But competitors will eventually figure out the advantage and replicate it. Again, the peloton sucks everyone back in. 

So, in this game, the only true differentiation, over the long-term, is price. Who can offer the lowest price?


Price-Cost Matrix

Your prices can either be high relative to competitors, or low. Same with your costs. So we get four possible combinations to define the companies: High Price, High Cost; Low Price, High Cost; High Price, Low Cost; and Low Price, Low Cost. 

Conventional wisdom says you want to be in the top left hand quadrant (High Price, Low Cost) with the power to raise prices. That’s where the fat profit margins reside, that exalted place where you have low costs to acquire or produce your products yet can sell them with a big markup. Everyone loves profits. In fact I’d go so far as to say most people are blinded in their business decisions by an overwhelming profitability bias

The problem with profits is that competitors notice them. Nothing grabs more attention than high profits. And they’ll want a piece of the action. They’ll enter your market and go after your customers. And in this game scenario of ours, they’ll woo your customers with the offer of a better price. You get sucked into a price war. 

The game theory part of this exercise (and this is ultimately David Glass’ point) is this: you must extend any business competition to its furthest – and even most absurd – logical conclusion. If it’s a price war, you must imagine which player can engage in battle the longest and prevail. 

So let’s imagine it from the perspective of the game’s predator: Low Price, Low Cost. He will source his merchandise at the lowest possible cost, he will maintain the lowest possible overhead, and he will work with evangelical zeal to uncover inventive ways to make both even lower. Then, he will turn around and put a frighteningly slim markup on his items. He offers everything at the lowest price he can muster, and he keeps his costs below those of everyone else. 

He is a fanatic, and he has an insatiable appetite for growth. How do players in the other quadrants fare in a price war against Low Price, Low Cost?


Low Price, Low Cost Starts a Price War

In our game, Low Price, Low Cost goes on the offensive. First, he attacks Low Price, High Cost. This skirmish is easy. Low Price, High Cost is a terrible business that’s stuck, for some reason, in the unenviable position of having to sell its products at a low price yet incapable of revising its cost structure. It’s limping along on tiny margins. All the predator must do is make his prices just a bit lower (enough that a price match would get rid of any remaining profits from Low Price, High Cost), and then wait it out as the wounded competitor goes out of business. It cannot afford to lower prices enough to compete, and so Low Price, Low Cost wins these customers. 

Next is High Price, High Costs. This battle would be easier than the first, expect that High Price, High Costs has some cash on its balance sheet (from earning decent margins over the years) and is foolhardy enough to spend it on the fight. The predator makes his price dramatically lower, the prey tries to match, but in the end it must relent. Its high cost structure means it cannot afford to offer low prices for long. Low Price, Low Cost wins these customers. 

Finally we have High Price, Low Cost. This is a long, drawn-out battle. High Price, Low Cost has plenty of cash to fight, having built deep reserves over the years from its fat profit margins. It price matches the predator, even ups the ante by lowering its own prices further and challenging the predator to match. It can afford this because its costs are so low. But over time its resolve is tested. It had grown used to that big margin (more importantly, its investors had grown accustomed to the profit). It tries to reinvent its culture to dedicate itself to low prices, too. Alas, cultures are very hard things to change. 

The competitors go back and forth on price, creating a war of attrition with both sides taking deep losses. But in the end, the predator remains fanatical about his cost structure. He lowers it more and more, and High Price, Low Cost just can’t keep up. It goes broke, perhaps just five percent before the predator would have. But that doesn’t matter in the end. At the end of the game, Low Price, Low Cost is the only player still standing. 

You may argue that this game is unrealistic. And, of course, it is. The practice of competition is much more nuanced than a hypothetical game. But history shows that, over time, the competitive advantages that protect businesses and allow them to earn high margins…well, they grow weaker as competition learns the secrets. In the long run, everything is commoditized. 

And in the light of this extreme game – one taken to its absurd logical conclusion - we can reconsider David Glass’ words: 

We want everybody to be selling the same stuff, and we want to compete on a price basis, and they will go broke five percent before we will. 

The companies that want the most enduring competitive advantage commit themselves to staying in the bottom left quadrant in the Price-Cost Matrix, as far below and to the left of the competition as they can. To do it, they muster a fanatical devotion to staying low price and low cost. More on that next…

* Quote from Charles Fishman's excellent The Wal-mart Effect

Tuesday, July 31, 2012

Steve Yegge's Google Platforms Rant (With Amazon Pearls Dribbled In)

I couldn't find a way to link to this Google+ posting from the resources page, so I decided to cut and paste it here. Steve Yegge is a programmer at Google and a former Amazonian. I'm sure I'm breaching all sorts of etiquette by doing this, but I rationalize it by saying I want to make sure this piece - with all its pearls about Amazon's transition to service oriented architecture and Jeff Bezos' mercurial ways - is preserved for posterity. 

Steve Yegge originally shared this post:
Stevey's Google Platforms Rant

I was at Amazon for about six and a half years, and now I've been at Google for that long. One thing that struck me immediately about the two companies -- an impression that has been reinforced almost daily -- is that Amazon does everything wrong, and Google does everything right. Sure, it's a sweeping generalization, but a surprisingly accurate one. It's pretty crazy. There are probably a hundred or even two hundred different ways you can compare the two companies, and Google is superior in all but three of them, if I recall correctly. I actually did a spreadsheet at one point but Legal wouldn't let me show it to anyone, even though recruiting loved it.

I mean, just to give you a very brief taste: Amazon's recruiting process is fundamentally flawed by having teams hire for themselves, so their hiring bar is incredibly inconsistent across teams, despite various efforts they've made to level it out. And their operations are a mess; they don't really have SREs and they make engineers pretty much do everything, which leaves almost no time for coding - though again this varies by group, so it's luck of the draw. They don't give a single shit about charity or helping the needy or community contributions or anything like that. Never comes up there, except maybe to laugh about it. Their facilities are dirt-smeared cube farms without a dime spent on decor or common meeting areas. Their pay and benefits suck, although much less so lately due to local competition from Google and Facebook. But they don't have any of our perks or extras -- they just try to match the offer-letter numbers, and that's the end of it. Their code base is a disaster, with no engineering standards whatsoever except what individual teams choose to put in place.

To be fair, they do have a nice versioned-library system that we really ought to emulate, and a nice publish-subscribe system that we also have no equivalent for. But for the most part they just have a bunch of crappy tools that read and write state machine information into relational databases. We wouldn't take most of it even if it were free.

I think the pubsub system and their library-shelf system were two out of the grand total of three things Amazon does better than google.

I guess you could make an argument that their bias for launching early and iterating like mad is also something they do well, but you can argue it either way. They prioritize launching early over everything else, including retention and engineering discipline and a bunch of other stuff that turns out to matter in the long run. So even though it's given them some competitive advantages in the marketplace, it's created enough other problems to make it something less than a slam-dunk.

But there's one thing they do really really well that pretty much makes up for ALL of their political, philosophical and technical screw-ups.

Jeff Bezos is an infamous micro-manager. He micro-manages every single pixel of Amazon's retail site. He hired Larry Tesler, Apple's Chief Scientist and probably the very most famous and respected human-computer interaction expert in the entire world, and then ignored every goddamn thing Larry said for three years until Larry finally -- wisely -- left the company. Larry would do these big usability studies and demonstrate beyond any shred of doubt that nobody can understand that frigging website, but Bezos just couldn't let go of those pixels, all those millions of semantics-packed pixels on the landing page. They were like millions of his own precious children. So they're all still there, and Larry is not.

Micro-managing isn't that third thing that Amazon does better than us, by the way. I mean, yeah, they micro-manage really well, but I wouldn't list it as a strength or anything. I'm just trying to set the context here, to help you understand what happened. We're talking about a guy who in all seriousness has said on many public occasions that people should be paying him to work at Amazon. He hands out little yellow stickies with his name on them, reminding people "who runs the company" when they disagree with him. The guy is a regular... well, Steve Jobs, I guess. Except without the fashion or design sense. Bezos is super smart; don't get me wrong. He just makes ordinary control freaks look like stoned hippies.

So one day Jeff Bezos issued a mandate. He's doing that all the time, of course, and people scramble like ants being pounded with a rubber mallet whenever it happens. But on one occasion -- back around 2002 I think, plus or minus a year -- he issued a mandate that was so out there, so huge and eye-bulgingly ponderous, that it made all of his other mandates look like unsolicited peer bonuses.

His Big Mandate went something along these lines:

1) All teams will henceforth expose their data and functionality through service interfaces.

2) Teams must communicate with each other through these interfaces.

3) There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team's data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.

4) It doesn't matter what technology they use. HTTP, Corba, Pubsub, custom protocols -- doesn't matter. Bezos doesn't care.

5) All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions.

6) Anyone who doesn't do this will be fired.

7) Thank you; have a nice day!

Ha, ha! You 150-odd ex-Amazon folks here will of course realize immediately that #7 was a little joke I threw in, because Bezos most definitely does not give a shit about your day.

#6, however, was quite real, so people went to work. Bezos assigned a couple of Chief Bulldogs to oversee the effort and ensure forward progress, headed up by Uber-Chief Bear Bulldog Rick Dalzell. Rick is an ex-Armgy Ranger, West Point Academy graduate, ex-boxer, ex-Chief Torturer slash CIO at Wal*Mart, and is a big genial scary man who used the word "hardened interface" a lot. Rick was a walking, talking hardened interface himself, so needless to say, everyone made LOTS of forward progress and made sure Rick knew about it.

Over the next couple of years, Amazon transformed internally into a service-oriented architecture. They learned a tremendous amount while effecting this transformation. There was lots of existing documentation and lore about SOAs, but at Amazon's vast scale it was about as useful as telling Indiana Jones to look both ways before crossing the street. Amazon's dev staff made a lot of discoveries along the way. A teeny tiny sampling of these discoveries included:

- pager escalation gets way harder, because a ticket might bounce through 20 service calls before the real owner is identified. If each bounce goes through a team with a 15-minute response time, it can be hours before the right team finally finds out, unless you build a lot of scaffolding and metrics and reporting.

- every single one of your peer teams suddenly becomes a potential DOS attacker. Nobody can make any real forward progress until very serious quotas and throttling are put in place in every single service.

- monitoring and QA are the same thing. You'd never think so until you try doing a big SOA. But when your service says "oh yes, I'm fine", it may well be the case that the only thing still functioning in the server is the little component that knows how to say "I'm fine, roger roger, over and out" in a cheery droid voice. In order to tell whether the service is actually responding, you have to make individual calls. The problem continues recursively until your monitoring is doing comprehensive semantics checking of your entire range of services and data, at which point it's indistinguishable from automated QA. So they're a continuum.

- if you have hundreds of services, and your code MUST communicate with other groups' code via these services, then you won't be able to find any of them without a service-discovery mechanism. And you can't have that without a service registration mechanism, which itself is another service. So Amazon has a universal service registry where you can find out reflectively (programmatically) about every service, what its APIs are, and also whether it is currently up, and where.

- debugging problems with someone else's code gets a LOT harder, and is basically impossible unless there is a universal standard way to run every service in a debuggable sandbox.

That's just a very small sample. There are dozens, maybe hundreds of individual learnings like these that Amazon had to discover organically. There were a lot of wacky ones around externalizing services, but not as many as you might think. Organizing into services taught teams not to trust each other in most of the same ways they're not supposed to trust external developers.

This effort was still underway when I left to join Google in mid-2005, but it was pretty far advanced. From the time Bezos issued his edict through the time I left, Amazon had transformed culturally into a company that thinks about everything in a services-first fashion. It is now fundamental to how they approach all designs, including internal designs for stuff that might never see the light of day externally.

At this point they don't even do it out of fear of being fired. I mean, they're still afraid of that; it's pretty much part of daily life there, working for the Dread Pirate Bezos and all. But they do services because they've come to understand that it's the Right Thing. There are without question pros and cons to the SOA approach, and some of the cons are pretty long. But overall it's the right thing because SOA-driven design enables Platforms.

That's what Bezos was up to with his edict, of course. He didn't (and doesn't) care even a tiny bit about the well-being of the teams, nor about what technologies they use, nor in fact any detail whatsoever about how they go about their business unless they happen to be screwing up. But Bezos realized long before the vast majority of Amazonians that Amazon needs to be a platform.

You wouldn't really think that an online bookstore needs to be an extensible, programmable platform. Would you?

Well, the first big thing Bezos realized is that the infrastructure they'd built for selling and shipping books and sundry could be transformed an excellent repurposable computing platform. So now they have the Amazon Elastic Compute Cloud, and the Amazon Elastic MapReduce, and the Amazon Relational Database Service, and a whole passel' o' other services browsable at aws.amazon.com. These services host the backends for some pretty successful companies, reddit being my personal favorite of the bunch.

The other big realization he had was that he can't always build the right thing. I think Larry Tesler might have struck some kind of chord in Bezos when he said his mom couldn't use the goddamn website. It's not even super clear whose mom he was talking about, and doesn't really matter, because nobody's mom can use the goddamn website. In fact I myself find the website disturbingly daunting, and I worked there for over half a decade. I've just learned to kinda defocus my eyes and concentrate on the million or so pixels near the center of the page above the fold.

I'm not really sure how Bezos came to this realization -- the insight that he can't build one product and have it be right for everyone. But it doesn't matter, because he gets it. There's actually a formal name for this phenomenon. It's called Accessibility, and it's the most important thing in the computing world.

The. Most. Important. Thing.

If you're sorta thinking, "huh? You mean like, blind and deaf people Accessibility?" then you're not alone, because I've come to understand that there are lots and LOTS of people just like you: people for whom this idea does not have the right Accessibility, so it hasn't been able to get through to you yet. It's not your fault for not understanding, any more than it would be your fault for being blind or deaf or motion-restricted or living with any other disability. When software -- or idea-ware for that matter -- fails to be accessible to anyone for any reason, it is the fault of the software or of the messaging of the idea. It is an Accessibility failure.

Like anything else big and important in life, Accessibility has an evil twin who, jilted by the unbalanced affection displayed by their parents in their youth, has grown into an equally powerful Arch-Nemesis (yes, there's more than one nemesis to accessibility) named Security. And boy howdy are the two ever at odds.

But I'll argue that Accessibility is actually more important than Security because dialing Accessibility to zero means you have no product at all, whereas dialing Security to zero can still get you a reasonably successful product such as the Playstation Network.

So yeah. In case you hadn't noticed, I could actually write a book on this topic. A fat one, filled with amusing anecdotes about ants and rubber mallets at companies I've worked at. But I will never get this little rant published, and you'll never get it read, unless I start to wrap up.

That one last thing that Google doesn't do well is Platforms. We don't understand platforms. We don't "get" platforms. Some of you do, but you are the minority. This has become painfully clear to me over the past six years. I was kind of hoping that competitive pressure from Microsoft and Amazon and more recently Facebook would make us wake up collectively and start doing universal services. Not in some sort of ad-hoc, half-assed way, but in more or less the same way Amazon did it: all at once, for real, no cheating, and treating it as our top priority from now on.

But no. No, it's like our tenth or eleventh priority. Or fifteenth, I don't know. It's pretty low. There are a few teams who treat the idea very seriously, but most teams either don't think about it all, ever, or only a small percentage of them think about it in a very small way.

It's a big stretch even to get most teams to offer a stubby service to get programmatic access to their data and computations. Most of them think they're building products. And a stubby service is a pretty pathetic service. Go back and look at that partial list of learnings from Amazon, and tell me which ones Stubby gives you out of the box. As far as I'm concerned, it's none of them. Stubby's great, but it's like parts when you need a car.

A product is useless without a platform, or more precisely and accurately, a platform-less product will always be replaced by an equivalent platform-ized product.

Google+ is a prime example of our complete failure to understand platforms from the very highest levels of executive leadership (hi Larry, Sergey, Eric, Vic, howdy howdy) down to the very lowest leaf workers (hey yo). We all don't get it. The Golden Rule of platforms is that you Eat Your Own Dogfood. The Google+ platform is a pathetic afterthought. We had no API at all at launch, and last I checked, we had one measly API call. One of the team members marched in and told me about it when they launched, and I asked: "So is it the Stalker API?" She got all glum and said "Yeah." I mean, I was joking, but no... the only API call we offer is to get someone's stream. So I guess the joke was on me.

Microsoft has known about the Dogfood rule for at least twenty years. It's been part of their culture for a whole generation now. You don't eat People Food and give your developers Dog Food. Doing that is simply robbing your long-term platform value for short-term successes. Platforms are all about long-term thinking.

Google+ is a knee-jerk reaction, a study in short-term thinking, predicated on the incorrect notion that Facebook is successful because they built a great product. But that's not why they are successful. Facebook is successful because they built an entire constellation of products by allowing other people to do the work. So Facebook is different for everyone. Some people spend all their time on Mafia Wars. Some spend all their time on Farmville. There are hundreds or maybe thousands of different high-quality time sinks available, so there's something there for everyone.

Our Google+ team took a look at the aftermarket and said: "Gosh, it looks like we need some games. Let's go contract someone to, um, write some games for us." Do you begin to see how incredibly wrongthat thinking is now? The problem is that we are trying to predict what people want and deliver it for them.

You can't do that. Not really. Not reliably. There have been precious few people in the world, over the entire history of computing, who have been able to do it reliably. Steve Jobs was one of them. We don't have a Steve Jobs here. I'm sorry, but we don't.

Larry Tesler may have convinced Bezos that he was no Steve Jobs, but Bezos realized that he didn't need to be a Steve Jobs in order to provide everyone with the right products: interfaces and workflows that they liked and felt at ease with. He just needed to enable third-party developers to do it, and it would happen automatically.

I apologize to those (many) of you for whom all this stuff I'm saying is incredibly obvious, because yeah. It's incredibly frigging obvious. Except we're not doing it. We don't get Platforms, and we don't get Accessibility. The two are basically the same thing, because platforms solve accessibility. A platform is accessibility.

So yeah, Microsoft gets it. And you know as well as I do how surprising that is, because they don't "get" much of anything, really. But they understand platforms as a purely accidental outgrowth of having started life in the business of providing platforms. So they have thirty-plus years of learning in this space. And if you go to msdn.com, and spend some time browsing, and you've never seen it before, prepare to be amazed. Because it's staggeringly huge. They have thousands, and thousands, and THOUSANDS of API calls. They have a HUGE platform. Too big in fact, because they can't design for squat, but at least they're doing it.

Amazon gets it. Amazon's AWS (aws.amazon.com) is incredible. Just go look at it. Click around. It's embarrassing. We don't have any of that stuff.

Apple gets it, obviously. They've made some fundamentally non-open choices, particularly around their mobile platform. But they understand accessibility and they understand the power of third-party development and they eat their dogfood. And you know what? They make pretty good dogfood. Their APIs are a hell of a lot cleaner than Microsoft's, and have been since time immemorial.

Facebook gets it. That's what really worries me. That's what got me off my lazy butt to write this thing. I hate blogging. I hate... plussing, or whatever it's called when you do a massive rant in Google+ even though it's a terrible venue for it but you do it anyway because in the end you really do want Google to be successful. And I do! I mean, Facebook wants me there, and it'd be pretty easy to just go. But Google is home, so I'm insisting that we have this little family intervention, uncomfortable as it might be.

After you've marveled at the platform offerings of Microsoft and Amazon, and Facebook I guess (I didn't look because I didn't want to get toodepressed), head over to developers.google.com and browse a little. Pretty big difference, eh? It's like what your fifth-grade nephew might mock up if he were doing an assignment to demonstrate what a big powerful platform company might be building if all they had, resource-wise, was one fifth grader.

Please don't get me wrong here -- I know for a fact that the dev-rel team has had to FIGHT to get even this much available externally. They're kicking ass as far as I'm concerned, because they DO get platforms, and they are struggling heroically to try to create one in an environment that is at best platform-apathetic, and at worst often openly hostile to the idea.

I'm just frankly describing what developers.google.com looks like to an outsider. It looks childish. Where's the Maps APIs in there for Christ's sake? Some of the things in there are labs projects. And the APIs for everything I clicked were... they were paltry. They were obviously dog food. Not even good organic stuff. Compared to our internal APIs it's all snouts and horse hooves.

And also don't get me wrong about Google+. They're far from the only offenders. This is a cultural thing. What we have going on internally is basically a war, with the underdog minority Platformers fighting a more or less losing battle against the Mighty Funded Confident Producters.

Any teams that have successfully internalized the notion that they should be externally programmable platforms from the ground up are underdogs -- Maps and Docs come to mind, and I know GMail is making overtures in that direction. But it's hard for them to get funding for it because it's not part of our culture. Maestro's funding is a feeble thing compared to the gargantuan Microsoft Office programming platform: it's a fluffy rabbit versus a T-Rex. The Docs team knows they'll never be competitive with Office until they can match its scripting facilities, but they're not getting any resource love. I mean, I assume they're not, given that Apps Script only works in Spreadsheet right now, and it doesn't even have keyboard shortcuts as part of its API. That team looks pretty unloved to me.

Ironically enough, Wave was a great platform, may they rest in peace. But making something a platform is not going to make you an instant success. A platform needs a killer app. Facebook -- that is, the stock service they offer with walls and friends and such -- is the killer app for the Facebook Platform. And it is a very serious mistake to conclude that the Facebook App could have been anywhere near as successful withoutthe Facebook Platform.

You know how people are always saying Google is arrogant? I'm a Googler, so I get as irritated as you do when people say that. We're not arrogant, by and large. We're, like, 99% Arrogance-Free. I did start this post -- if you'll reach back into distant memory -- by describing Google as "doing everything right". We do mean well, and for the most part when people say we're arrogant it's because we didn't hire them, or they're unhappy with our policies, or something along those lines. They're inferring arrogance because it makes them feel better.

But when we take the stance that we know how to design the perfect product for everyone, and believe you me, I hear that a lot, then we're being fools. You can attribute it to arrogance, or naivete, or whatever -- it doesn't matter in the end, because it's foolishness. There IS no perfect product for everyone.

And so we wind up with a browser that doesn't let you set the default font size. Talk about an affront to Accessibility. I mean, as I get older I'm actually going blind. For real. I've been nearsighted all my life, and once you hit 40 years old you stop being able to see things up close. So font selection becomes this life-or-death thing: it can lock you out of the product completely. But the Chrome team is flat-out arrogant here: they want to build a zero-configuration product, and they're quite brazen about it, and Fuck You if you're blind or deaf or whatever. Hit Ctrl-+ on every single page visit for the rest of your life.

It's not just them. It's everyone. The problem is that we're a Product Company through and through. We built a successful product with broad appeal -- our search, that is -- and that wild success has biased us.

Amazon was a product company too, so it took an out-of-band force to make Bezos understand the need for a platform. That force was their evaporating margins; he was cornered and had to think of a way out. But all he had was a bunch of engineers and all these computers... if only they could be monetized somehow... you can see how he arrived at AWS, in hindsight.

Microsoft started out as a platform, so they've just had lots of practice at it.

Facebook, though: they worry me. I'm no expert, but I'm pretty sure they started off as a Product and they rode that success pretty far. So I'm not sure exactly how they made the transition to a platform. It was a relatively long time ago, since they had to be a platform before (now very old) things like Mafia Wars could come along.

Maybe they just looked at us and asked: "How can we beat Google? What are they missing?"

The problem we face is pretty huge, because it will take a dramatic cultural change in order for us to start catching up. We don't do internal service-oriented platforms, and we just as equally don't do external ones. This means that the "not getting it" is endemic across the company: the PMs don't get it, the engineers don't get it, the product teams don't get it, nobody gets it. Even if individuals do, even if YOU do, it doesn't matter one bit unless we're treating it as an all-hands-on-deck emergency. We can't keep launching products and pretending we'll turn them into magical beautiful extensible platforms later. We've tried that and it's not working.

The Golden Rule of Platforms, "Eat Your Own Dogfood", can be rephrased as "Start with a Platform, and Then Use it for Everything." You can't just bolt it on later. Certainly not easily at any rate -- ask anyone who worked on platformizing MS Office. Or anyone who worked on platformizing Amazon. If you delay it, it'll be ten times as much work as just doing it correctly up front. You can't cheat. You can't have secret back doors for internal apps to get special priority access, not for ANY reason. You need to solve the hard problems up front.

I'm not saying it's too late for us, but the longer we wait, the closer we get to being Too Late.

I honestly don't know how to wrap this up. I've said pretty much everything I came here to say today. This post has been six years in the making. I'm sorry if I wasn't gentle enough, or if I misrepresented some product or team or person, or if we're actually doing LOTS of platform stuff and it just so happens that I and everyone I ever talk to has just never heard about it. I'm sorry.

But we've gotta start doing this right.

Monday, July 30, 2012

The Productivity Loop (Walmart's Feedback Loop)

This is the fourth post in a series about Amazon's Feedback Loop, the mechanism most responsible for the company's success. See also the previous posts, The Growth Levers in Retail: Price, Selection, ConvenienceUnlocking the Broad Middle (Hint: Price Is the Key); and Sam Walton, Panties and Power Laws.

After three hours of high-energy corporate pep rally, Walmart's CEO - Mike Duke - strides onto stage to bat clean up. The setting is the company's 2011 annual shareholders' meeting, emceed by Will Smith and featuring a cavalcade of senior executive speeches and heart-warming vignettes on the dedication of Walmart associates. 

Whether from Doug McMillon of Walmart International, Brian Cornell of Sam's Club (now departed), or Eduardo Castro-Wright (now departed) of walmart.com, each manager preceding the CEO has used his stage time to extol the virtues of what they call the Productivity Loop: Operate for less through every day low costs (EDLC), which leads to...Buy for less from suppliers, which leads to...Sell for less to customers with every day low price (EDLP), which leads to...GROWTH! And the loop circles around the unifying theme of "Saving people money so they can live better."
Walmart's Productivity Loop
It's a steady drumbeat, and it's loud. Audience members will not leave this meeting foggy on the takeaway points. Yet it's not limited to one meeting. Review any public presentation by a Walmart executive (you can find them here) and you will see that each returns to these same ideas over and over and over again.

Back at the shareholders' meeting, Mike Duke comes on stage, keeping the streak alive with yet another speech about the productivity loop. As he highlights the connection between EDLP and EDLC, he walks to the podium and grabs a well-worn copy of Sam Walton: Made in America, opening it as if he's preparing to read chapter and verse from scripture itself.

Duke says (and I'll paraphrase to a degree),

I picked this book off my shelf and read it again this week, for what must be the third or fourth time. And let me share with you what Mr. Sam has to say about EDLC...'We exist to provide value to our customers, which means that, in addition to quality and service, we have to save them money. Every time Walmart spends one dollar foolishly, it comes right out of our customers' pockets. Every time we save them a dollar, that puts us one more step ahead of the competition - which is where we will always plan to be.'

Duke closes the book and holds it up solemnly for the auditorium to behold. They clap reverently at Mr. Sam's immortalized words just before the current CEO sums it up with this statement: 

No one controls costs better than Walmart because we do it for the right reason. It's for our customer.

Walmart's productivity loop is grounded in the premise that price drives sales volume (as Walton demonstrated with his panties power law). The feedback loop's cardinal trait is recursiveness. As it repeats and churns, the inputs grow larger and stronger, compounding each other in ways that are more exponential than arithmetic. Churning the loop doesn't result in 2 + 2 + 2 +2 = 8, it results in 2 raised to the fourth power (2 x 2 x 2 x 2 = 16). Having lower costs let you charge lower prices. Lower prices lead to a higher volume of sales. The more sales you have, the more you can reinvest in ways to lower prices further. The more you churn it, the bigger that number gets and further away you pull from your competition. 

That's the power law in play. That’s how Walmart grew at such a torrid pace, earning the patronage of the broad middle.

We'll consider a specific example of how Walmart churns its productivity loop to its advantage (and the disadvantage of competitors) in the next post.