What are the differences between three models of "free" software, and why does it matter?
With all the excitement, many people are actually confusing open source software with two other models of "free" software–with potentially serious consequences. The three terms are used so interchangeably by people that their definitions in common usage have got mixed up. We will try to clear up what these three exactly mean and what are the differences.
The word "freeware" has been so overused, its meaning is no longer clear. Today it is often synonymous with "shareware," but for our purposes, I will define "freeware" as "software which can be downloaded, used, and copied without restrictions." (See this definition.)
Legally, the difference between freeware and open source is that you do not have access to the source code. Organizationally, this makes a big difference: There is no community and no development infrastructure around "freeware" as there is around open source software. Thus, while you can use freeware "as is," there is no real way to improve upon it or obtain support for it.
Thus, freeware is "free" as in those "Free Treadmill" classified advertisements.
Shareware is a different concept. You can download and try shareware for free, but if you use it, you are supposed to pay for it. It is developed and released by someone who keeps full control of the intellectual property. The user does not have access to the source code and cannot modify it. There is also no collaboration or community around shareware.
In the end, the only difference between shareware and commercial software is that you can download and try shareware for free. Like commercial software, you are utlimately dependent on the developer of shareware for enhancements and support.
Thus, shareware is "free" as in "Free Sample" at restaurants or grocery stores.
Open source means that the source code is available to all potential users, and they are free to use, modify, and re-distribute the source code. (For more details, see the Open Source Definition.) Legally, the "free" of open source refers exclusively to the source code, and it is possible to have support, services, documentation, and even binary versions which are not monetarily free. (Although some licenses, notably the GPL, requires that the source code always be freely available in such cases.)
In practice, open source usually means that the application is free to users as well as developers. Furthermore, most open source software have communities that support each other and collaborate on development. Therefore, unlike freeware, there are future enhancements, and, unlike shareware, users are not dependent on a single organization.
Open source advocates like to say that open source software is "free" as in "free speech," which is true. Since the user has the source code, it’s also usually "free" as in "free lunch," even if sometimes you’d have to tip the waiter to get good service or pay for the wine.
In the Real World
The differences between the three models can be clearly seen in the kind of software that is available as freeware, shareware, or open source:
- Freeware is usually a very small program, released by a student or enthusiast.
- Shareware is usually a mid-sized utility or application, written by a professional developer or small software company. The developer or publisher does not have the resources to market it, so they release it as shareware with a "try-before-you-buy" business model.
- Open source spans the gamut, but the largest "free" software out there are all open source–Linux, FreeBSD, PostgreSQL, Apache. Before the advent of VCs in the "free software industry," collaborative development around a shared code base was the only way a large free application could be built.
Does It Matter?
At first sight, these differences may seem like legal subtleties. In reality, though, misunderstandings about the true nature of open source can be a serious hurdle to the adoption and development of open source software.
For example, corporate users often confuse "open source" with "freeware." Thus, when we talk to them about "open source," they immediately think of the little utilities that they can download for free. Nice to have, of course, but without support or enhancements, they are dead ends for enterprise users.
(In addition, users confusing "open source" with "freeware" probably contributes to the concerns about the security of open source software. "Freeware" and "shareware" often come bundled with adware or spyware, which is actually not possible with "open source" software: see Is Open Source Secure?)
On the other hand, investors often confuse "open source" with "shareware." Thus, they are investing in companies which engage in the "free sample" business model. Many of these companies try to enforce some form of de facto if not de jure protection of their source code. Their investors may be able to reap the rewards of cheaper distribution, but, in the end, they are still investing in a traditional software vendor, with all the same risks and rewards as before.
Thus, for enterprise users to adopt open source software, they must understand the advantages of open source software over freeware. Only then will they understand that open source software does not share the same security and support problems as freeware.
Similarly, for investors to become really comfortable funding "open source business models," they will have to appreciate the potential of open collaboration in producing better software–and how it improves their risk/return tradeoffs.