I ran across a blog today that offers “10 reasons for an enterprise to use opensource.” I think this list is typical of the kinds of “statement of faith” that you find from ideologues on either side of the open/closed source debate. While this one happens to be pushing open source, it could just as easily have been pushing proprietary/closed source. Here are some of the points, and the issues I have:
Opensource makes you responsible – When you choose the components yourself, you don’t have a vendor to scream at. Or, as is often the case, a whole heap of vendors to scream at, each merrily pointing all known fingers (and a few unknown ones) at everyone else. While you fume and stew.
While the point is interesting, I question the implied premise. That premise is that what’s good for an individual is good for an enterprise. Unless an enterprise is in the software business itself, the back room IT operation is a necessary cost of doing its other business; it is not central to the business plan. As such, the enterprise wants specific services from IT, and other than that it wants it to cost as little as possible and be as little hassle as possible. The IT guy may care about this for personal reasons, but that lends no specific advantage to the enterprise itself.
Opensource makes it easier for you to get married – When your architecture is primarily based on opensource components, software and data integration costs stay low and the process works.
While it is often stated that TCO for open source is lower than for closed source, I haven’t personally seen that demonstrated in any general way. Why should “software and data integration costs stay low” with open source software? The implication, of course, is that these costs are lower than they would be with closed source products in the same niche. Closed source proponents make the opposite claim. That is, they claim these ongoing costs are lower with closed source installations. Can anyone point to research that is definitive either way? (I’m talking about data that support the general claim by the open or closed source advocates; anecdotes of specific cases speak only to the packages being used, and quality/usability vary over a large scale whether software is open source or closed source.) Absent that research, regardless of whether it is an open source or closed source guy making a claim like this, it is an article of faith. It is taken as axiomatic by those who believe it. That does nothing for those of us in the middle who have yet to be convinced. Are these costs really determined by the development model of the software we’re using, or are they determined by the quality and usability of individual packages, regardless of development model?
Opensource makes you cleverer – You innovate faster because you have access to faster innovation. Whenever you look at an opensource ecosystem, try and compare it with a closed-source version. Compare it in terms of the time taken for launching in different countries, languages, whatever. I should say “try to compare it in terms of….”. There is no comparison.
While the idea is supportable that open source users generally have access to “faster innovation,” (that is, more frequent releases), the position that this is necessarily an advantage is debatable. I once worked for a company where our main product was updated and released at least 3 times per week. Our customers were OEMs who packaged our software on new computers. While the company saw this as an advantage for the customer, in fact, more than half of these releases were necessary because of bugs introduced by previous “flash releases.” Ongoing bug introduction is not an advantage to a customer.
If you consider enterprises, as stated above, they are busy doing other business that is central to their existence. IT is a necessary cost of that business. They want a certain set of services, and that set changes over time. But what they need first and foremost is stability. When they go through the extra cost of a product upgrade, they need to have confidence that the users on the network will not be interrupted by that upgrade. So if an enterprise is using open source software (as many do), even if new releases are available quite often, the enterprise is unlikely to be installing those releases on an ongoing basis. Rather, they are going to pick occasional releases that have proven stable for other users over time, and install only those, and only if the releases add significant advantage over what is already running.
While I suspect there are advantages to both development models, and that those advantages might be lucidly presented by advocates on either side, those lucid presentations seem largely to be lost in the white noise of sermons from the faithful.
On another subject, Scott and I will be interviewing Michael Howard and James Whittaker, of Microsoft, tomorrow. The subject of the interviews will be software security, and the institution of the SDL within Microsoft to limit security vulnerabilities in their software. I will post a conglomeration of those interviews later this week. We hope to follow that up with interviews of participants in security management on open source projects.