Open Source Software Re-evaluated
In the past I have been a vocal opponent of the open source software (OSS) movement, and for the most part, my views have not changed. I have, though, reevaluated my categorical rejection of the principles of the OSS movement. What I have decided is that, anything, when taken in moderation, is all right.
For the record, I still object to the concept of an operating system being developed using the open source development model. As before, I think that OS development should be controlled centrally, and most IS managers will not be interested in the ability to fix the OS themselves. Now, this doesn’t mean that software developers, commercial or otherwise, couldn’t benefit from looking at an operating systems’ source code, just that not everyone should be allowed to tweak the code.
One of the strong points of the AS/400 has always been the availability of packaged applications that filled many common IS needs, especially those that were of a mission critical nature—ERP being just one example. In fact, when you purchase an ERP package, chances are you receive the source code. Does this mean you will pick up development where the vendor left off? Certainly not. Does this mean that customizing the software to your individual needs is easier? Absolutely.
To me, the biggest thing that should deter you from wholeheartedly embracing the OSS movement is accountability. The following excerpt from the Free Software Foundations’ GNU General Public License, the license used by many, but not all, open source software, should make you think twice. I have kept the text in uppercase, as that is how it appears in the license.
NO WARRANTY11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
I find this clause very interesting. If this isn’t Caveat Emptor, then I don’t know what is. Basically, they’re saying, “It’s free; so don’t come complaining to us if the software doesn’t work.” Now this is where accountability comes in. If you download the software off of the ‘net and spend days, weeks, or months trying to get it working, too bad. You have no recourse.
If you buy, for example, Windows NT Server, you have some recourse with Microsoft if it doesn’t end up working. Now, I am not saying that Microsoft will take care of your every need, because they won’t, but they do offer a limited warranty on their software. If you have problems in the first 90 days, they will make commercially reasonable efforts to solve your problem. The definition of commercially reasonable is up to Microsoft, but at least they leave the door open for getting the problem fixed.
In a previous editorial I took what was most assuredly a pot shot at WyattERP, the AS/400 Open Source ERP project. Well, Virginia, there is a Buck Colabro, and the project is making progress. While I may be condemning WyattERP prematurely – the project is just getting going in earnest – the code that I have attempted to install on my AS/400 does not compile—at least not entirely. Who is accountable for WyattERP? Is it the developers who are working on the code now? Is it James Kilgore, the original author of the code? In fact, it is neither. No one is accountable for WyattERP.
To be fair, U.S. law states that software vendors cannot be sued for defects in their products, so you might not fare any better trying to get a commercial software developer to fix your problem. Personally, I think that the bad publicity from releasing software that doesn’t work would spur them to make a reasonable effort to solve your problem.
So how has my opinion of open source software changed? Well, I now believe that OSS has it’s place, it’s just not in the end user shop.
Recent conversations I have had with “industry” figures prompts me to think that OSS is best used when the software being developed is a framework that other software vendors build their products on top of. For example, a systems management framework, which uses plug-in modules from third parties to accomplish many of its functions, would be a great OSS candidate.
The original vendor could release the code to the community of vendors who wanted to develop plug-ins for the framework, and the third party vendors would benefit for two reasons. First, writing a plug-in would be easier with source code available, and second, any problems with the framework could be fixed by the community that is developing the plug-ins.
This concept would also take care of my objections concerning accountability. Since only the framework would be freely distributed, the makers of the plug-ins would have a vested interest in being accountable for the plug-ins that they produce and distribute. Furthermore, the individual software vendors who contribute to the development of the framework would want the framework to be of high quality, as their products would depend on the frameworks’ reliability.
I can’t take credit for this idea, as a former Editor of mine, who now runs a magazine that covers how new business models can be built around the open source software development model, postulated it to me. It does make sense though, and maybe a sensible model like this can lead to more reliable software for everyone, and at the same time, more accountability for software vendors.
Related Editorial:
IBM Opens Source to Toolbox for JavaKeeping an Open Mind on Open SourceWyattERP: Showdown at the Open Source Corral?Free the Code!Things ChangeRelated Information:
Free Software Foundation (new window)