Skip to main content

Writing software without copyright still needs a license

Update May 30, 2017: As per OSI, this license has some insurmountable issues. I have retracted the proposal for OSI inclusion as a result. If you used this particular license in any work, I highly recommend moving to a pure MIT license as soon as possible for software and CC0 for other works. Other than government entities in some countries, it would seem to be impossible to avoid copyright and place any given work into the public domain while offering sufficient protection of the original author from spurious lawsuits. I view this as a serious failing of copyright law and thus the real source of the problem is copyright law(s) not allowing for simple public domain dedications by members of the public. There are valid scenarios where public domain dedications are legitimately necessary for the furtherance of the common good. Therefore, only if the law changes would a simple public domain dedication option become possible. Even Creative Commons Zero (CC0), with its best attempt at the endeavor operating within the existing legal framework, has problems such that it requires a fallback mechanism (see notes below on why CC0 is not a very good license for software). CC0 likely ends up in the fallback position of copyright in all cases. If you wish to take on the potential legal risks involved with this license, I'm leaving it here, but you should definitely consult an intellectual property lawyer beforehand. The MIT license is highly recommended as sufficient solution. Original post follows - Caveat Emptor...

Let's say for a moment that you are writing some software that you want to release into the public domain. That is, you don't want to claim that you own a copyright on the software. This is very rare to see in the first place, but it does happen. Interestingly, Copyright Law doesn't do anything but protect others from copying and modifying your work. Neither public domain software nor copyright protected software protect the author from lawsuits that arise from damages involving the use of the software. In layman's terms, you still need a license to protect yourself from liability lawsuits.

Unfortunately, it seems like there aren't any OSI approved licenses for software authors that are prepackaged and ready for use with public domain software. The OSI actually doesn't have such a license because it believes it can't correctly define what Public Domain means to the author within the license itself. I disagree with that assessment.

Having researched numerous licenses over the years, I'm very comfortable with various licenses. The MIT license is, in my non-legal opinion (because I'm not a lawyer), the most liberal open source license that's as close the public domain without it actually being public domain. It basically says, "Hey, you can do whatever you want with this software just don't sue me if it causes harm. However, please note that I own the code and you have to include this license and my claim to copyright somewhere in your software." That last little bit is a sticking point if you don't WANT to claim copyright because you want it to be in the public domain.

Toward this end, here is my best attempt to satisfy the concerns of OSI regarding public domain with a modified MIT license:

Modified MIT License for Public Domain software

Public Domain or legal equivalent
Released by [authors] (the "Releasors") in [year]

Permission is hereby granted in perpetuity, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
RELEASORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

IMPORTANT: To use this license, you must also separately and simultaneously release any associated patents, trademarks, and possibly trade secrets you hold over the work. Patent and trademark law is frequently intertwined with copyright in inseparable ways. Even if your own locale allows separation, other locales may not and may render the entirety of the license void. The second paragraph is rather critical for offering protection against lawsuits (i.e. it's something you don't want declared void). If you hold a patent or trademark over the work, you must either release those as well OR choose a non-Public Domain license. It's not possible to release copyright but hold a patent/trademark over a work in all locales nor does it make a lot of sense. Some licenses are rather broken in this regard (e.g. CC0).

The first line of the actual agreement ("Public Domain or legal equivalent") is intended to be treated as a title for the agreement, having legal impact wherever it applies (e.g. United States Copyright Law clearly defines what Public Domain means). If a locale has no such definition, the first line will most likely be overlooked and the second line ("Released by [authors] (the "Releasors") in [year]") says who is the actual owner of the copyright (i.e. a legal fallback mechanism). "Original authorship" "Released by" is a clever avoidance of the legally defined words of "copyright" and "author" in many locales. The license also includes the phrase "in perpetuity" to deal with some additional possible issues (addressed at the end of this post).

