A few days ago EMC announced that it will be releasing the ViPR code to the opensource community. You may think this is commendable, but I don’t think this is the case. I’ve seen similar moves many times in the past and they’ve all had similar results: indifference and oblivion.
Open source is good
This is not a post against Open source. Open source is a great thing and it usually brings a lot of innovation. Many startups, and some established primary vendors, have chosen open source as a strategy and it is quite amazing to see how successful they’ve been.
Look at Linux, OpenStack, Hadoop or, more in general, the huge amount of projects under the umbrellas of various non-profit organizations like the Apache foundation. When open source is managed correctly and transparently it can attract great development communities and the core of the technology receives continuous upgrades. Some of these developers can then add the “icing on the cake” and sell it to enterprises. In other cases it is all about selling support and consulting services on top of it or leveraging the software to build something different. There are many ways of making open source a profitable business while delivering greater value and innovation to end users.
So, what’s the problem?
I’m going to use EMC ViPR as an example to present my case. A closed source product with a great idea at its root, but inapplicable in many environments. In practice we are talking about a provisioning platform oversold as a Software-Defined storage play (because this is the buzzword at the moment). The first release of the product was compatible only with some EMC and NetApp arrays, while in a second version support for some HDS boxes was added. Just 3 vendors, and just partially. Considering that this product is most suitable only in very large environments, the limited set of supported hardware is a huge flaw. At the end of the day, ViPR is a very cool product but it’s just a proof of concept.
Two years later, after a lot of fanfare, great announcements, repackaging and some big analysts stating that “ViPR will change the world” the product goes through the process to make it open source. Which is theoretically good per se, but the reality is slightly different.
(Wrong) open source tactics
I’ve seen this many times. To accelerate adoption of products, some vendors give them for free through a community edition. These particular versions are not meant to be used in production, they are probably without support and with some limitations here and there. It’s just a way to make the first adoption easier. Sometimes it works, in other cases it is just a confirmation of the initial failure.
Giving away software for free is not bad per se. In fact, allowing a community of enthusiasts to try out the product without charging for it could be a good marketing technique/strategy and it can really help to drive up sales. Look at Nutanix CE for example: when the product is already a success, giving it away for free helps end users and consultants build cheaper home labs, using the product longer, becoming more confident and eventually drives up sales. It creates a virtuous circle.
On the other hand, trying to do the same with a product that hasn’t aroused the interest of customers, resellers and other IT pros, doesn’t change the way it is perceived. Getting back to EMC, this could be the case of ScaleIO. A product that on paper looks marvelous but that is not seeing a real world adoption (for example, I’ve asked EMC to brief me on that product more than once but they’ve never answered… and it’s hard to find documentation, case histories or independent articles on it… just a few paid papers). Now it’s free… but it hasn’t changed the fact that no one except EMC is talking about it and the message is not always clear (at least not to me).
Then comes open sourcing… if giving it away for free doesn’t work (which is what has already happened for ViPR), the last attempt is open source.
This is a nice exit strategy for the vendor after all. This idea of “openness” distracts end users and pundits while the real goal is totally different.
First of all if there is no interest, there isn’t a community. And community also means developers. Albeit the vendor continues to work on the open source code with its developers, you can’t expect the community around it to grow. Over time, the vendor will also slow its contributions down and reallocate resources to other (more profitable) projects, the community shrinks even more, and after a while the development comes to a standstill. That’s it!
The unfortunate end users (early adopters?!) who have adopted the product (which they may like!) have no say… They will get support for some time, and they can contribute to the community if they want new features (I know, it sounds like a joke, but it isn’t).
Closing the circle
When open source is at the base of a project from the beginning or it is part of a company strategy (and we could use company philosophy here!), then I see it as being totally comprehensible and trustworthy.
It becomes fishy when it’s the other way around, and it’s a mere tactical move… and we should always ask ourselves why?
In this article I’ve used EMC as an example, they may have made their move with the best of intentions, I’m sure about that, but something’s fishy… For example, I would be very curious to find out how many paying customers ViPR and ScaleIO have! Has this number been made publicly available?