Tuesday, January 15, 2008

A Response to Andrew Smith's GPL Blog posting

In Andrew Smith's blog posting "GPL Quicker Upper" andrew explains a process by which a developer can wrap the contents of a GPL licenced library in a service oriented application and use STDIO between it an a proprietary application (much like a SOA webservice). This allows a proprietary piece of software to benefit from the work of Open Source applications, hence making the GPL just as open to exploitation as the BSD licence.

My opinion on this matter derives from my understanding of why and how the BSD licences differ from GPL licences. From what I understand, the BSD licence is completely free, including the freedom to be exploited; whereas the GPL licence is more communistic (read community oriented rather than evil red menace) which states something akin to "if you play with us, you play by our rules."

I feel that the GPL library wrapper idea posited by Andrew violates the spirit of the GPL and is a flaw. While the flaw technically adheres to the GPL and treats the use of software libraries the same way a web browser treats a web server - a web browser [eg IE7] need not follow the GPL simply because the web server it connects to [eg apache] is GPL - I feel that the essence and spirit of the GPL is violated. When applying a GPL licence to source code, a software copywrite owner is telling the world "I am software that can be used by all, you can derive new works from me, or modify me to make me better. All I ask is that things derived from me, and any modifications to me must be as equally free as I am."
  • BSD - My Ideas; anyones rules
  • GPL - My Ideas; my Rules
Andrew is stating that companies can bypass the "keeping code as equally free" clause by using a technical semantic difference to library operation with the intention of showing us that GPL is an inferior software licence. Because Andrew is 'angry' I must believe that he is intending to show us that the core beliefs behind the GPL are as flawed as the GPL itself. I am of a different opinion.

I believe Andrew has pointed out a flaw which should be explicitly fixed in the next revision of the GPL, and that the principals that the GPL stands for are just. To explain this I use the examples of FreeBSD (a BSD licenced OS) vs Linux (A GPL licenced OS). FreeBSD (which is said to be more secure) is better than linux in certain activities, and Linux (which is said to have better driver support) is better than FreeBSD is certain activities; I am unable to say one is overall better than the other however, i am not writing to incite a flamewar.

Certain developers are attracted to the near-infinite freedom BSD licence allows and have created great works of software which are used in both proprietary and open source software (Mac's XNU uses FreeBSD) while other developers are attracted to Linux & the GPL, with the knowledge that a Company like Apple cannot just use the developers hard work as a form of free labour.

Linux is a good piece of technology that developers flock to because they feel protected from exploitation when they give their labours to the community (think Open Software as a form of charity). This feeling of protection must be maintained to ensure that labour continues to be invested into the GPL community, thus the flaw Andrew has found must be closed with the next iteration of GPL.

1 comment:

john said...

So give everyone interested a link to my blog post. If it makes enough noise, the FSF will pay attention and we'll see whether they're willing to do anything about it :)