It's always bothered me, how confusing the many Free and Open Source Licenses are. There are many to choose from. As a developer, which one do you pick? How do you choose what software to run? What applications or services will you deploy pending licensing? These are big questions, and I hope to make explaining licenses easy and in simple terms for the average user. I'll start with one of the more common licenses, the BSD license.
In a nutshell, the BSD license is a very open license, allowing you do do practically anything with the software. It's less restrictive than the GPL, but more restrictive than the Public Domain. There are only a couple precepts that must be adhered to, when using this license:
- You are free to redistribute the software, in binary or source form, as long as the copyright, conditions and disclaimer are present.
- You cannot use the name of the originating organization, or contributers, to promote derivatives of the software, without written consent.
If adhered to, you are free to modify, copy and redistribute BSD-licensed software in either source or binary form as you see fit. You are not required to return code or patches to the upstream BSD-licensed software. You are free to change the license, or charge for derivatives, of the software, be it commercial or proprietary.
BSD-licensed software is particularly attractive to organizations providing a service, such as GMail, or embedded applications, such as your mobile phone or stereo. The company/developer can use BSD-licensed software to produce binary applications or services, without releasing the source code.