4 ms·
Apples and oranges: Stack overflow snippets are explicitly granted under a permissive license, as long as you attribute. https://stackoverflow.com/help/licensi
by gunapologist99 5y ago
Apples and oranges: Stack overflow snippets are explicitly granted under a permissive license, as long as you attribute.
https://stackoverflow.com/help/licensing https://stackoverflow.com/help/licensing
It appears that the code that copilot is using is created under a huge variety of licenses, making it risky.
On the other hand, a small snippet in a function that is derived from many existing pieces of other code may fall under fair use, even if it is not under an open source license of some sort.
- comex 5y agoExcept that CC-BY-SA is not a permissive license; the SA part is a form of copyleft. It's just that nobody enforces it. From the text [1]: - "[I]f You Share Adapted Material You produce [..] The Adapter’s License You apply must be a Creative Commons license with the same License Elements, this version or later, or a BY-SA Compatible License." - "Adapted Material means material [..] that is derived from or based upon the Licensed Material" (emphasis added) - "Adapter's License means the license You apply to Your Copyright and Similar Rights in Your contributions to Adapted Material in accordance with the terms and conditions of this Public License.' - "You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, Adapted Material that restrict exercise of the rights granted under the Adapter's License You apply." A program that includes a code snippet is unquestionably a derived work in most cases. That means that if you include a Stack Overflow code snippet in your program, and fair use does not apply, then you have to license the entire program under the CC-BY-SA. Alternately, you can license it under the GPLv3, because the license has a specific exemption allowing you to relicense under the GPLv3. For open source software under permissive licenses, it may actually be okay to consider the entire program as licensed under the CC-BY-SA, since permissive licenses are typically interpreted as allowing derived works to be licensed under different licenses; that's how GPL compatibility works. But you'd have to be careful you don't distribute the software in a way that applies any Effective Technological Measures, aka DRM. Such as via app stores, which often include DRM with no way for the app author to turn it off. (It may actually be better to relicense to the GPL, which 'only' prohibits adding additional terms and conditions, not the mere use of DRM. But people have claimed that the GPL also forbids app store distribution because the app store's terms and conditions count as additional restrictions.) For proprietary software where you do typically want to impose "different terms or conditions", this is a dead end. Note that copying extremely short snippets, or snippets which are essentially the only way to accomplish a task, may be considered fair use. But be careful; in Oracle v. Google, Google's accidental copying of 9 lines of utterly trivial code [2] was found to be neither fair use nor "de minimis", and thus infringing. Going back to Stack Overflow, these kinds of surprising results are why Creative Commons itself does not recommend using its licenses for code. But Stack Overflow does so anyway. Good thing nobody ever enforces the license! See also: https://opensource.stackexchange.com/questions/6777/can-i-use-source-code-licensed-under-cc-by-sa-for-commercial-closed-source-proje https://opensource.stackexchange.com/questions/6777/can-i-us... [1] https://creativecommons.org/licenses/by-sa/4.0/legalcode https://creativecommons.org/licenses/by-sa/4.0/legalcode [2] https://majadhondt.wordpress.com/2012/05/16/googles-9-lines/ https://majadhondt.wordpress.com/2012/05/16/googles-9-lines/
- deleted 5y ago[deleted]
- wrs 5y agoYes. In a past life, after researching the situation, we had to find and remove all the code copied from Stack Overflow into our codebase. I can’t fathom why SO won’t fix the license. What makes it even worse is if you try to do the right thing by crediting SO (the BY part) you’re putting a red flag in the code that you should have known you have to share your code (the SA part).
- Gaelan 5y ago> I can’t fathom why SO won’t fix the license. They tried to relicense code snippets to MIT a while back, it was a big mess.
- rorykoehler 5y agoIt just seems bizarre that this wasn’t flagged internally at Microsoft. They have tons of compliance staff.
- snicker7 5y agoThat's because Microaoft doesn't dare use this for production code (presumably). They are 100% okay with letting their competitors get into legal hot water.
- rorykoehler 5y agoIt’s surely a bit of a liability grey area?
- lumost 5y agoisn't it copilot's liability for "distributing" the copyrighted code?
- ngcazz 5y agoCould bet they baked in the legal fees and are taking a calculated risk
- mustacheemperor 5y agoMaybe we’ll even get a sneak peak at Windows 11’s source code. Time to start writing a Win32 API wrapper and see what the robot comes up with!
- throw_2021-07 5y agoStack Overflow and Copilot are similar. Usage of both routinely violates licenses. Stack Overflow content is licensed under CC-BY-SA. Terms [1]: * Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. * ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original. In over a decade of software engineering, I've seen many reuses of Stack Overflow content, occasionally with links to underlying answers. All Stack Overflow content use I've seen would clearly fail the legal terms set out by the license. I suspect Copilot usage will similarly fail a stringent interpretation of underlying licenses, and will similarly face essentially no enforcement. [1] https://creativecommons.org/licenses/by-sa/4.0/ https://creativecommons.org/licenses/by-sa/4.0/
- lumost 5y agoThe difference here is that it's hard to sue a company for sporadic, difficult to track down usages of SO content written by their own engineers. One can now trivially coerce copilot to regurgitate copyrighted content without attribution. Copilot's basic premise violates the CC-BY-SA terms, and this will continue until no party can demonstrate a viable method of extracting copyrighted code. There is now a single party backed by a company with a 2 Trillion dollar market cap that can be sued for flagrant copyright violations.
- moyix 5y agoSurely you would have to sue the people using the tool to produce verbatim copies of code, not the creator of the tool?
- Spivak 5y agoI would think it's more complicated when the tool is the thing spitting out the verbatim copies of code. Both the tool and the developer are independently distributing copyrighted code that neither of them have the rights to distribute.
- aasasd 5y agoIn addition to other licensing gotchas, a ton of SO snippets are copied wholesale from elsewhere—docs or blog posts. So it's pretty likely that the poster can't license them in the first place because they never checked the source's license requirements.