4 ms·
As a human, if I learn how to program by studying copyrighted code, is it unethical for me to use that knowledge to make a living ?
by andyp-kw 4y ago
As a human, if I learn how to program by studying copyrighted code, is it unethical for me to use that knowledge to make a living ?
- skydhash 4y agoIf you go around pasting code ad verbatim, a lot of people would be upset too.
- jakelazaroff 4y agoUnless Microsoft is secretly powering Copilot with Mechanical Turk, that isn't what's happening here.
- noasaservice 4y agoWhy not complete that analogy? What if instead of Copilot, it was a bunch of humans who were searching all the source code they could access and then copying/autocompleting that code, regardless of the license. Is that still OK? If yes, why?
- jakelazaroff 4y agoYou're reading too much into my comment. All I'm saying is that Copilot isn't "learning" like a human does.
- ctvo 4y agoA paid service where tens of hundreds of people search for publicly available code snippets and send them to you? I believe they call that outsourcing in some circles.
- remram 4y agoIn this case we'd be sending subpoenas to those people to make sure they hadn't been instructed to disregard licenses or copy large pieces of code verbatim.
- didibus 4y agoThat wouldn't be ok, I'm assuming that's what you're implying as well? In any case I would say that's not ok. Copying code, even if its from a mix of many different places, and the results look like a mosaic, would still be copying. If the Mturk worker just suggested an implementation they came up with that be fine.
- cycomanic 4y agoWhy not make the a ology the other way. If I put massive amounts of code into a database and develop some sort of query language that spits out various parts of the contents of the database based on the query am I covered by fair use?
- bamboozled 4y agoThe difference is this, you’re likely working for the company whose proprietary code you’re working on and using as a “training model” while contributing to the greater good of that codebase. You’ve been authorised to see this code.
- randomdata 4y agoI learned to code when a misconfigured CGI server spit out an application's code (it was written in Perl) instead of executing it. While that starts going down the long and complicated road of whether or not the machine is acting definitively, I think for our purposes here we can assume that the intent was for me to not have access to the code.
- bamboozled 4y agoSo you were probably illegally accessing another person or companies systems. Nice you got something out of it, I'm not judging you either, but it was probably not the correct way to operate. What you should've done was notify the owners of the incorrectly configured system and left it at that. You're also not a massive international conglomerate who should know better than to read every ones code and use it to turn a profit without first asking for permission. I use Github like a bank, not a public library (unless I'm working on open source). I never would've allowed them to read through all my code and use it for profits without at least asking.
- randomdata 4y ago> So you were probably illegally accessing another person or companies systems. Illegal would imply some kind of intent or malice. I was legitimately trying to access the executed result, which I would have been authorized to do if the service was operating normally. > What you should've done was notify the owners of the incorrectly configured system and left it at that. Seems unrealistic to "leave it at that". I had to read the output to understand it wasn't what I expected, and once I read it I knew how to code, at least to a cursory degree. The code was simple and it was a service I used frequently, so it was immediately clear how the code translated to the results I was accustomed to. Maybe that would be harder to do that now in my old age, but I was just a kid so I had neural plasticity on my side. > I use Github like a bank, not a public library (unless I'm working on open source). I never would've allowed them to read through all my code and use it for profits without at least asking. I don't know what kind of banks you deal with, but banks normally do read through your banking records and use that information to sell services to their clients – notably loans, which require knowledge of your deposits to offer.
- kovac 4y agoNo, as long as you respect the original authors' terms of use of that "knowledge"
- pretendscholar 4y agoThe difference is scale. You will get old and die before you ever even reach 10 percent of the corpus.
- comex 4y agoThat only shows that humans are better at learning than machines are right now. I may not have read as much code as Copilot, but I have read quite an amount of it, and it strongly informs the code I write, with respect to style and structure and algorithms. (I don't copy functions verbatim from memory, but neither does Copilot the vast majority of the time.)
- didibus 4y agoI'll repeat something I asked elsewhere here. From what I understand, it is not proven that the AI uses the knowledge of concepts and logic to write the new code. It is likely that it actually performs instead a very optimized stitching of code it previously saw. Is my understanding outdated here? From the ethical point of view, I'd say you're making some assumptions here that result in it being ethical when a human does it, and those assumptions might not hold for an AI. For example, you're assuming a win/win outcome, where your learnings from copyrighted open source code don't harm the original authors ability to find work, or the value of their code. With an AI I think there are possibilities we're looking at a win/lose situation, where Microsoft wins big, and maybe some other developers that also profit of their use of copilot, but where the original authors of the code that went to train it see their skills be devalued over time as a direct consequence. In my opinion, a win/lose is unethical. What I'm not convinced is that we're looking at a win/lose, but I think there's a possibility.
- Siira 4y ago> a very optimized stitching of code it previously saw. I have seen this line repeated many times, but I never saw it actually explained. A lookup table is dumb and easy to understand/interpret. Deep models are not that. They are also not a linear interpolation of … something. What exactly is the claim being made here? Yes, deep models don’t generalize too well on ood data. How does this make them a “very optimized” lookup table?
- nonrandomstring 4y ago
- xxs 4y agoIf copolot has the ability to write a whole application instead of suggesting based on its lookup and context, you might have a point. Unless proven otherwise I'd consider it a giant lookup table with (self)adjusting weights.
- gwnywg 4y agoYou eventually, at some point, write your own code which is not reproduced. From what I see Copilot authors state that copilot is reproducing code, it is not inventing new code like human being would. It seems to be big and efficient database of somebody else's code that it reproduces.
- AlexandrB 4y agoSetting aside the very real question of whether AI "learns" the same way we do, it's bad enough we treat corporations as "people" in a legal sense, let's not start extending the same courtesy to software tools. People have special rights and responsibilities under our legal system - we don't send an airplane that has a mechanical fault to prison for a crash nor do we extend right to life to a web server. Humans have an implicit the right to learn by reading copyrighted material, machines have no such right.