Spreading GPL across SOA and AJAX?
By webmink on Jan 17, 2006
Just back to my hotel after the second (final) day of the GPL v3 conference. I attended the Q & A panel (pictured to the right) in the morning, discussion committee B around lunch time (representing Sun) and discussion group A this afternoon (representing OpenSolaris). Today has been much more about getting doen to the gritty work of adding comments and discussion to the draft. Indeed, group A added a number of comments this afternoon and the comment flow is roaring ahead (fortunately there's a syndication feed).
I notice that Stephen O'Grady at Redmonk thinks like Mike Olson that the new GPL funked out on the provision to rein in ASPs. At first I thought so too, when I saw that there was no statement extending the need for publication of source for web execution of GPLed code and that it seemed to be a goal of section 7:
Aside from additional permissions, your terms may add limited kinds of additional requirements on your added parts
I think it's clear that the intent is indeed to initiate a marketplace for extensions. But as I have looked at it more and more, I believe Eben and Richard have been far more subtle. A crude and explicit ASP clawback would have raised a riot. Instead, the seeds are sowed in section 5c:
If the modified work has interactive user interfaces, each must include a convenient feature that displays an appropriate copyright notice, and tells the user that there is no warranty for the program (or that you provide a warranty), that users may redistribute the modified work under these conditions, and how to view a copy of this License together with the central list (if any) of other terms in accord with section 7.
and even more in section 1, "Complete Corresponding Source Code":
For example, this includes any scripts used to control those activities, and any shared libraries and dynamically linked subprograms that the work is designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work, and interface definition files associated with the program source files.
Doesn't that latter language just yell "SOA" to you? It seems to me that there is the germ of an idea here to ensure that, if your server software is licensed under GPL v3, the client software - AJAX, plug-in or whatever - is required by this language to also use GPL v3. This is a much more subtle approach, and strikes right to the heart of the rapidly evolving "read-write web".
By the way, if you're looking for a properly formatted version of the GPL v3 draft, Tim has created one. [Update: He's added paragraph-level links so I have linked sections above]