Ask HN: Is GitHub Copilot the death of open source?
Currently this feels as though after many years Microsoft / Github stabbed its users in the back by violating our licenses.
If open source licenses were violated only for Github to sell our laundered code back to us for $100 a year, what is the point in contributing to open source software? This feels like a massive scam.
Many years ago I became concerned that the various websites that constantly ask for free code contributions and solutions (hackerrank, stackoverflow etc) might be building AI based on that code. of course my coworkers laughed (coincidentally one went on to work at github, i wonder if he remembers our conversation) and here we are.
Edit:
additionally all this
https://news.ycombinator.com/item?id=31895763
Edit 2:
What if I make a GPT-3 model trained only on famous sci-fi and fantasy authors and then get it to pump out some semi-ok fiction and then charge other people for it for $10 a month? Is that legal?
50 comments
[ 1.9 ms ] story [ 68.6 ms ] threadI am not sure either way tbh. It really depends wether it repoduces code segments verbatim or just fragments. To use writing as a metaphore, does it reproduce sentences or entire paragraphs. The latter seems iffy, the former seems ok to me.
AI doesn't actually "learn", it makes inferences based on the reinterpretation of data fed to it by a human. their model is a derivative work.
https://en.m.wikipedia.org/wiki/Google_LLC_v._Oracle_America....
> The inquiry into the “the purpose and character” of the use turns in large measure on whether the copying at issue was “transformative,” i.e., whether it “adds something new, with a further purpose or different character.” Campbell, 510 U. S., at 579. Google’s limited copying of the API is a transformative use. Google copied only what was needed to allow programmers to work in a different computing environment without discarding a portion of a familiar programming language. Google’s purpose was to create a different task-related system for a different computing environment (smartphones) and to create a platform—the Android platform—that would help achieve and popularize that objective. The record demonstrates numerous ways in which reimplementing an interface can further the development of computer programs. Google’s purpose was therefore consistent with that creative progress that is the basic constitutional objective of copyright itself. Pp. 24–28.
Creating a model out of training data is transformative. If we apply the Google assessment to Co-Pilot, then Co-pilot is non-infringing as it is only outputting jumbled snippets of source code. The expectation would be that the programmer will decide what to edit and what to compile. The only contention I could see is if Co-pilot outputs whole source code verbatim.
The biggest issue is the final output. I don't know if Microsoft did anything in particular to solve the issue of verbatim outputs. But whatever the case, I'm of the view that since Co-pilot is now production-ready, Microsoft may now be held legally responsible should such problems arise.
It might cause some people to lose faith in license enforcement, it might cause some people to lose faith in GitHub, but I don't see a scenario where it "kills" Open Source.
edit: my guess is github / gitlab etc terms of service would probably prevent this.
All your codes are belong to us.
It's time people remember open source existed before Github and it will exist after it. If you don't agree with Github's direction and decision, please use something else.
I have been incredibly happy without Github for the last two years and never plan on going back.
* Copilot isn't nearly as useful as some are making it out to be - I've been seeing thread on Reddit talking about how Copilot will mean devs will now be out of a job, and a bunch of other hot takes about what this means for the industry. I personally think that it won't be all that revolutionary, very useful, but it's not going to disrupt anything.
* The "Software vs Snippets" argument: Say you have an OSS project that is MIT licensed. Copilot learns from some of your code and offers suggestions based on what you wrote to another developer for say a helper function or a script. Technically yes, your License was violated and your code was stolen. But when you think about it on a more practical level it's not that big of a deal. The point I'm making is Software is all about composing a bunch of snippets into something of value. A dev ripping off my build script or key extractor helper function isn't the same as them ripping off my entire app. One is just fine, the other is not in my eyes.
The latter reaction seems hyperbolic. I have not used copilot yet so cannot comment on whether it is worth $10. It seems fairly useful but from what I have seen in demos it feels like fair use.
Open source code is open. It has likely been used to train or influence all sorts of static analysis, formatting and vulnerability tools. Are those also a problem?
Hopefully some court challenges will happen and we can get an answer as to the legality. Whenever things like this come up though, I wonder why people contribute to open source in the first place if they are going to be so bothered by their code being used by others. We all know this, or ought to, when we start contributing. There are companies that are going to make money from our contributions.
is this the death of open source licenses?
So my answer to this question, would be No.
my side concern (which may be overblown) is that this is the first step to completely replacing programmers and consolidating finances and power even further.
Edit:
additionally, I'm concerned about the "Death" of open source as in: if Microsoft can violate these licenses, what trust remains in the licenses? If people put restrictive licenses on their open source libraries, and now they know these can be violated, will they continue to support open source? And if so, what is the point of the license to begin with?
Going back to an earlier point, we do not know all of the analysis that has been done, whether academic or commercial, by examining open source code. Whether it is on issues of code quality or style, velocity, fix rates etc. Are all of those things also violating the license if that analysis leads to commercial success? What of GitHub itself and how it has improved or based features on what it learns from open source projects and how they use the service?
At this time, from what I have seen so far, I fail to see what is so different or special about Copilot. It did not illegally obtain the source code it used to train the model. Whether using the code to train the model is illegal itself, is another question but if it is then what other uses of the source code are illegal?
That said, I do believe it's outrageous there is no way to opt-out. I know that's very unpractical given the resources required to train the model, but presumably at some point it will be re-trained and there should be the ability to opt-out of future training cycles.
Seems like we haven't even reached the slope yet, much less slipped on it.
You contribute to open source because you want open source software to be better for you and for others, and Microsoft's use of it doesn't really affect that equation much (to me, at least).
If, on the other hand, someone was contributing to copyleft software because they dislike proprietary software & the corporations behind it, I could see this affecting their decision making, but even in this mindset, what's the other option? If your goal is FOSS and user-modifiable code, not contributing and or not open-sourcing your code is worse than Microsoft taking bits of it! The best strategy for this perspective to me is to remove all your code from GitHub, put it up on SourceHut or something self-hosted, and tell others to do the same (and don't buy Copilot, and tell others!)
tell that to M$ who is making $100 per user for that free labor.
My use of KDenLive, Blender, Gimp, or OBS isn't affected at all by the existence of scamware rip-off versions on the internet.
...with attribution. Which Copilot does not provide.
Copilot takes this away, in that a megacorp now uses the above contributions to provide a paid solution that essentially removes the need for people to even know you exist while allowing them to use the results of your work.
I don't think it's a death of open source, but it's definitely a mini-death of Github. At least myself personally I'm inclined to switch to SourceHut, which so far seems to be trustworthy, no-bullshit and with clear business model.
I find Copilot distasteful and frustrating, but I don't think the misappropriation of code it performs is particularly meaningful. I think it's worth pushing back on, surely, as a matter of principle.
But will it "end open source," or do I think about it when I make contributions to open source code or provide solutions to others? Absolutely not.
The biggest value of Copilot for me is the time saved by not having to search Google and/or documentation. It feels like I'm working with a relatively knowledgeable pair programmer -- which is nice for a solo dev. The value compounds for me since I frequently switch between frameworks with pauses in-between.
Since there's concern across the open source community, maybe Microsoft should reconsider the business model and spin-off Copilot as a non-profit. The proceeds can be used fund the staff and servers required to run the service and profits can be shared with open source developers on Github.
They trained on code with restrictive licenses (according to reports from multiple users), trained on open source free code etc. and then this microsoft the multi billion dollar corporation that acquired your warm and fuzzy home is now selling that code back to its (often times already paying customers) for $100 per year.
they are taking more than they are giving, benefiting from free labor. classic corporate move.
An author of infringed source code could always make a claim.
I can't imagine that it does.
That's a problem for releasing some things made with Copilot to the public.
And it's a gray-zone for closed-source software, for which any infringement could be hidden.
The copyright-vs-copilot thing is legally interesting, but I really can’t see who would stop contributing to projects because of it? My amateur armchair lawyer guess is also that using a nontrivial piece of copyrighted code without permission won’t be defendable by “copilot wrote that, I didn’t”, so copilot or not, code won’t magically just be washed of copyrights.