15 ms·
Copilot under fire as dev claims it emits 'large chunks of my copyrighted code'
- tpxl 4y agoPrevious discussion at https://news.ycombinator.com/item?id=33226515 https://news.ycombinator.com/item?id=33226515
- xwdv 4y agoIf the code is only being used for private internal applications who cares?
- yakcyll 4y agoIf a piece of copyrighted artistic work is only being used for private pleasure, who cares? Copyright doesn't, for sure.
- Ekaros 4y agoIf a computer game or software is only distributed to be played or used on private machines, who cares?
- tpxl 4y agoWat. Most computer games are distributed to be played on private machines. Everyone cares, especially the copyright owners.
- bakugo 4y agoPretty sure that's the point being made.
- xwdv 4y agoMost computer games are leased to you in accordance with a terms of service. You play privately, but you have absolutely no right to copy and redistribute the work to the masses, or even do whatever you please with it. Not so with a piece of code that you use privately.
- forgotpwd16 4y agoIt was sarcastic, pointing to the similarity between what previous comment says and pirated games.
- manholio 4y agoDepending on how you acquired the work, copyright most certainly does care.
- ben_w 4y agoThe copyright holders care, historically speaking. I wouldn't be surprised if lawyers/courts/lawmakers determine that current generative AI are on the "infringing" rather than the "inventive" side of things. I think there is potential for this to change as AI gets better: https://kitsunesoftware.wordpress.com/2022/10/09/an-end-to-copyright/ https://kitsunesoftware.wordpress.com/2022/10/09/an-end-to-c...
- manholio 4y ago> AI are on the "infringing" rather than the "inventive" side of things Does it really matter? Once you embed copyrighted works into your learning dataset, any model you ship and any "creation" of that model is by definition a derived work, must have a license from the original authors and must obey the terms of that license. The extent of derivation is immaterial. The AI crowd is on a hard collision course with an army of gavels.
- Kim_Bruning 4y agoThat's definitely one legal theory. The theory used here though is that fair use permits transformative use. Normally copilot output should be sufficiently transformative. This particular situation appears to be a sort of bug (overfit). Note that AI models already work somewhat similarly to how humans work (becoming bug-for-bug compatible at times even :-P ). We may need laws to be amended in the opposite direction even, else it might become illegal for humans to learn too.
- blibble 4y agothe US concept of "fair use" is far from universal and is more liberal than in the vast majority of the rest of the world
- manholio 4y agoI think any legal theory that must equate people with machines to prove its point is dead in any real court. Laws are made by people for people, to protect people's interests, so the analogy is just about as effective as requiring a human to work 16 hours because a horse can, and both operate on similar principles. Of course everything a human learns and produces is a derivative of real world input, some of it copyrighted. But people agreed that this transformation is a form of fair use, as long as the derived work is sufficiently creative - where the key implicit assumption is that creativity is a human ability that warrants protection. Both the creator and the learner enjoy protection because they are human. In the AI case, the output of a program will certainly not receive protection by default - it will be protected only as a consequence of its human creator or user rights. It doesn't really matter how transformative and analogous to the human mind the program is, the output only deserves protection solely for its unique human created parts - the internal working and the extent of the craft embedded in a GPT3 text prompt. The first is unrelated directly to the work produced, and the second is laughable vs the artworks embedded in the model. If in the future AI advances to the point where it can be granted natural rights, this could change, but we are far far from that point.
- neximo64 4y agoDevils advocate: If you signed the TOS for Github aren't you giving it away?
- jlouis 4y agoNo.
- bamboozled 4y agoNo, read the TOS.
- asutekku 4y agoTheoretically this could be addressed by looking for the earliest occurence of said code in github and check its license. Sure, there are some edge cases where original copyrighted code has been removed and only unlicensed repo remains but it would be better than nothing
- csmpltn 4y ago> "Theoretically this could be addressed by looking for the earliest occurrence of said code in GitHub and check its license." That's a pretty big hash-list you've got there...
- asutekku 4y agoI was thinking of looking at patterns instead of hashes and then do a closer comparison if the pattern matches
- Double_a_92 4y agoThey could create two different AI. One that writes code based on code that supposedly has an allowing license. And one trained on private code or code with a restrictive license that takes code as input, and tells you if it breaks the license.
- mort96 4y agoHow do you find an earliest occurrence of the code? It's not a perfect match, so you can't just look for an identical source code or AST.
- csmpltn 4y agoWhat are the chances that the code in question was ingested without the license being available in the first place? What I mean here: 1. Person 1 writes Library 1 with License 1, and posts it to GitHub under Person 1's account. 2. Person 2 steals code from Person 1, or parts of it, without carrying over any of the original license information. This code is then posted to GitHub under Person 2's account, without any links to the original repository. 3. Copilot is trained on data from Person 2's repository and is able to reproduce it despite the original code being under license.
- codazoda 4y agoHopefully they didn’t train on unlicensed code. In the US everything has automatic copyright.
- cma 4y agoGithuh automatically gets a license to redistribute in code form when you upload a public project. Though you may not necessarily have the rights to give if it is a third party's project.
- 3836293648 4y agoWhich is complete nonsense as most of the time the person forking does not have the right to license the code to github like that
- williamcotton 4y ago"In computer programs, concerns for efficiency may limit the possible ways to achieve a particular function, making a particular expression necessary to achieving the idea. In this case, the expression is not protected by copyright." https://en.wikipedia.org/wiki/Abstraction-Filtration-Comparison_test https://en.wikipedia.org/wiki/Abstraction-Filtration-Compari... This allows for verbatim copies if they are utilitarian in nature! As for why we should allow verbatim copies of utilitarian features... First, let's preface this with the substantial similarity of the structure, sequence and organization as established in Whelan v. Jaslow which amongst other things says that you cannot merely change the variable names if the expressive structure of the code remains the same. Now let's imagine 10,000 software developers who all implement Dijkstra's algorithm in C and then run it through clang-format. Aside from variable names, isn't it safe to assume that many of the implementations are going to be exactly the same? Now, this doesn’t mean that GitHub is not in violation of other copyright claims, such as clearly expressive parts like comments and more!
- naillo 4y ago> Not so, says Alex Graveley, principal engineer at GitHub and the inventor of Copilot, who responded that “the code in question is different from the example given. Similar, but different.” Oh ok so if I come upon a piece of copyrighted microsoft code all I have to do is rename the variables and modify some whitespace and it's no longer owned by them. Lol.
- tebbers 4y agoIt's a tricky question surely, akin to the Ship of Theseus? At what point is the code sufficiently different? Is there legal precedent for this?
- arrosenberg 4y agoGoogle v Oracle
- escapecharacter 4y agoI actually would have loved if there was a real greek legal case for this, like we could just say "Lycurgus vs. Theseus" and it actually meant something.
- simiones 4y agoThat's not what Google v Oracle was about. That case was about whether the API of a piece of code (in this case, the API of most of the Java standard library) is copyrightable as a whole, without the implementation; and subsequently, even if they are copyrightable, whether a new implementation of that API would be fair use. In the end the conclusion from the SC was that Google's use was fair use regardless of the question of copyrightability, which they didn't decide on (the previous court, at Oracle's appeal, had found that APIs are in fact copyrightable and that Google's use did not fall under fair use of that copyrighted API as they weren't 100% compatible with other JVMs).
- beardyw 4y agoIIRC Google were scrupulous about ensuring there was no possiblity that the implementation might be derived from the original.
- tonetheman 4y agoI mean this is how humans learn. You look at code and over time you will spit out some section and in some cases large sections of things you have seen. I guess when a computer does it people get creeped out. Or the computer is not smart enough to change the variables names. :)
- bakugo 4y agoIf a human """learns""" the code and ends up writing a 1:1 copy of a large function, comments and all, without respecting the license, they are breaking the law. People need to stop twisting this into a different issue than it is, copying is not the same as learning.
- londons_explore 4y agoEven if it does violate copyright, I think there is a strong argument for adjusting copyright law to allow training ML algorithms with any data, no matter the source. In cases like this, the benefits of the technology are so huge, and the downsides to the original code author so tiny. Was he actually going to license that code to someone who said 'nah, I'll recreate it with copilot instead'? Very few people successfully license anything less than 100,000 lines of code anyway.
- tokai 4y agoThere are many good arguments for reorganising copyright law. But giving tech companies an easier time stealing others work to make money is not one of them.
- arrosenberg 4y agoIt doesn’t honestly matter. If the big tech companies want to call off the IP war, thats fine, but until such a time they should be forced to play by the same stupid rules us mortals have to comply with.
- batch12 4y agoI should have some say in whether a company with a 1.76 trillion dollar market cap can further enrich itself with my work without compensation or attribution. If copilot was about the greater good, the entire product would be free at all tiers.
- trention 4y ago>the benefits of the technology are so huge, and the downsides to the original code author so tiny When this starts impacting emplyment opportunities for devs, get back to us with the "tiny" downsides.
- AlexandrB 4y ago> In cases like this, the benefits of the technology are so huge, and the downsides to the original code author so tiny. Benefits to whom? I don't recall Microsoft making this technology free for OSS development. Suppose you're right and 5 years from now everyone is using co-pilot. To remain competitive with proprietary software, OSS developers will have to use it also but they will still be paying Microsoft $10/month for the privilege. Meanwhile none of them were compensated for making this possible in the first place.
- sva_ 4y agoIt's kinda weird how seemingly the same people who usually argue that software patents/copyrighted algorithm implementations are bullshit, now suddenly get all defensive about it.
- crakenzak 4y agoProbably because they feel their jobs are being threatened by these AI systems. Cognitive dissonance at its best.
- stingraycharles 4y agoI don’t think that’s it; I think its mostly the lack of credit, and supposed claims of Copilot “generating” code, that makes it look very bad when its just basically copy/pasting someone else’s code without credit. I bet the same people would be fine if this code was included verbatim with appropriate attribution and licenses. But that’s not the case.
- a3w 4y agoThe dev is defending (his) copyleft, not patents. So let me stick to discussing the former, not the latter, in the following post: His opinion, as well as the current state of law: His code could and shall be used pretty freely, but a comment referring to the original license/author is needed. The context: Having an option to "leave out copyrighted code", that does not do what the option suggests, is a flaw, both in a functional and secondly with law-as-is, in a legal way.
- dottedmag 4y agoIt's kind a weird how patents and copyright are lumped together.
- williamcotton 4y agoWouldn't it be nice if people knew the distinction? Copyright is for useless things like music and poetry and does not cover utilitarian features. Patents are for utilitarian inventions. The problem is that code is text-based and obviously some kind of writing while mostly being a utilitarian invention. The courts of course recognize this distinction (because unlike the average software developer, lawyers and judges have studied the law) so they have come up with a number of ways to filter out what is and isn't covered by copyright with regards to software.
- softwaredoug 4y agoIn my experience those “large chunks” can add subtle bugs that require careful inspection.
- endisneigh 4y agoEither these things stop or software licensing is meaningless. Pick one. People somehow arguing that both things can be untrue are delusional imo. If copilot is ok, then obfuscating code in order to get around a license is ok. Copilot can produce agpl code verbatim, and per the license copilot should also be agpl, but that’s not going to happen practically, so copilot will probably be shut down. This is to say nothing of commercial code. Best way to think of it is like - if copilot was a group of people manually writing and sending code would it be ok? No. Why should big tech be able to effectively reproduce the work of the little guy without following the licenses they set?
- le-mark 4y agoThis, everyone seems to have forgotten or never known that “open source” isn’t a license. Commercial entities can make code open but with a closed license. The main example being UC Berkeley and BSD Unix. Seems like the copilot people confused “public” code and having a free or “open” license to the code.
- rectang 4y agoCode which is publicly viewable but available under a license which doesn't meet the Open Source Definition[1] is commonly called "shared source" rather than "open source". They aren't really confused about the licensing. Microsoft suggests that no matter what the license is for training code, generated code is not infringing — either because Copilot training is "fair use", because the similarity isn't strong enough, or because the amount copied is de minimis. However, the risk is primarily borne by the users, not by Microsoft. [1] https://opensource.org/osd https://opensource.org/osd
- simiones 4y ago> Microsoft suggests that no matter what the license is for training code, generated code is not infringing They claim no such thing. They claim that Copilot itself is not infringing any license by being trained on code - that their own use of the code for AI training purposes is fair use and that the Copilot NN is not a derivative work of any code in the training set. But they explicitly warn you that code that Copilot generates may infringe others' copyright, and that you should use "standard IP scanning tools" to ensure you are not infringing copyright by using the code Copilot spit out.
- prepend 4y agoIs it really their code, or is it code many people have written over and over? It’s pretty hard to prove that the code was copied from an individual, so good luck to them. I think one of the things the FSF kind of got right is that copyrights (and patents) on code are kind of unnatural and difficult to enforce.
- whywhywhywhy 4y agoDoesn’t the same argument stand as it does when Dall-e 2 etc recreate artist signatures. “It looks like your copyrighted code because it learnt from reading your code”
- schwartzworld 4y agoCopyright is inherently immoral, but undermining that system for the sake of corporate profit is worse.
- Kim_Bruning 4y agoWhile modern copyright law is awful, the problem with abolishing copyright is that occasionally it actually still protects the little man. This happens just often enough that -politically- you'll find a sufficiently large group of people opposed to its abolition at this time. It truly is an example of "the worst system except for all the others." :-(
- simiones 4y agoAre you arguing that the GPL and its goals are immoral?
- teddyh 4y agoGPL is, according to its creators, a tool for undermining copyright.
- simiones 4y agoIt is not. Or, to be more precise, it is a way of working within the copyright system to uphold the 4 freedoms that they consider most important. But, importantly, abolishing software copyright would not give users the 4 freedoms. Instead, the goal of the Free Software movement would be to enshrine the 4 freedoms into law - for example, making it illegal to distribute software without making the source available, and to make it illegal to distribute hardware devices whose software can't be changed by the end user. Having copyright + the GPL is more useful than no copyright at all.
- ben-schaaf 4y agoFrom my understanding the GPL was created as a hack on copyright law in order to prevent abuses. Without copyright laws the GPL wouldn't have been needed in the first place. See https://www.free-soft.org/gpl_history/ https://www.free-soft.org/gpl_history/
- hardware2win 4y agoI have mixed feelings What will benefit the world more? I'd say allowing to train But on the other hand I'd probably be pissed off if somebody took my work without credit Hard to say, maybe link to original code would be fine?
- baby 4y agoWhy are people obsessed with credit in places where it doesn’t matter? Nobody looks at code and read comments or files crediting others. Maybe in an article, or a whitepaper, or a blogpost, sure.
- hardware2win 4y agoThats fair opinion and I kinda agree, but I dont see how to balance it Do not annoy copilot users with credit spam and actually give credits
- account42 4y agoObviously it matters to the people who wrote licenses that explicitly require credit and to the people that chose to release their code under such licenses.
- Timwi 4y agoWell, I can't speak for others, but my obsession is not with the lack of credit per se, but with the shameless profiteering off of it. If it were just open-source and free for everyone, I wouldn't care.
- AlexandrB 4y ago> What will benefit the world more? > I'd say allowing to train If we widen the conversation a little, I would argue that it would benefit the world to publicly release the source code of Windows 11. Not only would Jr. programmers get a huge real world code base to learn from, but I'm sure many exploits could be found and fixed in short order. So why are we limiting the discussion to violating just FOSS copyrights?
- carlgreene 4y agoMy immediate thought is a human plagiarized the code, changed some variable names and white space up, and then uploaded it to GitHub without a license, or without a copyright license and that is where Co-Pilot got it from. I could be totally wrong, but I have a hard time believing GitHub didn’t pay attention to licenses when training CP. I would put my money on some random person not respecting a license (like me, many times) and putting it up without thinking about the downstream effects.
- a3w 4y agoGithub text search is pretty comprehensive. Should be findable, if it is in a public repository. Are private repos treated as copyrighted by the "only copyright free code" case?
- highwaylights 4y agoEven in this instance though, I’m not sure that this really falls at the feet of the person that uploaded it. IANAL, but if someone naively uploads my copyrighted code and just checks the MIT License box without knowing better, I’m not about to sue them over it. I’m not sure “but this 13 year old kid learning to code for the first time uploaded it under a permissive license and it got gobbled up by our crawler so it’s not our fault your honour” would be an effective defence in court, either. That all said, I’ve largely just described any modern search engine which has been working in this way for years. So.. shrug? Will no doubt be litigated at some point down the road.
- ksidudwbw 4y agoPiece of code doesnt look like it does anything mind blowing
- mkr-hn 4y agoYou're thinking of patents. Novelty isn't important in copyright.
- 627467 4y agoMS being a rich org is well equiped to fight this legal battler however they want. They don't need our sympathy. We also don't need MS version of AI coder. Even if they have been legally dissuaded to create co-pilot, someone else would. The issue I'm more bothered with is: the actual cost of copyright/license enforcement. Do we as society really want/need to be accepting and sustaining these costs? The time wasted? I don't buy the argument that without strong IP laws no good code will be shared publicly: great code is already shared via VERY permissive licenses (and not so permissive ones and yet _stolen_ without others knowledge). Entire enterprises exists adding to the shared corpus of code. Also, look at other industries where ideas are copied/remixed without attribution all the time: fashion. It never dissuaded new fashion designers or companies to be formed.
- baby 4y ago+1. Imo we need to get rid of licenses once and for all. If you don’t want your code to be used, then don’t open source it. Simple.
- account42 4y agoOk as long as we can also freely copy all other works, including Microsoft's.
- 627467 4y agoIf you can learn of it I don't see why not.
- iostream25 4y ago
- dang 4y agoWhoa, you can't post this aggressively to HN, regardless of how wrong someone is or you feel they are. We're trying for something different here, so we have to ban accounts that post like this. If you'd please review https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html and stick to the rules when posting here, we'd appreciate it. Edit: since you've been using multiple accounts to do this, I've banned this one. Please don't create accounts to break HN's rules with.
- gatestone 4y agoHow is this problem different from DALL-E and such? Is the copyright legislation ready for all this, and when will there be established interpretations of law?
- sfpotter 4y agoJust for some context, Tim Davis is both the author of SuiteSparse (library in question), and one of the main researchers behind the algorithms used in SuiteSparse. It’s common for academics working in this field to release their software open source instead of licensing it, both as a service to the public and in order to secure support. Davis is an incredibly successful academic whose software is used absolutely ubiquitously. This approach has worked for him: he has had many industrial partnerships and support from the government. Attribution here means supporting science. If you think that it isn’t a big deal that Microsoft isn’t properly attributing him, what you’re saying is that you think it’s OK for Microsoft to be subsidized by tax payer (and private) dollars, since that’s what’s happening here. The code is clearly identical, with the exception of a few tiny transformations which leave the functionality unchanged. Arguing otherwise is being disingenuous.
- baby 4y agoThis kind of comment is going to poorly age
- Kiro 4y agoHis code is already used in thousands of repos without proper attribution. Isn't that worse? If you want to steal his code you can just copypaste it. No need for a convoluted prompt baiting Copilot into reproducing it.
- sfpotter 4y agoYup, and I bet a lot of those repos are on GitHub. Which is owned by Microsoft. And which were then fed into Copilot. It’s almost like Microsoft is capable of not only trawling through huge amounts of code, but accurately identifying Tim Davis’s code. Would be pretty crazy if they used these tools to identify instances of copyright/left infringement and help its users and the open source and scientific communities instead of making it clear that they do not want to do those things.
- w0m 4y agocan you imagine the absolute shitstorm/nightmare if MS automated the equivalent of DMCA takedowns across public github repos? The internet would explode i think.. lol.
- Barrin92 4y agomachine learning is apparently now the software version of carrying your dirty money to the casino. As a thought experiment I wonder what the reaction would be if one day it was revealed that copilot is actually just minimum wage coders in Lagos who strip open source code of their attribution, rename a bunch of variables and reformat the code and then sell those snippets as a service at the behest of a gigantic company.
- fsloth 4y agoI think this is a becoming repeating pattern in creative industries where a machine learning model is taught from a corpus on existing, copyrightable and attributable work - it creates content that plagiarizes and infringes on the rights of original authors. I'm using "pattern" quite loosely here as recent ruckuses come from the StableDiffusion image synthesis and CoPilot - n=2. I have no idea what the ethical and legal long term ramifications are.
- soderfoo 4y agoDoesn't it all boil down to memorization vs. application? It seems, with copilot it's mixed. Sometimes it regurgitates blocks of existing code, other times it can apply context and patterns to create boilerplate code.
- LelouBil 4y agoWhile the fact that github is unclear about all thisis true and the legality of both training copilot with licensed code and using it's output is even less clear, in my opinion copilot can still be a usefull tool when you know when and how to use it. > Developers may wonder: is this AI that generates code, or AI that searches the web for open source code that might be suitable? Developers who wonder this never tried/researched about copilot. What it's actually usefull for is to generate code thightly integrated into yours, or doing boilerplate/repetitive stuff based on what you have already written. Example : I have a base exception class and classes that inherit this class all with different names. I'm writing error handling logic and only wrote the case for the first error class, with an error message and everything. Copilot is able to generate the cases for all the other classes, with unique and descriptive error messages for each one. If you only use it for this kind of stuff, it saves time and you don't have to worry about licenses/code laundering for simple cases like this.
- dns_snek 4y agoThis is my takeaway from using Copilot as well. Given my domain and language of choice, Copilot's suggestions range from non-idiomatic to completely broken when it comes to any kind of feature work. I don't think of it as a tool that solves problems for me, I see it as a glorified autocomplete that understands code and is skilled at applying patterns from previous lines (e.g. in config files) and other files in your project in a way that usually makes sense. This is a contrived example, but just to illustrate the kind of pattern matching I'm talking about, say I'm writing the following code: VAR_PROJECT_A_VAR_A=$(curl http://localhost/PROJECT-A/VAR-A http://localhost/PROJECT-A/VAR-A) VAR_PROJECT_A_VAR_B=$(curl http://localhost/PROJECT-A/VAR-B http://localhost/PROJECT-A/VAR-B) VAR_PROJECT_X_VAR_Q5_X= It will auto-complete it with the following, as expected: $(curl http://localhost/PROJECT-X/VAR-Q5-X http://localhost/PROJECT-X/VAR-Q5-X) It feels like Copilot understands the context in variety of programming languages and configuration formats. If you're writing a Docker Compose file and define a Redis service that contains the flag `--port 8888`, it will automatically offer to autocomplete your exposed ports with 8888:8888. Without the --port flag it will suggest 6379, which is the default port for Redis. These examples are trivial, but I find that these savings really add up and cut down on the amount of boilerplate and otherwise uninteresting busywork you have to do. Of course the copyright-violating aspects of Copilot are inexcusable, but I still find Copilot to be useful in other ways.
- deleted 4y ago[deleted]
- LelouBil 4y agoLast time this was posted someone linked the GitHub terms of service, and they explicitly stated that when hosting your code on GitHub, you allow them to analyze your code.
- janosdebugs 4y agoLet's say I don't host my open source code on GH (I do). What prevents anyone from mirroring it to GH? The person uploading the code would not have the rights to grant permission to the uploaded code beyond the license. Edit: which ToS paragraph are you referring to? I haven't been able to find any grant of rights beyond the ones needed to use GitHub.
- LelouBil 4y agoHere : 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.... > This license includes the right to do things like copy it to our database and make backups; show it to you and other users; parse it into a search index or otherwise analyze it on our servers; I think using it to train an AI model falls into the "analyze it" part. And bout the mirroring, I'd say what happens is the same as whatever happens if someone sold you something stolen. I don't know exactly but I think the same kind of law applies.
- nashashmi 4y agoLet's say I write code, give it a license, publish it, and then some college student takes my code and republishes as part of their project without a license. Copilot will copy that college student's code, even if it looks similar to mine.
- 627467 4y ago2022: the year when multiple "white collar" professions feel the Luddite urge to rebel against AI.
- jmartin2683 4y agoThe last line of this article is intended only to confuse people. Odd choice.
- elforce002 4y agoThere has to be a line drawn somewhere. The main issue here is that MS is taking advantage of OSS by using the massive codebase available to them. You can't play both cards and expect devs to take it and move on. They started by stating "we love open source". Created tools to demonstrate their commitment and then when the community lowered their guard just a little bit, boom, back to old practices. This is a rant but you get the idea. The level of corporate malice and greed is almost comical and it was perfectly executed. Start saying you love OSS. Build tools (vscode) to attract devs and keep selling the message "for the community" (WoW reference). Create a Linux environnement to stop bleeding devs and keep selling the message. Buy the largest code repository in the world and keep selling the message. The community starts letting its guard down since it seems they are changing. Then, with no surprises on why this happens, switch gears and start going back to old habits. Rest assured this was not "this is what's best for the community" decision nor it was decided 2 years ago. We tend to forget that corporations only answer to shareholders. That's it. Everything is and will be, one way or another, aligned around them.
- joshstrange 4y agoI'm torn on this, on one hand I use CoPilot and I quite enjoy it, on the other I don't love the idea of it injecting copyrighted code. That said I've not seen any example of it auto-completing something for me that could legitimately be considered "copyrighted code". Like if the boilerplate it spits out (that is specific to my codebase) is copyrighted then we are all fucked. Same deal with simple filter/map loops that it spits out. Sorry I just don't care about that at all. You can't convince me that typing get item() { and it autocompleting it to get item() { return (itemId: string) => { return this.items.find((item) => { return item.id === itemId; }) || null; }; } is using copyrighted code, especially since I've written scores of nearly identical functions on my vuex (vuex-module-decorators) stores long before I touched CoPilot. Maybe it's "stealing" from my own code? Good! That's exactly what I want, follow my previous patterns. And honestly if it auto-suggests that to someone else then I don't care. Sure, if I write a `doReallyComplicatedMathmaticFormula()` and it autocompletes super complicated code then that's one thing but I've literally not seen that once (or maybe I just don't write any code that would cause it to inject larger chunks?). Also if it's something really "basic" like the Haversine formula (determine distance between 2 sets of coordinates) then I'm fine with it injecting an implementation of that, is that really copyrightable? There are only so many different variable names/ordering you can do and still be using the Haversine formula. Almost all the code it's suggested has been in my style (naming, spacing, etc) and referenced variable/property names that are either super generic OR super specific to my codebase (I seriously doubt anyone else has some of these variable names we came up with, if you do then my apologies).
- forgotpwd16 4y ago>but I've literally not seen that once That's exactly that's happened and discussed in the submitted article. For reference the code reproduced (literally) is: https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/dev2/CSparse/Source/cs_transpose.c https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/dev2....
- losvedir 4y agoI'd like to stake out the position, which I hope remains within the overton window, as tenable, that "information wants to be free". There was a pretty strong contingent of people in the tech world that believed that at one point, though tech has grown to the point that "adults" have stepped in, and lawyers, and big money, etc, etc. I remember using Napster for the first time back in the day. Amazing! All this free music at my fingertips, sharing P2P, so cool. And I thought Aaron Swartz was a hero. More recently, SciHub is one of the greatest things to happen to knowledge sharing ever. Software patents are stupid and cause more harm than they're worth, and everyone hates patent trolls, right? Copyright is just a tool to be abused by Disney's lobbyists. I think the latest tools like Copilot and the stuff Stability AI is releasing fits right in here as amazing tools heralding a new future of exploration and leveling up the power of creators to create. Remixing existing data, maybe copying it, whatever. Obviously, I'm an adult now, and when working for my corporation I have to be diligent about respecting software licenses and getting lawyer clearance for using tools like Copilot and such, but at some level I've got the Mr Anderson vs Neo thing going on in my head and it feels a little bit like we've lost something from the freewheeling days of early tech.
- koyanisqatsi 4y agoIf information wants to be free then information belongs to the commons and not corporate entities that obfuscate the real source of value so that they can profit from it. Making code more accessible is great, profiting from it and not giving back to all the folks that made it possible is not. I tried co-pilot and understand why statistical auto-completion based on the efforts of large groups of open source volunteers is useful but if Microsoft wants to charge a fee for the service then they need to respect the licensing terms of the code they are using because without the data set provided by all those volunteers co-pilot (and statistical auto-completion in general) would be impossible.
- gjsman-1000 4y ago> need to respect the licensing terms of the code they are using because without the data set provided by all those volunteers co-pilot (and statistical auto-completion in general) would be impossible. You assume that is even possible. I do not believe that would be possible, at all, at least completely impractical. Copilot would not exist. Also, remember Copilot is from the United States, where we have a thing called "fair use." If a court finds that Copilot is "fair use," copyright and license are completely irrelevant. Cry me a river, it doesn't matter. We already know many things in tech are fair use: - Google v Oracle showed copying API titles was fair use. Even if you copied tens of thousands of them, for the near entirety of Java. Also see ReactOS, which clones the Windows API; and Linux, which cloned the UNIX API. Imagine how Microsoft and the UNIX vendors felt - but it did not matter. - Just because John Goodall had `AddTwoNumbers(int x, int y)` implemented as `return x + y;" back in 1981 doesn't mean you can't too. Even if you read his work. There is a degree of copying that is legal, despite copyright or potential infringement, that is decided in courts on a case-by-case basis when someone complains. - And finally... even if it regurgitates proprietary code once in a while, that does not make a service de-facto illegal. See YouTube. Just because someone gets clearly copyrighted material (such as an entire movie) on there doesn't make YouTube illegal if YouTube takes it down and tries to prevent it from occurring. If GitHub argues the same, that they try to prevent large regurgitations in good faith, and remove complained-about regurgitations on request, the odds of the court shutting Copilot down approach 0%.
- shlip 4y agoIt's a bit ironic that copilot is under fire from coders when most of them find stable diffusion so great...
- Timwi 4y agoIt's not ironic at all. Stable Diffusion is open-source and free software. Copilot is a for-pay, closed-source commercial product.
- piokoch 4y agoIf people want to keep their code free of third party manipulations, just don't use freemium services like Github. They want to make money on your code in exchange for free place to keep it and popularity you can get. If this is not fair for someone, well, there are cheap paid services that will provide similar functionality.
- jokoon 4y agoThe silicon valley had always being about listening to salesmen, and dismissing lawyers and developers.
- addingadimensio 4y agoLol imagine these guys are writing code without being able to read anyone else’s code first, Rather than Giants we are standing on the shoulders of whiny babies
- xchip 4y agoI am OK with copilot. We are all getting trained on someone's else code and up to a certain point replicating it (along withe some mix and matching). Let's make an open source version, this should be for everybody.
- quietbritishjim 4y agoI'm not sure I agree exactly but riffing on this idea... How many times have we written code to solve a problem, got a new job at another company and come across the same problem and ended up writing very similar code. That's not even copying code written by another person, but still potentially copyright violation (depending on how similar that new version of the code is).
- mensetmanusman 4y agoThis is easily fixable, Copilot could do a post search prior to recommendation to see if it is explicitly copying something that is explicitly unique and not used in any other code bases. If it only finds one, it can list it, but highlight it with the associated licenses.
- UweSchmidt 4y agoThe discussion centers around copyright for now, but it seems those code-generating (and art-generating) AIs are just starting out and have a lot of room to grow. If future versions are just magical, our current ideas of programming will be obsolete, regardless copyright considerations. Maybe we are a little too short sighted and defensive while facing our industrial revolution in the form of the AI revolution, which is coming for our jobs, or at least for the way we are used to do our jobs. Those pesky copyright violations could be manually 'fixed', or, Microsoft could go and prove with their data that programmers are all just reinventing the wheel and are actually reimplementing the most basic stuff over and over. Meanwhile, they might be correlating live data from Azure and git histories from many projects, and have Copilot refactor your project based on load. Unthinkable?
- patrick451 4y ago> Not so, says Alex Graveley, principal engineer at GitHub and the inventor of Copilot, who responded that “the code in question is different from the example given. Similar, but different.” Isn't this still a copyright violation? I'm not a lawyer, but I always thought that swapping in a few synonyms wasn't enough to sidestep copyright issues.
- Timwi 4y agoYou are correct.
- bioemerl 4y agoAll of this is why I'm never going out of my way to use an AI model I can't download and run on my computer. If a valuable tool can disappear due to copyright issues I'm not using that tool.
- aaroninsf 4y agoIANAL but I gather from friends who work in compliance, that reimplementation more or less effectively shields you from "copyright" claims on code. As a result it sure seems like Copilot or similar applications of DL/ML is a red herring a general criticism. If someone is upset their elegant solution to a specific problem is being replicated, that's not about DL/ML; and there are unlimited opportunities for reverse engineering or reimplementing or transforming or rewriting or whatever you like, which affect the same algorithm etc. If you want a software patent, take up the fight in that domain. If you don't want people reusing your logic, don't put it in public view or for that matter anywhere an interested and motivated party might disassemble or deobfuscate it.