Copyleft and HTML/CSS
May 18, 2007
Looking into that whole Google using YUI thing in the last post I came upon the comments thread on this post on Zach Leatherman’s blog. Apparently he noticed the yui code in the CSS and pointed out that it was unattributed. Chris DiBona from Google noticed that, and got it moved to a nice little BSD-licensed code section at the bottom. This is the form I found it in today when I looked at the CSS.
This freshened my long standing intention to post something about the whole issue of implementation versus redistribution and how it applies to the elements of your average site on the Interweb. You see, most free software or free content licenses draw a distinction between implementation and redistribution. You are generally free to use the code (or image, text, what have you) however you like on your own machine or in-house. However, once you distribute a derivative work – in source or binary form – the various terms of the license will kick in, and you are obliged to comply or remove the original work. Some licenses require attribution, others that your entire derivative work be licensed under the same terms, and all of your modifications given back to the community.
Templates are minor enough that it is not worth using copyleft to protect them. It is normally harmless to use copyleft on minor works, but templates are a special case, because they are combined with data provided by users of the application and the combination is distributed. So, we recommend that you license your templates under simple permissive terms.
(From the GPL FAQ)
As a special exception to GPL, any HTML file which merely makes function calls to this code, and for that purpose includes it by reference shall be deemed a separate work for copyright law purposes.
The thing to note here is that the FSF feels this needs to be explicitly added to the GPL. Therefore, the default is that they are not separate works.
Essentially, any sort of sensible terms could be added by modifying the license to make explicit what is considered the covered work, how it can be linked to and included in other works, and where the boundaries are. This is just as true for licenses which are not copyleft but require attribution – such as the BSD license used by Yahoo!. (Prototype is covered by an MIT-style “do whatever you want with this” license – which is essentially what the FSF is urging for templates.) The Creative Commons licenses are seemingly more ambiguous – but of course they explicitly suggest that their licenses are not appropriate for code.
The initiative for this could be taken by individual developers and designers. Or it could be taken by those who design the licenses. But one locus of attention which might be overlooked is the various open source applications themselves. The existence of a wide variety of free templates is a major ingredient in the success of projects like Joomla!, WordPress, and so on. These projects could add clauses to their licenses which specify the scope of licenses for HTML served by the application so as to specifically exclude the content. And they could raise awareness amongst those developing for them.
The current situation is such that the vast majority of “free” templates are released under the GPL, CC-by, CC-by-sa, or no license at all. All of these are potentially legally ambiguous. I’m sure many of the developers gave little thought to the licensing – intending to release under something akin to the WTFPL. Others may have just wanted attribution in the source. Others may have expected a link in the visible HTML – in other words they expected that the link they included would not be removed.
Worse is the fact that by most of these templates are being used with no regard for the intentions and wishes of the developers, and no consideration of the implications of the licenses. This may always be the situation. After all, commercial designs are stolen all the time. But the legal ambiguity surrounding these licenses as applied to this code serves as an impediment to legitimate usage. We need to move towards a clearer and more sensible set of licenses for the web.