After a cascade of emails from CEO Marc Benioff over the weekend and a hurriedly arranged briefing with Salesforce.com product managers yesterday, I finally understand what AppExchange — the company's new 'marketplace' for on-demand applications — is trying to be. As I wrote earlier, it's certainly not what I would call a marketplace. But it has other capabilities that definitely advance the state-of-the-art in re-use and sharing of on-demand applications.
Part of the trouble with the analogies to eBay and iTunes that Salesforce.com's marketing people have tried to come up with to convey the essence of AppExchange is that there is, in truth, no direct analogy currently in existence. The most important aspects of AppExchange are things that no one has successfully achieved before.
This is a reflection of the fact that on-demand applications are still relatively new. They tend to get adopted in isolation, as one-off implementations. Although that adoption model has served Salesforce.com well in its early years, it's not going to be enough to fulfil its long-term aspirations. Salesforce.com is not interested in becoming the on-demand equivalent of Siebel (especially not now). The company aims to become the on-demand equivalent of Oracle and SAP — a single source of every major application required across an enterprise — but to do it by emulating Microsoft's business model, which provides a default platform that an array of partners develop for (as I wrote last month, pitting the free market innovation of an ecosystem against the command-economy development resources of today's giant vendors).
The problem it faces is one of herding that ecosystem in the right direction. Very few companies can match Salesforce.com's 5-year experience of delivering on-demand applications. There's very little shared wisdom out there about how to design and implement them, how to deliver them and what the business model should be.
How to bill and pay for them is just one small element of that unknown territory, and although people like me get very worked up about it (because it will be important in the future), it's actually a very minor element for most of Salesforce.com's customers and partners today. Once an enterprise is ready to sign a contract, it's going to want to negotiate the price anyway, so on-demand billing and payment isn't really relevant. What it does want is to have a free trial of the application while it makes up its mind, and to avoid a lengthy training and implementation process while it sets up the trial.
Salesforce has therefore concentrated on features in AppExchange that make it as easy as possible to get started with an application, such as packaging it with a free trial mechanism, giving it a known look and feel and a common data model, building it with a proper separation of concerns so that it can be reconfigured for each new implementation without having to rewrite the underlying code, and making sure it operates to consistent quality of service and security standards. Another feature that's coming along will be the ability to share an application privately, within a specific enterprise account, so that perhaps one of the main uses of AppExchange will be to share custom applications within an enterprise or an extranet, rather than procuring third-party applications.
All of this is very new stuff (and far from being a replay of 1998), which of course begs the question of whether there's a market for it. My next posting will give my considered answer to that question ...