Free and Open Source Software
Quartex technologies, although not fanatical about the matter, is releasing most of its' software under open source licensing. There are many of these licenses to choose from and explanations of some the different licences can be found here. We have chosen to use the GNU General public license (GNU GPL), now in version 3, and in some cases the GNU Lesser General Public License (GNU LGPL), principally because of its widespread adoption and relative ease of understanding. The excellent GNU web site, www.gnu.org, provides comprehensive information on these licenses. But what are the salient points?
To understand the GNU GPL, one needs to understand the term Copyleft. The term is related to copyright, but the change of name indicates that far from being a restriction on users, the owner of the copyright, while maintaining his copyright, explicitly gives permission to others to use, modify and distribute software as long as this is done under the same terms and conditions. Hence "Free" does not mean free in the financial sense, rather it means free in the sense of being liberated - users are free to do what they want with the software as long as they allow their users the same freedom. This is the concept of copyleft, and forms the basis of the GNU GPL. The foundations of the GPL can be stated as
- the freedom to use the software for any purpose,
- the freedom to share the software with your friends and neighbours,
- the freedom to change the software to suit your needs, and
- the freedom to share the changes you make.
What does this mean in practice? Importantly, it does not mean that you cannot charge for distributing the software, although you need to bear in mind that once you have distributed it once under this license, that user may distribute it at no charge. However it does mean that you cannot charge a restrictive and repetitive license fee. Neither does it mean that you may not charge for services around open source software. For example, Sugar CRM, an open source customer relationship management application, is a complicated application. Novice users will require assistance in setting up and configuring the system, as well as training and support. Equally importantly, it means that your software may be improved as a community of developers may extend and enhance the software offering.
The GNU LGPL, on the other hand, allows for the use of software or libraries in proprietary programs. In general, libraries are released under this license in order not to restrict their use by proprietary developers. The example quoted by the Free Software Foundation is that of their C Library. There are plenty of other competing C libraries, and releasing this library under the LGPL provides C developers with more choice, and as a result allows a greater adoption of the library. However, where there are no competing products, use of the GPL is recommended as it forces developers of software using these products to release their software under the GPL, increasing the range and scope of "Free" products.
For more information, go to www.gnu.org, and they are hereby acknowledged in the compilation of this article.