11 ms·
This might be overreacting but is there a way to opt-out of Copilot using your code in open source repos? It feels morally wrong to me that I can spend thousan
by nickjj 4y ago
This might be overreacting but is there a way to opt-out of Copilot using your code in open source repos?
It feels morally wrong to me that I can spend thousands of hours working on projects on my own free will but then a company can sell the code I wrote to others in the form of snippet completion as a service. In fact they end up selling your code back to yourself if you plan to use the service.
If the answer is no, that moves the needle pretty far in the direction where I'd at least consider the idea of moving all of my repos to Gitlab. I don't care much about stars or popularity. I open source things that are interesting and useful to me and if other folks want to use it they can but I don't gain motivation from others using the projects I release. I like Github and its UI and it's no doubt "the spot" for open source but selling code written by others rubs me the wrong way a lot. It stinks because it also means no longer contributing to other code bases too. It's moving us in the opposite direction of what open source is about.
- jaywalk 4y agoIf your code is using a license that allows it, how could you possibly opt-out aside from using a different license?
- okasaki 4y agoMicrosoft could provide an opt-out for projects or even contributors, regardless of licence.
- nickjj 4y ago> If your code is using a license that allows it, how could you possibly opt-out aside from using a different license? A repo setting that instructs Github not to use your code for Copilot, it could be a similar option as turning Discussions on / off. If they really want to win developers over they would even have Copilot scanning disabled by default but that'll never happen.
- jonny_eh 4y agoSounds like you want a new license that just prohibits use by one company for one purpose.
- thamer 4y agoThere are other AI-based code completion systems than Copilot, at least Tabnine[1] and Kite[2] come to mind, I'm sure there are more. [1] https://www.tabnine.com/ https://www.tabnine.com/ [2] https://www.kite.com/ https://www.kite.com/
- belter 4y agoAs of today there is a new one... "Now in Preview – Amazon CodeWhisperer" https://aws.amazon.com/blogs/aws/now-in-preview-amazon-codewhisperer-ml-powered-coding-companion/ https://aws.amazon.com/blogs/aws/now-in-preview-amazon-codew...
- widjit 4y agois there something wrong with that?
- jonny_eh 4y agoNot at all, you can put any license on your code that you want.
- quietbritishjim 4y agoEven if Github did provide that setting, as a courtesy, someone could clone / fork the code to another repo (if you use any licence that allows it) and not enable that setting.
- Inityx 4y agoSure that's possible, but there's a huuuge difference between Possible and Default Behavior.
- TAForObvReasons 4y agoIn a case like this, GitHub itself could set up a bot account that forks all projects as soon as you make the switch. The company in fact would be incentivized to do so.
- bouke 4y agoDoes GitHub verify that the code that is in my repository is actually in accordance to the license that I’ve added? I could just upload any proprietary code with an incorrect license, and GitHub would just use that to feed their AI. Like any other dependency that you incorporate into your application, GitHub should verify/audit whether the license allows them to do so.
- sammax 4y agoDon’t most licenses require at least attribution? I don’t believe GitHub is restricting themselves to only licenses that don’t. In fact the only software licenses I can think of that don’t require attribution are 0BSD, WTFPL, CC0, MIT-0 and Unlicense, and they all aren’t super popular. Also in some countries creators have inalienable moral rights which can be enforced regardless of the license. For example in Germany it is impossible to relinquish certain rights you have as the creator of a work, including the right to attribution.
- TAForObvReasons 4y agoThis is an important and overlooked point. Even common permissive licenses (ISC / MIT / Apache-2.0) require attribution
- jazzyjackson 4y agoJust as a mind experiment: couldn't CoPilot just publish a list of every github user and attribute the work to all of them?
- TAForObvReasons 4y agoCoPilot is a black box at the moment. Microsoft claims they used the public corpus on GitHub. There are plenty of GPL, AGPL, and "source available" projects in the public corpus. So what exactly is the licensing? The argument may make sense if they limited themselves to public-domain (CC0) works, but that is not what happened here. If CoPilot attributed something to an AGPL project, does it mean the "virality" applies to all projects that use code from CoPilot?
- ntoskrnl 4y agoThere's also a good amount of commercial and leaked source code on GitHub, including MS's own leaked Windows XP source. I haven't played around with Copilot yet, but if I ever do I plan on copy/pasting some win32 API definitions to see if I can get it to spit out any of the leaked source.
- igneo676 4y agoI'm not sure using a different license actually opts you out. By merely hosting your code on GitHub you grant them the right to analyze your code on their servers[1] They may be morally in the wrong, but I'm unsure they are legally in the wrong here. To boot, denying them the right to create this tool in your license is technically a violation of OSS principles and problematic [1]: https://docs.github.com/en/site-policy/github-terms/github-terms-of-service#4-license-grant-to-us https://docs.github.com/en/site-policy/github-terms/github-t...
- typetheorist 4y ago> 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. Wouldn't this be a violation?
- PaulKeeble 4y agoIt should be automatic based on license. GPL code definitely shouldn't be included but MIT could be. They already have this information in most repositories and if its missing they have no right to use it at all. We don't need extra options the licenses already restrict the use and derivative work.
- davesque 4y agoNot without the text of the license. I, as a developer, cannot just poach open source code under MIT without including the copyright and terms from the original project. From the license: "The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software."
- meshaneian 4y agoThey might argue that a snippet isn't a "substantial portion" of "the Software", and they're only charging for the service not the content - regardless, I don't like it, this is exactly what certain licenses attempt to prevent.
- leereeves 4y agoI would argue that substantial shouldn't be measured in lines of code, it should be measured in importance. Something like the fast inverse square root is substantial even though it's short.
- williamcotton 4y agoThe fast inverse square makes for a poor example when it comes to notions of intellectual property and copyright because there is prior art. The Wikipedia page has a history. And imagine if Microsoft had been able to copyright the fast inverse square function before Carmack sat down to write Quake!
- leereeves 4y ago
- deleted 4y ago[deleted]
- lbhdc 4y agoI stopped publishing open source after all this started coming out because I was so uncomfortable with it.
- kemiller 4y agoThis is a really good point that I hadn't considered before. It's facebook all over again — selling your own content back to you. Repo owners should be at least compensated when their code gets used. That would be an incredible market.
- selcuka 4y ago> That would be an incredible market I for one welcome our new CEO (Copilot Engine Optimization) overlords. Jokes aside that will likely cause GitHub to be filled with lots of low quality repos (even AI generated, oh the irony!), to trick Copilot into using their code.
- account42 4y ago> Jokes aside that will likely cause GitHub to be filled with lots of low quality repos Hasn't this already been the case since GitHub became a CV boost.
- leereeves 4y agoI don't think that would be possible. One of the big limitations of neural networks is that they don't cite their sources.
- radus 4y agoCalculate a rough semantic similarity score across all your snippets, and pay out a fractional reward to all originating codebases. I think the bigger problem is that it will almost certainly lead to a proliferation of giant snippet spam repositories.
- nemonemo 4y agoIt is like the search engines vs. SEO arms race. The hope could be that such proliferation can be managed by disincentivizing such abuses. The reality might be vastly different with codes that have more regularity and better chance for AI's emulating humans than the natural language texts.
- ghostbrainalpha 4y agoIt would be kind of cool if Github could show some stat that code you wrote has been used 50,000 times for 12,000 people. Being a top CoPilot contributor should at least have value to signal on your resume.
- ellyagg 4y agoWell, I hope your viewpoint doesn't win the day, because making code as freely shareable and remixable as possible is a huge boon for humanity.
- celeritascelery 4y agoCode being freely shareable and remixable is great. Selling that open source code for profit is not.
- WisNorCan 4y agoIs your take that Microsoft should offer this for free? Or if they are not willing to do it for free, Microsoft should cancel this service and we should wait for Apache or someone else to offer the service? Or something else ?
- gfrff 4y agoMicrosoft should make this service free for open source (not just thought leaders), and compensate people otherwise. I should have a 0.01% equity in Open AI if they're using my stuff like this. Or they should do opt in.
- throwaheyy 4y agoHalf serious/flippant, we need MS to create a cryptocurrency so that developers can be credited with micropayments each time their code gets “quoted” in the IDE. <ducks>
- earnesti 4y agoWhat is wrong with someone making a little dough. It is just numbers in database.
- jdbernard 4y agoYeah, but those numbers translate to food on the table for my kids, a roof over their heads, better education, etc. Come on, this is a tired response. Nothing is wrong with people making money. There is a lot wrong with people making money off of the hard work of others without any consideration or remuneration.
- deleted 4y ago[deleted]
- throwaheyy 4y agoThe Twitter thread’s title seems unnecessarily incendiary and clickbaity. I don’t buy that producing/synthesizing code snippets based off public repos is a problem. There’s nothing proprietary or original about eg. the syntax of a for-loop, or the boilerplate of setting up some JS framework MVC. Besides, it’s basically just a (semantic and contextual) search engine inlined within the IDE. Copyright infringement hasn’t taken place until the user activated the autocompletion and actually placed the code within their own and released their code containing the infringing code.
- DJHenk 4y ago> There’s nothing proprietary or original about eg. the syntax of a for-loop, or the boilerplate of setting up some JS framework MVC. Of course there is something proprietary or original about that. Why else would they need such an enormous AI to suggest it. Auto completing simple boilerplate was already solved in a much simpler way. > Copyright infringement hasn’t taken place until the user activated the autocompletion and actually placed the code within their own and released their code containing the infringing code. Copyright infringement takes place as soon as some company publishes/sells material without explicit license or permission. So not the moment the users hits accept, but the moment just before that: when the tool shows it to the user.
- throwaheyy 4y agoApplying your logic, is any search engine infringing on copyright because it contains a snippet of the source page? After all, if showing a search result in the IDE is “publishing” (let alone “selling” (?)) why hasn’t Google been sued out of existence for showing search results (oops, “publishing” copies of original work, billions of times over), as well as selling related advertising? https://en.wikipedia.org/wiki/Fair_use https://en.wikipedia.org/wiki/Fair_use > Examples of fair use in United States copyright law include commentary, search engines, criticism, parody, news reporting, research, and scholarship.
- tremon 4y agois any search engine infringing on copyright because it contains a snippet of the source page? In some jurisdictions, it is. And in other jurisdictions, it is only allowed as long as it shows a link to the source page, which Copilot also doesn't do.
- invig 4y agoThey’re not selling you code. They’re selling you an engine that helps you find the right free code at the right time. If you read free code yourself it’s fine, but if a machine does it for you it’s not? We overvalue humans.
- bayindirh 4y ago> If you read free code yourself it’s fine, but if a machine does it for you it’s not? We overvalue humans. No, it's not fine. Apparently, you missed SCO & Oracle vs. Google cases. Both of these cases argued that somebody looked to the code, and copied it. In SCO case it was not true, but the argument stretched the timeline rather successfully. In Oracle vs. Google, copying function signatures opened a big can of worms. So, just by copying the function signature without filling it the very same code with the original, even for interoperability, you're getting into a huge gray area in a legal sense. Similarly, no sane Wine developer will read leaked Microsoft source code, yet alone copy it. Again, no sane emulator developer will read leaked Nintendo code. Reading the code "colors" your creativity, and if you're tried at court and enough similarity is found in your code with the leaked code, it's game over. So, reading code and copying is not guaranteed to be legal, depending on its license. When this is done by a robot, it's still illegal (you're breaching licenses during the code generation process), and immoral and unethical on top of it. So, we don't overvalue humans, but overvalue AI, which is just informed search, BTW.
- invig 4y agoI suppose you learned to code without reading any code?
- bayindirh 4y agoNo, I didn't and don't read other people's code to understand how something works. I use books and official language/library documentation for that. On the other hand, this is irrelevant to the issue at hand. GitHub copilot is not a tool for education. It's tool for auto-completing code, which can be put to production, where licenses and other stuff come into play. The issue is not code sharing per se. It's more of a legal problem, and an important one at that. In the software copyright sense, even reading code you can't import to a project (let it be leaked, not compatibly licensed or for any reason), puts you at risk of legal troubles. This is why we have methodologies like "clean room development". In Copilot's case, you're possibly deriving a code from a source which contains many licenses, and some of them are not compatible with that you're doing. As a result, you're in direct breach of the license which is not compatible with your code. On a more higher level, you're also breaching the ethics code and morality by using a code or its derivation with an incompatible license to your code, and disregarding other peoples desires codified as a case-tested and valid license. As a result, if you think that using a derivative of a GPL licensed code in your closed source application is OK on every front, then the vice versa is true. I can disassemble and reverse every part of your code and re-implement it as GPL bug for bug and open it. Because if you can breach my license, and expect no consequences, I can breach your license without consequences, as well. It's a two way street.
- dragonwriter 4y ago> This might be overreacting but is there a way to opt-out of Copilot using your code in open source repos? I don't think there is a way to opt out if it is a public repo regardless of license, and Microsoft's copyright theory suggests that they wouldn't feel obligate to enxclude any code they got their hands on except under a specific NDA preventing such use; the use of public GitHub repos isn't based on legal constraints but practical convenience.