Well, I gave it a read…and its not pretty.

The Free Software Foundation released Draft 1 of the new GNU General Public License for discussion. The reasons for an updated license text is to address the ever shifting sands of change in technology advances, legislation, etc.

In that, it largely succeeds. There are new clauses addressing software patents, and digital rights management. But it spectacularly fails (thus far) to address the needs of non-compiled programs where output is distributed to users via a network. Obviously this class of applications includes PHP Webapps.

This is not a good deal.

To explain the issue consider a program written in C++. You write the source code, compile it via gcc, a distribute it under the GPL. Now the license kicks in – if you distribute the program under the GPL you must also distribute the source code (or at least make it available to download). This applies to all modifications another user might make also – if a user distributes a modified program, the user must also distribute the modified source code…without exception.

However with PHP, you do not distribute binaries to every user. Users just need to connect to a network server installed with the PHP code. Now if the user can use the program WITHOUT downloading a binary – well, you have a loophole. For the moment, any PHP application under the GPL can be downloaded, modified, and hosted – and no one has any obligation to share those modifications. Because no one is distributing a compiled program to other users! They are ONLY distributing the output of a private installation.

This IMHO means that: PHP + GPL != OpenSource. Not technically at least.

If users are not required to make modified source code available – then the original developers are unable to benefit from any improvements, there will be less bug reports, forked projects will emerge (primarily private and claiming proprietary rights over MY source code!). Its a horrible situation at times – despite your best efforts at running an open source project – there’s no open source to be found!

Now there were statements made by the FSF about this problem, and there were claim it would be fixed. Some members went so far as to create a new license, the Affero General Public License, which is based on the GNU GPL but adds an additional clause to close the loophole. It was claimed at that time, and on the FSF website, that the GPL v3 would be compatible with the Affero License. Hopefully that can still be the case…

Unfortunately the GPL v3 Draft does not seem to be raising much hope of that.

The next question that inevitably arise is whether we’ve been trusting the FSF too much? Like myself, there are many developers waiting (largely out of pure faith) for an improved GPL to apply to their projects. If that’s not going to happen – a lot of us are going to be looking for alternative open source style licenses. Some may wind up looking at the permanance of the Affero GPL (personally I consider it a short term stopgap – not a likely final license), or maybe seeing if a Creative Commons license could apply. From what I know the CCL may be the only viable path outside the Affero License – the problem is that it was never intended for source code. And thus its not really all that well considered as an “open source” license.

But hey, in a pinch use what’s required, not what seems prettier… The CCL Licenses are quite strong, and in many countries it can be argued (or stated as fact) that source code equates to literature, or any other written text under Copyright laws.

I’d prefer it didn’t come to that, and who knows, the GPL draft may see some serious changes in the future. Its Draft 1, which generally assumes a Draft 2 will follow with changes. Not all hope may be entirely dead…just yet.