At a recent meeting, I was asked to explain open-source licenses to people who had not heard much of them before. I only had about 5 minutes because I had to rush off to another meeting immediately after. I was, however, able to touch on a few key points in the 5 minutes I was given, and help them understand a bit more. This page is an attempt to provide you with enough information to give your own 5-minute explanation.
There is no such thing as "open source"
There are a huge variety of open-source licenses. A project cannot just be "open source," it has to be released under a specific open-source license.
Open source means free, right?
Yes and no. Most open-source projects are free to use. However there are usually some restrictions placed on the use of the project.
Open source is not public domain
If something is in the public domain, that means either the copyright expired or the author has given up ownership. Works in the public domain have no copyright owner and can be used by anyone for any purpose. An open-source work is still owned by someone and the copyright owner can place restrictions on your use of the work.
So I can just say "this is open source now"?
No. You need to choose a specific open-source license to release your work under.
So what are the differences between the GPL and BSD licenses?
Most open-source licenses fall into two very different families. BSD-style licenses are generally considered more permissive, and GPL-style licenses are more restrictive and sometimes considered "viral."
Projects under the BSD license can be used and incorporated into proprietary projects. If your goal is to get a lot of people to use your software in their own projects, then the BSD license is a good choice since it places fewer restrictions on who can use it.
The GPL states that derivative works must be released under the same license. GPL'd code cannot be used in proprietary software unless that software is also released under the GPL. This is why the license is sometimes considered "viral," since it keeps changes to the work under the same license. If your goal is to require that changes made to your software will also be available to the public, then the GPL is a good choice.
The owner of the work can do anything with the work
The copyright owner of the work can choose to license the work under multiple licenses. Many projects are released under the GPL as well as BSD. The owner gives the user a choice of which license to use based on the project they're using it for.
How do I use these licenses?
To release your code under an open-source license, you usually make your source code available and add a copyright notice and short summary of the license to the top of each file in your project, as well as include the full text somewhere in your project. See below for specific instructions for different licenses.
Further Reading
{{cc-by-sa}}