GNU GPL is a free open source software license, that facilitates FREEDOM of distribution. The word free here, is nothing to do with money, but is attributed to freedom of distribution. Software licensed under GNU GPL can be sold for a fee as well and thus, you can have commercial GNU GPL license based software too! - though its not going to be as easy, as we put it here. As per the GPL license, the developer of the software, must make the source available openly for distribution, or must provide the same on demand, without any restrictions to whom so ever wants, if at all, the developer decides to distribute it - which is normally the objective of development for a developer. This ensures that the users utilizing the software enjoy the complete freedom associated with GPL and can actively participate in the process of improvements of the software
[B]What GPL means to a customer?[/B]
As a customer or a user, you can download and use GPL software on your systems without any restrictions. You can also modify the code and customize it to your needs. But if you decide to distribute or release the modified version to someone, then your work must also be licensed and released under GPL. The only credit that you get, is to add your name to n the copyright notice of each modified file. The most important point to note here is that, GPL does not impose any restrictions until you decide to distribute it further, with or without your modifications to it.
[B]What should the developer do, to his work licensed under GPL?
For using the GPL license for your product, the developer must add two elements to each source file of the program.
[*]First is the copyright notice in each file
[*]Second is the statement of copying permission that says that, the program is being distributed under the terms of GNU GPL or LGPL. The copyright notice should mention the year in which the release is going to appear.
[/LIST][B]Who should embrace GPL?[/B]
GPL is not for you, if you are an establishment with objective of creating proprietary software. GPL insists on distribution without restrictions, if the user decides to. If you want to contribute to the open source community without any restrictions, then GPL is the license to be used. It guarantees distribution without any limitations.
[B]Co-existence of GPL software with proprietary systems[/B]
There are cases when GPL-covered software can be distributed with existing proprietary systems as well!. But the free and non-free applications should not be combined in a way that it develops effectively a single program. For example, if you can use them as an editor and a shell (or the compiler and the kernel), they can be treated as two separate programs. If some program uses fork and exec to use plug-ins, then the plug-ins will be treated as separate programs. GPL in this case can be used for the plug-in without any special requirements. This increases the importance of GPL, as more and more open source software and their plug-ins are developed. This also clearly describes the limitations of GNU GPL while using free or commercial (proprietary) software.
[B]Developers and GPL[/B]
As you already observe, GPL facilitates users and developers to take a work which is licensed under GPL, make modifications to it and even release the modified work as a newer version (called as Fork) to the open source community for free or for a fee. Practically, a fee here would not make sense, as another developer can always make a fork from the new version and give it away for free! This makes lives of developers, who rely on development of GPL software extremely difficult. While's its good for the community and the customers, the developers are at risk of working for free (financially). So this raises doubts on serious development which indirectly casts questions on the quality and support of GPL based products.
[B]Can Developers make money with GPL?[/B]
Some of the ways in which GPL developers can make money is by accepting donations for work, offering paid support, offering paid documentation, calling for sponsorships, raising funds for development etc..., but none of these practically have proven to be a constant source of funds for developers. Its interesting to see, if any new business model for GPL would emerge in the future, where the developers can earn their living out if it, thus promoting some serious development of GPL products, resulting in even more satisfied customers and users.
On the other side, we do have serious development going on in GPL software. Few of the examples include, PHP based content management systems like Wordpress, Drupal and Joomla!. Thousands of developers and millions of downloads of these product leads one to believe that, GPL is the way to go.
So this leads to many further questions like,
[*]Is GPL the future of open source software
[*]Should developers use a lesser restrictive license for their products than GPL
[*]Do donations really work for continued development?
[*]What motivates a GPL developer to give more to the community?
[*]How do the customers see GPL and non-GPL products? ... and many more...
[/LIST][B]Recommended Further Readings:[/B]
[*][URL="https://en.wikipedia.org/wiki/GNU_General_Public_License"][COLOR=#0000CC]GNU General Public License - Wikipedia, the free encyclopedia[/COLOR][/URL]
[*][URL="https://www.opensource.org/licenses/gpl-license.php"][COLOR=#0000CC]GPL Licenses | Open Source Initiative[/COLOR][/URL]
The above article is not the official interpretation of the GNU GPL license. This is author's personal opinion and interpretation of GNU GPL license, with the objective of making it simpler for developers and customers to understand the license. To give your opinions and discuss on the GNU GPL with other visitors, please give your comments below