A Code License for Stack Exchange There have been heated discussions(1 2) over what license should be used to cover the code posted on Stack Exchange because the CC-BY-SA license is inadequate. Both have been received with criticism from both legal advisors and common folk. So, what are the possible licenses that would benefit Stack Exchange. I am aware there is no perfect license and that there is always room for opinion, but here are the things you could consider: Many users don't care if their code is copied. For other users, they don't mind their code being copied to another post, as long as there is a link to the post and a mention of the original author. I don't think anyone cares what happens to code that is less than 3-4 lines at least. Stack Exchange does not probably want people to own the code they submit. For example, Stack Exchange has (and probably wishes to retain) the right to keep even deleted posts in the visibility of the high rep users (even if the author is against it). At the same time, it doesn't seem fair for SE to acquire complete ownership of the content. The user must still have the final say, if the content is to be used for purposes not already agreed upon in the licence. Stack Exchange can expect a high level of decorum and respect for laws from its users. At the same time, it cannot expect redundant attributions anywhere and everywhere, because one of its main aims is to not waste the users' time. There should be a clear-cut way to determine what is code and what isn't. The code formatting indicators on SE may not be adequate because some users simply use backticks, or 4-space indented text for other not-so-codey text.
The first thing that people need to do is to quit over thinking it. That being said, I'm going to see if I can tackle your problems one by one, before summarizing and providing my own opinion: Many users don't care if their code is copied. I'm like that. I left a couple comments on Shog9's post that read this: Good point: Licensing does not prevent careless or malicious use. I'm surprised about how many people are thinking that this license will let them steal their code, because it's already happening right now. I don't want to sound pessimistic, but when thousands of people break a license/law/contract, it's a bit of a lost cause. You're not significantly damaged in a direct way, so honestly, let it go. All I want is to make sure that no one can come up to me if something of mine screwed something on there side. Aside from that, I don't care about people who don't attribute me: chances are, they have no moral sanity, and I will appreciate the people who do, and help me out. As it is, I'm 16, I share what I know with a good heart, and in a well-spirited manner, and at the end of the day, knowing that I was able to help someone out makes my day. I don't mind if my code is copied. I know that people will copy my code whether I like it or not, but I also know that there will be people in the world who will say "thanks", and will try to attribute me where possible. I feel good about that. That being said, I don't care. But the person who uses my code does. The license that affects all Stack Exchange posts are licensed under the Creative Commons Attribution Share-Alike license, or CC BY-SA. Code contributions don't fit well with this. This excellent post on Open Source explains why it's discouraged for code. What these people want is a code-friendly license, so that they can stay in the clear when it comes to copyright issues. The next thing they want, is for someone to come after them over some licensing issue. You may think that people are good, but you never know the world around you. They can be evil. For other users, they don't mind their code being copied to another post, as long as there is a link to the post and a mention of the original author. Most people post with good intention. There's not that much of an issue from a legal perspective either: The license allows people to copy and paste into answers of their own, and since the license remains the same, there's no issue to get into. The license allows it, and contributors kind of have to acknowledge it. I don't think anyone cares what happens to code that is less than 3-4 lines at least. I can probably agree. Such code probably wouldn't be eligible for copyright anyway, since it's so trivial. Many jurisdictions have a "Threshold of Originality," which means that simple things can't be under copyright. Stack Exchange does not probably want people to own the code they submit. For example, Stack Exchange has (and probably wishes to retain) the right to keep even deleted posts in the visibility of the high rep users (even if the author is against it). Wait what? You may be right that it is in Stack Exchange's interest to host content. After all, they get hits, which helps them as a business. It is illegal for companies to host illegal content. If somebody sees objectionable, copyrighted content hosted on Stack Exchange that they would like removed, then they need to file a DMCA Takedown Request. This is also why moderators, like myself, cannot process legal requests. The reason why Stack Exchange doesn't act themselves, even if they see something that is copyrighted and objectionable, is because it's a form of liability. When YouTube began removing copyrighted content themselves, they received a wave of lawsuits (If you remove some, you need to remove all. Why didn't you remove mine? being the argument). The plaintiff's won those, and when YouTube did nothing, they weren't liable at all. If a user wants to have their content taken down, it's tricky. You need to look at the Terms of Service for Stack Exchange: (quoting Section 3) You agree that all Subscriber Content that You contribute to the Network is perpetually and irrevocably licensed to Stack Exchange When Stack Exchanges gets your content, you grant them an irrevocable license to your contribution. This is pretty standard across a lot of sites: it's just a way to secure data and stay in the clear of licensing issues. At the same time, it doesn't seem fair for SE to acquire complete ownership of the content. The user must still have the final say, if the content is to be used for purposes not already agreed upon in the licence. They don't. What users have done is that they have provided a license of their content to Stack Exchange. This is done, again, through their Terms of Service: You grant Stack Exchange the perpetual and irrevocable right and license to use, copy, cache, publish, display, distribute, modify, create derivative works and store such Subscriber Content and to allow others to do so in any medium now known or hereinafter developed (“Content License”) in order to provide the Services, even if such Subscriber Content has been contributed and subsequently removed by You. The user grants a license to their content to Stack Exchange, but they do not assign or relinquish copyright. The code still belongs to them. It's important not to conflate the user contribution policy, with copyright assignment. You are still free to add an additional license to your content (known as dual or multi-licensing), and have a copy for your own use. Stack Exchange will always host a copy licensed under the CC BY-SA license. Stack Exchange can expect a high level of decorum and respect for laws from its users. At the same time, it cannot expect redundant attributions anywhere and everywhere, because one of its main aims is to not waste the users' time. Not only Stack Exchange expects it, but many copyright laws in various jurisdictions require it too. There's a concept known in many jurisdictions known as moral rights. These are rights that are irrevocable, whether you like it or not. Generally, these include attributions, disclaimer of liability, and other rights as well. Even if your work is in the public domain, you still retain these moral rights. If memory serves me right, the right to be attributed is revokable under United States copyright law. Therefore, attribution becomes more a courtesy, when the right is revoked. Licenses such as CC BY, and CC BY-SA still require attribution as a part of their licensing terms. What defines attribution is generally up to the person who uses the content. If memory serves right again, one can not demand how to attribute. There should be a clear-cut way to determine what is code and what isn't. The code formatting indicators on SE may not be adequate because some users simply use backticks, or 4-space indented text for other not-so-codey text. Personally, I feel like making the entirety of a post under both the Creative Commons license and whatever proposed code license they use is the best option, and allow people to use moral judgement to determine the most appropriate license. The concern comes about people who lack such judgment. I bet these same people don't follow the existing license anyway - and are a lost cause. We made it through! There will always be debate on the license of choice. Some people want the GPL, a license that's apparently closer to the status quo of Creative Commons license (I disagree that it's a good match), while other's want permissive licenses, such as the MIT or the Apache licenses. I'd prefer the permissive type, since it allows use in closed-source applications, and grant more rights (i.e. less restrictions) to the people that use them. I'm not going to right much because my hands are tired, but I'm sure if you've got more questions about the open source licenses themselves, you can probably ask on Open Source Stack Exchange.
The software being free and open source has no impact on whether it infringes any patents or violates any copyrights. Copyrights attach to fixed representations of creative work in a tangible medium (e.g., the actual code and graphical elements of the software in question). As long as you aren't copying the copyrighted work of someone else, you should be in the clear. So, if you write your own code from scratch, or rely on code that you're allowed to use (e.g., "free" software with a permissive license that allows it to be used freely), you should be fine. On the other hand, if you copy a chunk of code that you aren't allowed to use, and then change the variable names so that it's superficially different, you're likely violating someone's copyright. Patents are a much more difficult question. To determine whether you would infringe any patents, you would have to read the independent claims of every patent that might be related. If you perform all the steps of any one of those claims, then you are infringing that claim (and therefore, the patent in which it is found). Unfortunately, this is much easier said than done. First, it may be difficult to search for all the potentially relevant patents, and once you've found them, there may be far too many to read. Second, claims are written in a type of language that is specific to patents, and someone without experience in patent law may not understand them correctly. Finally, the terms in the claims may not take on their plain English meaning, but rather may have been defined by the language in the rest of that patent, so it's possible that you might incorrectly think you were in the clear based on a misunderstanding arising from that. All that said, it may be best to go ahead with implementing an idea and then waiting to see what happens. Chances are that the implementation will arguably infringe some patent in some way, no matter what's done. But chances are also high that there will never be any worrisome enforcement action taken against it by a patent owner, simply due to the difficulty and expense associated with enforcing patent rights.
Of course you have to follow the license. You seem to have a license that doesn't allow distribution and want to know if giving copies to the Dutch or Chinese branch of your company is distribution. First, you should not make that decision. Your company's lawyers should do that. Second, such distribution is with some licenses perfectly legal if you distribute the software with source code. That's a business decision which you or your manager or his/her manager... can make. Such questions (whether giving a copy to your Dutch branch is distribution) often don't have an answer that is yes or no but maybe - if you went to court, would a judge say that it is distribution? The answer is quite clearly "maybe". So unless you can find a safe way, there is a risk. Again, your lawyers will assess the risk.
You should probably get a lawyer, but my reading is this: The company whose SDK you use owns their SDK, owns their code, and is free to take any of your ideas how to improve their code without paying you. But they say that ideas are ten a penny, so this is mostly there to prevent pointless lawsuits. On the other hand, it says that everything you do with your product is yours. I might be completely wrong, that's why you should get a lawyer.
Users grant StackExchange a licence: You agree that all Subscriber Content that You contribute to the Network is perpetually and irrevocably licensed to Stack Exchange under the Creative Commons Attribution Share Alike license. That should be determinative, but there was also some question as to whether StackExchange users can be deemed to have agreed to these terms. For this reason, I'll also review some case law relating to what are known as "click-wrap" agreements where the terms are made available via a hyperlink. In my opinion, StackExchange's way of displaying links to their Terms of Service during registration meets the requirements that have in the past been sufficient for courts to deem the user to have read and agreed to those Terms of Service. See for example, Schnabel v. Trilegiant Corp., 697 F. 3d 110 (2012), especially the section titled "Notice" for reference to other cases: A person can assent to terms even if he or she does not actually read them, but the "offer [must nonetheless] make clear to [a reasonable] consumer" both that terms are being presented and that they can be adopted through the conduct that the offeror alleges constituted assent. Specht v. Netscape Communications Corp., 306 F. 3d 17 (2002)1 frames the notice test in terms of a "reasonably prudent offeree" and whether they would "have known of the existence of license terms". In Guadagno v. E Trade Bank*, 592 F. Supp. 2d 1263 (2008), the court found that clicking on an acknowledgement icon near an underlined, highlighted link to an agreement was acceptance of that agreement: In the instant case, a highlighted, underlined link to the Agreement was directly above the acknowledgement box, along with notice that "The following contain important information about your account(s)." A reasonably prudent offeree would have noticed the link and reviewed the terms before clicking on the acknowledgment icon. I think the most similar case is Fteja v. Facebook, Inc., 841 F. Supp. 2d 829 Dist. Court, SD New York (2012), although not at an appellate level. In order to have obtained a Facebook account, Fteja must have clicked the second "Sign Up" button. Accordingly, if the phrase that appears below that button is given effect, when Fteja clicked "Sign Up," he "indicat[ed] that [he] ha[d] read and agree[d] to the Terms of Policy." This is very similar to StackExchange's sign-up process: That court outlined a lot of case law and concluded that "Fteja assented to the Terms of Use and therefore to the forum selection clause therein". A DMCA takedown could be successful if submitted by somebody other than the StackExchange user where that other party asserts copyright ownership in the contributed material. This could happen if a StackExchange user infringed copyright by posting material that they didn't have the right to reproduce. 1. Opinion authored by now Supreme Court Justice Sotomayor.
are there any safeguards you could take to preemptively block such behavior, such as a disclaimer inside the book cover that reads something like The safeguard you outline would be overridden as soon as the author enters any contract that requires assignment of copyright. (I would not delve in the differences between licensing and copyright assignment because that hypothetical author is dealing with a contract of adhesion which readily requires assignment; the author has no option to change the ToS to allow for licensing only) Under contract law, one of the essential prerequisites is that the conditions of a contract be entered knowingly and willfully. By deliberately clicking on a ToS page to move forward with the uploading a copyrighted work, the author is signaling his awareness and acceptance of the ToS. The fact that the author chose not to read the ToS is irrelevant and very unlikely to strike whatever entitlements the website owner formulated in the accepted ToS. For the same reason, the author's safeguard disclaimer does not bind the website owner: It cannot be said that the website owner was aware of that disclaimer at the time of the formation of contract between the author and the website owner. That is, the website owner did not knowingly and willfully accepted the author's safeguard. The website owner is not even expected to know about any safeguards which one of its potential user intends to establish. The length of a ToS document is also irrelevant because the website owner has the valid argument that "the user-author could have skimmed through the ToS or do a search (via Control-Find) of keywords such as 'copyright' or 'property', whence any allegation of 'inadvertent' assignment of copyright is untenable". Is there a way to protect your IP from inadvertently being licensed/stolen/assigned via TOS "agreements", without having to waste your life reading huge one-sided online "contracts" that are "subject to change without notice" anyway? Yes. That consists of not uploading one's works in such platforms. In contract law that would be expressed as "declining an exchange of considerations". There are many other alternatives for an author to promote his work without being required to assign copyright.
The problem is that open source licenses incl AGPL have legal force because copyright prevents copying + modifying software by default (software is treated as a “literary work” and therefore enjoys copyright protection). But copyright on datasets and ML models is very different – if it is even recognized at all. Thus, similar copyleft techniques would only work in particular jurisdictions. For example, the EU recognizes “database rights”. A copyleft license that accounts for this is CC-BY-SA-4.0, meaning that in an EU context, databases based on the original database would have to use the same license. However, database rights are not recognized in the US (facts are not copyrightable, and the “sweat of the brow” doctrine is not recognized). Thus, the CC-BY-SA-4.0 license would not have any copyleft effect with respect to databases in an US context. Independently of copyright in the database as a whole, the data in the database might be copyrighted material, for example if the database contains text or images, complicating matters further. Machine learning models derived from a data set are much more difficult. Clearly, ML models that have been trained are not a creative work and are therefore not eligible for independent copyright protection. At most, it can be argued that the model is an automatically transformed version of the input data, so that copyright in the input data implies copyright in the model.1 Perhaps hyperparameter choices could reflect some creative input. This is very much an active topic of debate. Given this uncertainty, it would be impossible to create a public license that works reliably. 1. An interesting discussion topic is the potential effect on Microsoft's Copilot ML model which was also trained on GPL-licensed source code. Instead of deriving force from copyright law, it would be possible to impose conditions via a contract, i.e. EULA-like terms that only provide access to the material after the terms have been accepted. But again, this is difficult. Contract law differs wildly between jurisdictions. For example, a contract is defined by the “meeting of minds” in some jurisdictions; by offer, acceptance, and consideration in others. But how does such a contract ensure appropriate consideration? How can acceptance be ensured if the material is publicly available? For these reasons, I think that unless broad international agreement emerges about IP protections for machine learning models, such a copyleft system for ML models is impossible. It is worth noting that the lack of such protections is probably quite good for innovation and research, since researchers are free to improve each other's work without legal concerns. The idea of copyleft is a hack to subvert the “everything is forbidden by default” system of copyright, but “everything is allowed by default” might be better.2 2. To continue the Microsoft Copilot example: some copyleft advocates like Bradley M Kuhn are sceptical about Copilot's GPL compliance, but remind us that copyleft maximalism means copyright maximalism, and that this is not the goal of open source. https://sfconservancy.org/blog/2022/feb/03/github-copilot-copyleft-gpl/
I can see two points you might be confused about in your question. 1. Works can be in the public domain without having a CC license The Wikipedia statement and the government statement are not inconsistent with each other; just because something isn't available under a Creative Commons license doesn't necessarily mean that it is restricted by copyright. In fact, CC licenses are moot for material in the public domain: When a work is in the public domain, it is free for use by anyone for any purpose without restriction under copyright law. Public domain is the purest form of open/free, since no one owns or controls the material in any way. ... Creative Commons licenses do not affect the status of a work that is in the public domain under applicable law, because our licenses only apply to works that are protected by copyright. So if a work is in the public domain, you can use it for whatever purpose you wish (though see below), without restriction or attribution. This is less restrictive than the various Creative Commons licenses, which require various levels of attribution, non-modification, etc. depending on the license chosen by the creator. 2. Trademark protections are separate from copyright protections Your quote from the government website implies that these logos might be trademarked, even if they're not under copyright; this is entirely possible. Roughly speaking, trademark protections keep other people from trading on your good name &amp; reputation; copyright protections keep other people from directly profiting from your creative endeavors. If another party creates a product that uses a trademark in a way that would create confusion among consumers, the trademark holder can sue for that. Depending on how you use the logos, you might run afoul of these protections. See this Q&amp;A for futher details under US law. (Australian law may differ a bit but I would expect that the general principles are the same.)