Every so many weeks you find that GPL license advocates attack the BSD license. These attacks are about freedom of sharing the code, and to what degree this should be allowed.
Chemisor, a BSD advocate, is of the opinion that a linguistic misunderstanding may be the root of the disagreements over the difference licensing philosophies. He publishes his thoughts on the quite-hostile-towards-BSD Slashdot.com. Quite courageous of him! Not unexpectedly this is the start of quite a lively discussion.
The first disagreement I wish to address concerns the statement “BSD projects are free, but GPL projects stay free.” GPL advocates cannot understand why the BSD advocates are not getting this point, and BSD advocates make accusations of Communism, which are then argued to death by both parties. The problem with the statement above is the different interpretation of the word “project.” I, and I suspect many other BSD advocates, generally separate the concept of “project” from “code.” While code is what projects are made of, I do not see it as valuable as the useful product a project provides. When I write a program, be it a site scraper, or a todo program, or a UI framework, I think of my project as the entity that matters. The fact that I may have copied some code from one to another is of no concern to me.
A GPL advocate sees an entirely different situation. To him, it is the code that comes first, and the applications built from that code are a secondary consideration. Even a single line of code is precious, whether it contains a complex spline formula or i += 2;. As an aside, I would expect this mindset to be more prone to reusing other people’s code instead of reimplementing it. Where I would scoff at a piece of code, call it utter garbage, and rewrite the damn thing from scratch, a GPL advocate would probably wrap the garbage in another API that he finds more palatable. In my opinion, this leads to bloat from wrappers, instability from the garbage that is still there, and loss of skills. What programmer from the current generation is up to the challenge of reimplementing libjpeg? But, I digress. I am here to explain, not bash, so please excuse this little rant.
Further reading
If you want to know more about the differences between the GPL and the BSD license, have a look at these articles:
- The differences between the GPL, LGPL and the BSD (Fosswire.com)
- BSD Is How I Spell Free (it.toolbox.com)
- BSD or GPL: Choosing an open source license (developersvoice.com)
In December 2003, I wrote a script for remotely upgrading a linux system to FreeBSD. I gave it a catchy name (’Depenguinator’, inspired by the ‘Antichickenator’ in Baldur’s Gate), announced it on a FreeBSD mailing list and on Slashdot, and before long it was famous. Unfortunately, it didn’t take long for changes in the layout of FreeBSD releases to make the Depenguination script stop working; so for the past three years I have been receiving emails asking me to update it to work with newer FreeBSD releases,
Unfortunately 2007 didn’t see the final release of FreeBSD 7.0; just 4 beta’s and a 


