The Creative Commons Zero (CC0) waiver is, in my opinion, the most free way to release open-source software. Unlike licenses that impose conditions on the use, modification, or distribution of software, CC0 allows me to waive all my rights to limit what users can do with the software. It effectively places the work in the public domain. This absolute waiver ensures that the software can be freely used by anyone, for any purpose, in any way. Here’s why I choose CC0 when releasing open source software and why I cannot – and will not – grant permission to use my CC0 software.
Software freedom
Other licenses impose various requirements on using software, such as:
- Copyleft/viral licensing: Mandates that derivative works also be open-source and follow the same licensing conditions.
- Attribution requirements: Requires giving credit to the original authors in all copies or substantial portions of the software.
- Redistribution conditions: Imposes specific terms on how the software can be redistributed, including the requirement to state changes made to the code.
- Source code disclosure: Requires making the source code available to anyone who receives a copy of the software.
- License compatibility issues: Restrictions that affect the ability to combine the licensed software with other code under different licenses.
In contrast, CC0:
- Imposes no obligations for attribution.
- Requires no disclosure of source code.
- Does not mandate any specific licensing for derivative works.
- Places no restrictions on combining CC0-waivered software with other code.
This complete freedom fosters innovation, as developers can build upon CC0-waiver software without worrying about legal ramifications or compatibility issues with other licenses.
That means:
- Hobbyists can use it.
- Companies that make money can use it.
- People I don’t like can use it.
This last point (and sometimes these last two points) often gives open-source developers heartburn. However, I feel that I cannot prevent people I don’t like from using my open-source contributions without also harming the good that comes from my contributions being widely available for use. Broad adoption leads to a more vibrant and diverse ecosystem of software, where software can be reused and repurposed in innovative ways, driving technological advancement, and resulting in services and applications that make people’s lives better.
The closest thing to worldwide public domain
In some countries, you either cannot legally put software in the public domain, or “it’s complicated,” due to legal concepts that, as an American, I cannot even begin to comprehend. This can complicate or even prevent the dedication of software to the public domain. To address these legal complexities, CC0 attempts to waive as many rights as possible, providing the most free fallback license for jurisdictions where a public domain waiver is not recognized.
Credit
It is reasonable that open-source contributors want credit or attribution for their contributions, either for their résumés and career advancement, or simply out of pride. However, the desire for credit should not overshadow the potential benefits of contributing to the common good. For CC0-waivered software, credit is not a mandatory requirement, which can sometimes be perceived as a drawback. But this very aspect also eliminates any barriers for the adoption and use of the software, ensuring that the work can be freely incorporated into other projects without the need for complicated legal considerations.
By waiving all rights, authors of CC0-waivered software make a clear statement: they are contributing their work for the common good, with no expectation of control or credit. This selfless act can set and example to others to contribute similarly, fostering a culture of sharing and collaboration that benefits everyone.
CC0-waivered software prioritizes influence over notability. By allowing unrestricted use and distribution, the software has the potential to reach a wider audience and be utilized in more diverse and creative ways. This broad adoption can lead to greater impact and technological progress, ultimately benefiting the community as a whole. While individual authors might forgo personal recognition, the influence of their work can be far-reaching.
Why I cannot grant permission to use my CC0 software
While CC0 grants complete freedom to anyone to use my software without seeking permission, my choice to not explicitly grant permission is to emphasize the point of choosing CC0 in the first place:
By releasing my software under the CC0 waiver, I have released all my rights to the work, including the right to grant or withhold permission for its use. This is not a matter of choice or preference; it is a fundamental aspect of the CC0 waiver. The CC0 waiver is irrevocable, meaning that the freedom it provides to users cannot be undone or restricted by the original author. Therefore, I cannot grant permission because I no longer possess the legal authority to do so.
True software freedom means giving up control, and CC0 allows me to do just that.