Evan Prodromou wrote:
First, I'm pretty sure you can't release something under the GPL and also disclaim copyright to it.
Second, it's not clear that you can contribute to a GPL project like Mediawiki and make "parts" of that work public domain. What parts of your work are not derivative of previous work, and thus not required to be under the GPL? Remember, derivation doesn't just mean "containing parts of previous stuff" -- adding a function to an existing module is making a derivative work (the new module), even if "your" function doesn't contain any code from the other modules.
This is indeed a tricky situation, but combining the two isn't entirely impossible. The following situation is perfectly okay: * Write a stand-alone, independent piece of code, and disclaim copyright to it, thereby releasing it into the public domain * Incorporate this piece of (now public domain) code into a larger GPL'd project
The piece of code on its own is still public domain, but the complete project is GPL'd. It is true that because of the GPL's nature, any changes that are derived works of the whole must themselves be GPL'd, so unless the public domain module is developed in a strictly segregated fashion, with all changes also released into the public domain, over time the entire body of code will slowly become GPL'd (as derived works of a public domain original are copyrightable).
Perhaps a clearer wording would be that the code is released under the GPL, but some portions derive from code by Erik Moeller and Daniel Lee Crocker that was orginally in the public domain, and remains in the public domain to the extent that it hasn't been modified since then.
(Of course, maybe that isn't clearer.)
-Mark