5 ms·
My less lofty personal gripe with Copilot is as follows. I worked hard to produce quality code. GitHub will make money off my code. Copilot users will make mone
by dr_kiszonka 5y ago
My less lofty personal gripe with Copilot is as follows. I worked hard to produce quality code. GitHub will make money off my code. Copilot users will make money using my code. I - the creator - will make nothing.
At the very least, I should have been asked whether my code can used by Copilot and I should get at least a share of the profit Copilot generates every month, where the share equals to my code / all training code used by Copilot. The latter part could be gamed by other developers in the future, but it's the best I could come up with.
- FeepingCreature 5y agoIf you didn't want your code to be reused or even commercialized by others, you really shouldn't have made it opensource.
- swiftcoder 5y agoIf my code isn't released under a permissive license, then I might have the expectation that those wishing to use my code for commercial purposes will contact me and pay for a commercial license. This is sort of the whole point of non-commercial licensing (and often, of the GPL itself, since many potential licensors don't wish to deal with GPL restrictions).
- IshKebab 5y agoSure but did you have the expectation that people wouldn't read your code and learn from it? I think even non-commercial licensing can't prevent that. If your code is so super-special that you don't want people to read it and go "ah that's a neat linked list reversal algorithm" or whatever then your only options are software patents or keeping it entirely closed source. Maybe trade secrets, but they tend to apply in very very limited circumstances. I doubt any software would qualify.
- drran 5y agoYes, people can read my open-sourced code and learn from it, like they can do with paints, movies, sculpts, and books. No, I don't allow to copy my code freely. Can you explain, what point you are trying to defend here?
- FeepingCreature 5y agoThere are cases where the network can reproduce code verbatim, just like there are some functions that a good programmer may know by heart. However, this is not how Copilot normally works; it acquires understanding of code, not a copy-paste library. Well, that's overstating things: it's kinda an open question under what circumstances GPT will learn text by heart. However, it seems to be extremely rare. (Human creators also sometimes reproduce things they've read verbatim, without noticing.)
- swiftcoder 5y ago> it acquires understanding of code This is somewhat debatable. Would you consider a Markov chain to have an understanding of the input data? It too sometimes reproduces training data verbatim, but mostly produce remixes of many short snippets instead. On the spectrum from Markov chain to Human comprehension, I'd submit that GPT is much closer to the former than the latter.
- FeepingCreature 5y agoI would consider a Markov chain to have "the sort of thing that understanding is a more complex version of" of the input data. Markov chains compress inputs. Understanding is compression. So I'm willing to bite that bullet. I submit that GPT is much closer to the latter than the former, and may even overtake it in its domain. It lacks hardware that the human brain uses to reflect on its knowledge and understand what it is thinking - but just as an "overtuned intuition", just like how AlphaZero's network forms a quite capable chess AI without even using tree search, just by "taking the move that feels right to it", I think it's on par with human intuition, or even stronger, because it cannot rely on reflection like humans can. (In other words, I think there isn't a spectrum of Markov chains to human comprehension. Human comprehension is a different kind of system. However, there is a spectrum of Markov chains to human intuition.)
- heavyset_go 5y agoI'm okay with reuse and commercialization as long as the licensing terms of my code are adhered to. That means proper attribution, distribution of copyright notice and license, and making modified code available to users. Copilot does none of that.
- FeepingCreature 5y agoI think people have this impression that copypasting code is all Copilot does. From what experiments people have made, copypasting code is an extremely rare phenomenon.
- heavyset_go 5y agoI'm familiar with training and using ML models. I'm also familiar with the ways such models can encode their training data in the models themselves, hence my criticism.
- ben0x539 5y agoMy understanding is that Github's argument is that their use of the code to train Copilot is fair use. As such, whether the code in question has been released as open source only matters to the extent that it makes it more convenient for Github to access it, but the argument would work as well for a proprietary codebase. Edit: I just skimmed the copilot blurb again, they seem to refer to "publicly available" sources and not open source code as their input.
- drran 5y agoYes, this is M$ argument, but it's not backed by law. See [0]. "Publicly available" is not "in public domain". Many commercial songs are "publicly available" via a radio station. [0]: https://www.copyright.gov/fair-use/more-info.html#:~:text=Fair%20use%20is%20a%20legal%20doctrine%20that%20promotes,unlicensed%20use%20of%20copyright-protected%20works%20in%20certain%20circumstances https://www.copyright.gov/fair-use/more-info.html#:~:text=Fa.... .
- deleted 5y ago[deleted]
- CyberRabbi 5y agoA determination of fair use does take commercialization into account so this is a fully valid concern. GitHub is explicitly looking to profit from the work of others.
- visarga 5y ago> I - the creator - will make nothing. Did you benefit from reading code in your education? Pass it forward! You will benefit many people, don't cut the rope under you. And in turn you will also get the same benefit, and adapted to your needs.