Monday, January 3, 2011

Open source and the other kind of software

When talking about open source software, it is often necessary to mention software that is not open source. Most people use the terms "commercial" or "proprietary" to classify the other kind of software. But neither of these words are right because open source software can be both commercial and proprietary.

Commercial means relating to commerce. Many open source software applications are built by software companies for the distinct purpose of engaging in commerce. We even talk of "commercial" as a classification of open source software: "commercial open source software." Open source applications can also be proprietary. Proprietary just means it is owned by someone. It is up to the owner to decide how much he wants to share his property. Putting an open source license on a software application doesn't make it a public good. An open source license is like any other license in that it states terms of use. You need to own the software in order to put a license on it and enforce it. The owner of an open source licensed application can also change the license to another license that either does or doesn't qualify as open source.

Given the inadequacy of "commercial" and "proprietary," I find myself using the terms "closed source" or non-FOSS (FOSS is an abbreviation for Free/Open Source Software). Non-FOSS is probably more accurate because many software companies practice a "shared source" model where they make the source code available to their customers. This doesn't meet the open source definition but it does invalidate the description of being "closed." If we want to be be totally technical about it, we could call software that isn't open source "OSDNS" (Open Source Definition Noncompliant Software) but that doesn't exactly roll off the tongue.

As academic as this little naming exercise appears, I think that it does reveal the nuances of software licenses more than "good open source, bad proprietary." Open source is just a classification of software licenses — a classification that is not always useful when it comes to assessing the suitability of the software. Open source licenses don't make software better, altruistic, communal, collaborative, or anything else. The ecosystem that supports the software defines what it is. The license is just one aspect of how the ecosystem operates. Interestingly, there is a meme within the Plone community to move away from the "open source" branding to something like "community shared development," which intends to focus on how the software is developed and managed (rather than its licensing) and differentiate from commercial open source.