Monday, August 27, 2007

FLOSS - BSD Problems

In my last installment (yes, it has been a while) you may have noticed that I referred to the license as the new BSD license. Why the distinction? Older versions of the BSD license had an advertising clause that required people using the source code to include notices in their advertising if the ads mentioned a feature that was derived from BSD code. Of course, this clause was changed to reflect the organization that used the license, so if you used a lot of BSD code - likely in the form of function or class libraries - then your ads may have to contain dozens of notices. This flaw was removed from the license in 1999.

The big problem with the BSD license is that the source code does not need to be distributed. More importantly, changes to the code do not need to be distributed. This means that you can take a BDS licensed program and make improvements to it then distribute the enhanced program without source code. While people would still be able to find the original version of the source code if they searched hard enough, they would have to re-create the enhanced features from scratch.

While it is certainly possible to argue that you have no obligations to release your changes, the creators of the original code you are using were also not under any obligations. The fact that people could use BSD code without having to give anything back to the community is one of the reasons that other open source licenses were created and used, with the most prolific of these being the GPL. Of course, to properly understand the GPL, you first need to know a little bit about it's creator Richard Stallman.

No comments: