Friday, March 25, 2011

GNU General Public License(GPL) vs Berkley Software Distribution Licenses(BSD) and the views of the Free Software Foundation on each.

I would like to take a minute to explain the differences between the GNU General Public License and The Berkeley Software Distribution License.

Where did they originate?
GNU(GNU is Not Unix) was a project in the 80s/ very early 90s to create a completely free body of software to get along without any software not free. GNU had planned to make an complete Unix compatible operating system with free software and was finally finished when the Linux kernel was developed but it never truly caught on but many people still maintain Linux Operating systems based on GNU should be considered GNU/Linux. GNU General Public License was written for the Project by none other than Richard Stallman.

He lists four freedoms essential to software development: freedom to run a program for any purpose, freedom to study the mechanics of the program and modify it, freedom to redistribute copies, and freedom to improve and change modified versions for public use.To implement these freedoms, users needed full access to code. To ensure code remained free and provide it to the public, Stallman created the General Public License (GPL), which allowed software and the future generations of code derived from it to remain free for public use. Some complications arose, however, when certain software was grandfathered in the law of GPL because of code it derived from.

so the main purpose of the GPL is to guarantee software is free and will always be open.

Now lets look at the BSD License. The BSD License was born of the BSD operating system, a Unix like operating system, written at U.C. Berkeley. BSD was originally Proprietary and the license maintains that to this day. The main difference between the GPL and the BSD is that with the BSD you can turn it into proprietary software and you dont have to give any of the code away if you like. where as the GPL says you must make any programs derived from this program completely open. there are other GNU licences like the LGPL that let you get around that but you must describe your modifications when using the LGPL. both LGPL and GPL are considered open source licenses but BSD is not because of the advertising Clause. It does not matter if you use both the LGPL and the original BSD license if you use the original BSD license the software cannot be considered open source in the eyes of the Free Software Foundation because people who develop software based on yours cannot compare or contrast their software to yours publicly legally.

The GPL license is strongly reccomended for all open source products if it fits the software, The original BSD license is not reccomended due to its permissiveness, and the LGPL is considered acceptable to Stamp on Open source software. The free software Foundation Urges all Copyrights to be released and only Trademarks are considered to be acceptable to protect for open source software  making the software Copyleft. Although it allows trademarks to be protected, it does not condone this practice. it urges developers to go completely copyleft and allow all code to be unprotected. It does not like the LGPL or the MPL or some BSD licenses(non-original) but allows those to be considered Open Source. It very strongly discourages any code to be protected by copyright(but allows trademarks) and if this is the case the software cannot be considered open. It claims this is bad for the development of open source software and in many peoples eyes it is.
the FSF will Prosecute for any GPL infringement(and will win). this is why many companies do not include this license in their product but some of the notable non-infringers are Mozilla Firefox, Mozilla Thunderbird, Open Office, Linux Operating Systems, GNU, and many others.

The Free software foundation also does not like the original BSD License to be coupled with other Open Source Licenses.
The Free software foundation also doesnt prefer free software to be referred to as Freeware. They see that as a dirty word and really it is. Freeware is by definition Software that is free that is fully functional for an unlimited time or Partially functional for an unlimited time with a Fully functional program available commercially. (Huge examples of the dirty kind of freeware are Google Earth, Google Sketchup, and many early games.) It does not like truly Free software to be called freeware whether it is open or not.
In any license the Free software foundation likes language to be clear to the point where nothing can be construed into something else. It strongly discourages the use of the word services when referring to any piece of software. (Google you did it again!)(the web is not yours google do something standard for once)
High quality free software, particularly open source software is considered the best, most useful software because it allows the rapid development of Software with no cost to the end user.

1 comment:

  1. I'm comparing and contrasting BSD and GPL for an assignment and found this post really helpful. Thank you!

    ReplyDelete