Mi amigo Dave Rosenberg has a thoughtful post on why open source wins against SaaS (Software as a Service). The answer, in a nutshell, is "community." SaaS sets up a one-way relationship with consumers, whereas open source breeds both consumers and producers, and so sustains itself better.
In open source we talk about "the community" and how it creates a larger development society. This is doesn't seem to be the case with SaaS. With Salesforce (or SaaS in general) the efforts that pop up around the product have little to do with a bigger picture and more to do with lateral routes to making money from said product (ie. Offering a function that Salesforce doesn't have). There is certainly nothing wrong with that but it sets a very different tone for how the companies interact with each other as well as with their potential customers....
One other key aspect of community is that open source has both "developers" and "users" where SaaS tends to only have "users" which we should probably term "consumers" since there haven't been many well known contributions from SaaS companies back to OSS projects.
SaaS companies, in other words, lock themselves out of a wide range of benefits that open source is now making standard fare in the industry. Will some SaaS companies thrive? Of course. Salesforce.com is clearly one of these.
Yet, as Dave suggests, Salesforce.com points to one of the biggest weaknesses of SaaS: it's hard to be part of a community/ecosystem as a SaaS player. Marc Benioff tries to disagree in a recent issue of BusinessWeek, but he fails to convince:
"We're a platform company, not just an applications company. We have a vision for the future of an industry."...
All well and good. But Microsoft, Oracle, and IBM long agomade such application-development platforms into cornerstones of their businesses....
But analysts such as Gartner's Yefim V. Natis are dubious that many big companies will sign up anytime soon. "I don't see General Motors writing applications on their platform," Natis says. One of Benioff's challenges is that only companies that have already adopted his customer-relationship applications would likely decide to adopt his software-development platform, so that limits the size of the market.
In short, it's hard to build an empire when you can't assimilate other, lesser empires into your own...at least, not easily. And with SaaS, as Dave points out, it's very hard to integrate the back-end systems. Open source is open to interoperability by design (meaning, by design of its development methodology - technology can still not fit together).
Open source offers the better promise of ecosystem. Ergo, open source wins.