The first paragraph therefore will only technically apply to those locales where copyright law has no official definition of Public Domain. However, some or all of the terms may apply regardless. In essence, it clarifies the intentions of the author in regards to their hold on copyright. Should copyright still apply, attribution is included with the license to indicate who the claimants actually are. Obviously someone with intention to place their software into the Public Domain has no intention to ever claim ownership of their copyright in the first place. The definition of Public Domain is therefore clearly defined by the first paragraph. Whenever and wherever there may be doubt, define what you mean.

The second paragraph is the "covering your legal rear" paragraph. Of the two paragraphs, this is the most important one because it protects the authors from many types of lawsuits. However, wherever copyright law may still apply (and even those locales where it doesn't), the combination with the first paragraph adds extra protection by clearly specifying that the author allows the software to be used for any purpose, thus removing all legal liability (wherever legally allowed). I removed the words that referenced "copyright holders" since, by definition of public domain, there are no copyright holders. However, the use of '(the "Authors")' '(the "Releasors")' in the legal fallback mechanism used earlier means that the word 'RELEASORS' is tied to those who hold the copyright (if any). Even if copyright doesn't apply, the word 'RELEASORS' in that specific location protects the authors from legal liability for the software. This really wraps up the entire package, puts a fancy bow on it, and tells lawyers to go away.

It is my opinion that this license represents the closest to public domain that we as software developers can get legally worldwide while staying really far away from liability lawsuits. Note that patches that someone submits should also have a copy of the above license with their name(s) and year submitted alongside the patch to avoid any issues with copyright.

Finally, this license was the result of attempting to find a suitable license that I believe would pass legal muster. I evaluated multiple attempts at Public Domain licenses and rejected all of them on various grounds. A few notable examples include:
  • The Unlicense, which mentions "copyright" therefore copyright law applies in most locales thus defeating the purpose of Public Domain.
  • Creative Commons Zero/Public Domain has lots of subtle issues (Update May 2017: For the longest time CC0 was deemed incompatible with other software licenses, which was concerning. Even though the FSF cleared CC0 for open source usage, I still read CC0 and find the language inconsistent with the flexible and clear licensing model that MIT offers. CC0 is generally attempting to solve a problem that isn't software related. It also mentions Copyright and goes way out of its way to define it, which may result in copyright applying and defeating the purpose of Public Domain. Again, simply using the word "Copyright" in a license may result in conferring Copyright and all of its protections depending on the locale.)
  • WTFPL which is just legally reckless (Update April 2017: WTFPL is harmful to software developers)
I found a few others too but nothing out there was suitable, legally-speaking.

Update May 28, 2017: As per OSI reviewers, I've updated the license to address some concerns that arose. Specifically, "Authors" and "Original authorship" were changed to "Releasors" and "Released" respectively to avoid locale-specific copyright issues with those terms. The phrase "in perpetuity" was also added to indicate that the copy of the license the user of the software receives in association with the software is one that may not be changed by the Releasors. Adding "in perpetuity" offers more succinct protections for the user of the software. Specifically, the phrase was added to deal with European "moral rights" (aka "droit moral" - a French legal phrase) whereby an author or a successor (e.g. an heir) could still attempt to claim damages from modifications to the software should they later change the license to a less public model and/or make significant enough changes. Furthermore, the addition of "in perpetuity" prevents successors (e.g. heirs) from attempting to sue those who already licensed the software under this license. Combining "in perpetuity" with the word "Releasors" may also impact unclaimed/abandoned property law in many locales in ways that prevent them from being effectual. CC0 goes to great lengths - nearly the entirety of Section 2 - to define an already available, legally defined, and succinct word (i.e. "perpetuity" is well-defined in English).

---
Permission is hereby granted, free of charge, to any person obtaining a copy of this license (the "License"), to deal in the License without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the License, and to permit persons to whom the License is furnished to do so.

THE LICENSE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE LICENSE OR THE USE OR OTHER DEALINGS IN THE LICENSE.
---

Hey, gotta cover my legal rear when writing licenses too. Interestingly, the license itself is a kind of circular reference.

Comments