Tuesday, April 24, 2007

Two Forward and One Back

Got to see a demonstration of Salesforce.com's Appex platform and the AppExchange marketplace at SaasCon. I was very impressed by the demonstration. It's difficult to convey the visceral impact of seeing the cycle of idea->development->advertisement ->installation->evaluation->purchase taking place without either the developer or the customer having to install or manage anything. I caught a glimpse into one of software's possible futures. When all was said and done, though, I had to remind myself what I was really looking at; an application coded in a proprietary language running on a proprietary platform.

Obviously I have no knowledge of Salesforce's plans for Appex and AppExchange, but what I have seen leads me to believe that they have no intention of opening up the system to competition. Sure, sure, anybody can write apps on Appex and anybody can buy these apps. You don't even have to subscribe to the core CRM product anymore, but it's still a closed system. Appex and AppExchange are a big tent in which all sorts of interesting things can take place but, to get into that tent, you have to pay Salesforce for a ticket.

If you've been in the software industry as long as I have, you know where this is going. Neither Salesforce nor any other company is ever going to be big enough or good enough to contain the entire SaaS market. Already there exist SaaS platforms that are somewhat similar to Appex. These and others not yet built will grow in scope and sophistication to compete with Appex . The bigger more successful on-demand ISVs are going to find themselves writing and maintaining multiple versions of their applications for these various platforms. They are not going to like this (multi-platform support is a costly activity that provides no business value to the customer). Eventually there will be some sort of open SaaS platform in which the APIs, management touch-points, deployment model, etc. will be "standardized" (not necessarily by a standards org) and the platform operators will compete on price and service quality (reliability, scalability, etc.). Salesforce and the other proprietary SaaS platform players are either going to have to switch to this open platform or fight an increasingly difficult battle to keep their ISVs and customers locked in.

I'm an idealist so, of course, I'm bound to ask "couldn't we save ourselves the pain and go straight to an open platform?" Obviously it's in Salesforce's short-term interest to lock the ISVs into their language and platform; it's basically a license to print money. But in the long term, when the switch to open SaaS platforms occurs, they will have only hurt themselves. The history of the computer industry is full of companies that got so fat and sloppy on their proprietary systems they were unable to compete when the next wave removed their ability to keep their customers captive.

It seems counter-intuitive, but I think Salesforce's best long-term move is to open up the Appex platform to competing service providers. That way the de-facto, open SaaS platform is Appex, a platform in which they (obviously) have a huge lead. The similarities to Java are obvious but, to be fair, I don't think Sun stood as much to gain from holding onto Java as Salesforce does from holding onto Appex.