When to Use Open Source in a Cloudy World
August 11, 2010In a rapidly-changing development environment in which more and more companies are developing platform as a service (PaaS) offerings, is the allure of using open source to to build custom applications diminishing? After all, PaaS providers are looking to make customization easier for end users to achieve without having to delve into the source code.
The issue came up after open source CRM company Vtiger sent me an email in which it claimed it was the “true” open source CRM in the cloud. This line got me thinking about the role of open source in a cloud-based world, and just how much validity the open source model still has for those hoping to customize their apps.
When Richard Stallman famously went on the offensive declaring that SaaS takes away users’ freedom, he did so based on the contention that:
With SaaS, the users do not have even the executable file: it is on the server, where the users can’t see or touch it. Thus it is impossible for them to ascertain what it really does, and impossible to change it.
Stallman’s remarks need to be seen in context; he comes from a perspective that sees these issues purely in black and white: Proprietary software bad; open source good.
Unfortunately for Stallman’s thesis, the world is built in shades of grey. vtiger’s open source comments beg more questions. In the email, Vtiger was quick to say that:
Customers have been asking SaaS companies to open up and give them control to change, extend, customize their individual cloud-based CRM instance. Customers have long wanted the power to get under the hood in their cloud-based implementations, to access their CRM instance’s source code and data and tailor them to their own business needs when necessary.
This comment would have been wholly accurate only a few years ago, when SaaS solutions played entirely at the application level. But what Vtiger and — to a certain extent — Stallman fail to appreciate is that a number of enterprise SaaS vendors are deepening their technology approach and moving down the stack into PaaS offerings.
I’ve often been regaled by open source advocates showing me how, by using an open source application, they’ve created a highly customized solution tuned to their particular requirements. In a world where SaaS providers provide a development environment, these use cases are covered without the need for open source.
As a distinct product example, one needs only to look at FinancialForce, a fully-featured accounting application built on top of the force.com platform. FinancialForce takes core salesforce data, customizes and creates new workflows and data types, and builds an accounting application out of it all.
Examples abound: Salesforce with force.com, Service-Now with their platform, NetSuite with SuiteCloud, Intuit with the IPP and a number of other SaaS players I’ve become aware of under NDA who have PaaS offerings under development. All of these solutions do one thing: provide end users with the ability to highly customize their applications, or even build new applications.
If you accept that part of the value open source brings is the ability to create highly customized variants of the source application, then by extension, the trend of SaaS vendors to move down the stack makes open source, at least to some extent, moot.