2010年9月25日星期六

decisions about the future of the gallon

And so Vlasic's gallon jar of pickles went into every Wal-Mart, some 3,000 stores, at $2.97, a price so low that Vlasic and Wal-Mart were making only a penny or two on a jar, if that. It was showcased on big pallets near the front of stores. It was an abundance of abundance. "It was selling 80 jars a week, on average, in every store," says Young. Doesn't sound like much, until you do the math: That's 240,000 gallons of pickles, just in gallon jars, just at Wal-Mart, every week. Whole fields of cucumbers were heading out the door.

For Vlasic, the gallon jar of pickles became what might be called a devastating success. "Quickly, it started cannibalizing our non-Wal-Mart business," says Young. "We saw consumers who used to buy the spears and the chips in supermarkets buying the Wal-Mart gallons. They'd eat a quarter of a jar and throw the thing away when they got moldy. A family can't eat them fast enough."

The gallon jar reshaped Vlasic's pickle business: It chewed up the profit margin of the business with Wal-Mart, and of pickles generally. Procurement had to scramble to find enough pickles to fill the gallons, but the volume gave Vlasic strong sales numbers, strong growth numbers, and a powerful place in the world of pickles at Wal-Mart. Which accounted for 30% of Vlasic's business. But the company's profits from pickles had shriveled 25% or more, Young says--millions of dollars.

The gallon was hoisting Vlasic and hurting it at the same time.

Young remembers begging Wal-Mart for relief. "They said, 'No way,' " says Young. "We said we'll increase the price"--even $3.49 would have helped tremendously--"and they said, 'If you do that, all the other products of yours we buy, we'll stop buying.' It was a clear threat." Hunn recalls things a little differently, if just as ominously: "They said, 'We want the $2.97 gallon of pickles. If you don't do it, we'll see if someone else might.' I knew our competitors were saying to Wal-Mart, 'We'll do the $2.97 gallons if you give us your other business.' " Wal-Mart's business was so indispensable to Vlasic, and the gallon so central to the Wal-Mart relationship, that decisions about the future of the gallon were made at the CEO level.

Finally, Wal-Mart let Vlasic up for air. "The Wal-Mart guy's response was classic," Young recalls. "He said, 'Well, we've done to pickles what we did to orange juice. We've killed it. We can back off.' " Vlasic got to take it down to just over half a gallon of pickles, for $2.79. Not long after that, in January 2001, Vlasic filed for bankruptcy--although the gallon jar of pickles, everyone agrees, wasn't a critical factor.

By now, it is accepted wisdom that Wal-Mart makes the companies it does business with more efficient and focused, leaner and faster. Wal-Mart itself is known for continuous improvement in its ability to handle, move, and track merchandise. The difference comes if the lister is a component that I'm providing to an application that other people are writing. In this case I don't know much about the APIs of the service locators that my customers are going to use. Each customer might have their own incompatible service locators. I can get around some of this by using the segregated interface. Each customer can write an adapter that matches my interface to their locator, but in any case I still need to see the first locator to lookup my specific interface. And once the adapter appears then the simplicity of the direct connection to a locator is beginning to slip.

Since with an injector you don't have a dependency from a component to the injector, the component cannot obtain further services from the injector once it's been configured.

A common reason people give for preferring dependency injection is that it makes testing easier. The point here is that to do testing, you need to easily replace real service implementations with stubs or mocks. However there is really no difference here between dependency injection and service locator: both are very amenable to stubbing. I suspect this observation comes from projects where people don't make the effort to ensure that their service locator can be easily substituted. This is where continual testing helps, if you can't easily stub services for testing, then this implies a serious problem with your design.


It expects the same of its suppliers. But the ability to operate at peak efficiency only gets you in the door at Wal-Mart. Then the real demands start. The public image Wal-Mart projects may be as cheery as its yellow smiley-face mascot, but there is nothing genial about the process by which Wal-Mart gets its suppliers to provide tires and contact lenses, guns and underarm deodorant at every day low prices. Wal-Mart is legendary for forcing its suppliers to redesign everything from their packaging to their computer systems. It is also legendary for quite straightforwardly telling them what it will pay for their goods.

没有评论:

发表评论