In my blog post, I talk about how training is fair use, but we don't know about distributing the output. These licenses, even if they don't work, are designed to poison the well by putting enough doubt into companies' minds that they would not want to use Copilot if it has been trained with my relicensed code.
Do the GitHub Terms of Service give them the necessary permissions for Copilot, independently of the license? (I honestly don't know the answer; this is a straight question.)
> The licenses you grant to us will end when you remove Your Content from our servers, unless other Users have forked it. [0]
I don't see how they can keep this clause, and then have a service that recites/redistributes code, based on a model that has already ingested said code.
> This license does not grant GitHub the right to sell Your Content. It also does not grant GitHub the right to otherwise distribute or use Your Content outside of our provision of the Service, except that as part of the right to archive Your Content, GitHub may permit our partners to store and archive Your Content in public repositories in connection with the GitHub Arctic Code Vault and GitHub Archive Program. [1]
Copilot is distributed verbatim code when it regurgitates, which seems a pretty clear violation of this clause. (If it wasn't regurgitating, they'd have caselaw for fair use. But... It is.)
I don't know. Because I don't know is why I pulled all of my code (except for a permissively-licensed project that people actually depend on the GitHub link for) off of GitHub.
That’s safe but it’s probably not necessary to be protected from what GitHub, OpenAI, and Microsoft are doing. When these licenses were crafted there was no reasonable expectation that companies could use
ML applications as a loop hole in existing copyright licenses, so just because there is no explicit clause denying it doesn’t mean they are in the clear for using copyright-protected code that way. Licenses give permission, they don’t revoke it.
Copyright is broad, licenses are minimal. This must be the case otherwise they would not be very effective at protecting the work of creators. There is no explicit allowance for what GitHub is doing in most licenses so they do not have general permission to do so.
I think to actually poison the well, we should add code to existing repos with dead code clearly labelled as "the way that things shouldn't be done" that are wrong in subtle ways. So every time we fix a security issue, we keep the version with the bug with some comments indicating what's wrong with it. Of course, this only works until the AI is trained to weigh the code based on how often the code is called.
The notion of intentionally polluting and over complicating your code base just to "poison the well" is bizarre. Talk about cutting off your nose to spite your face.
If you don't want others to use your code then the solution is very simple. Keep it on a secure private server and don't publicly release it.
[1]: https://gavinhoward.com/2021/07/poisoning-github-copilot-and...
[2]: https://yzena.com/yzena-network-license/