Licenses For Freedom

thufie

Moving forward there are a few goals I have for the NPL and CNPL.

  1. A dedicated and well-designed website (not just the webpage on my site).
  2. Submit the NPL and CNPL to the SPDX License list, which is often referenced by software and other license lists to derive licenses from their their “abbreviations” (like “NPL” for example).
  3. Commission help with license review and expose the license text to more scrutiny from people interested in contributing, from lawyers or from marginalized people.

Hopefully number 1 will lead to number 3 by being shared around and causing people to read the license text and file issues on the tracker with any concerns. I'm envisioning a very basic website which starts on a homepage that will guide a user to choosing between the NPL and CNPL (what is more appropriate for their project), then providing an outline of the license's principles, a how-to guide for using the licenses in their projects, and a page with the texts of each license as well as a link to the bug tracker to suggest changes or correct mistakes on the gittea tracker for the respective projects (A CONTRIBUTING/LICENSE page that is easier to read than the plaintext license).

As for number 2, I'm interested in getting the NPL and CNPL on more lists like the SPDX License list, even if it attracts the ire of free software purists and “open source” liberals who will be upset we're making a persuasive argument for depriving their sick organizations of free labor while simultaneously keeping it open for the commons. Getting onto lists such as these is crucial if the NPL and CNPL are ever going to be integrated into distros with careful license management systems, even if they are not included into their main repositories. Hopefully this will result in projects using these licenses having an easier time of getting packaged and hosted by communities (at least on non-FDSG distros). In addition hopefully this will alleviate worries of some people who are concerned about how NPL/CNPL projects will be legally integrated into other projects.

To be perfectly clear, neither the NPL nor the CNPL will be marked as open source or free software on any license lists since neither conform to their respective definitions due to the non-violence provisions in the license. The SPDX license list already has licenses which do not meet either definition and some of them are pretty much just proprietary so I'm fairly confident that outside of technicalities I could eventually get them included on the SPDX list or at least other ones, hopefully mostly in a positive light (I don't expect anything short of firm resistance from the FSF here when they add it to their list).

My only concern with number 2 is that the “abbreviation” NPL is already reserved for the Netscape Public License. Which leads to something else I'm thinking of next. There may be a need to choose a new abbreviation for the NPL for the convenience of license lists and related tooling. I do not want to change the name of the Nonviolent Public License, or the abbreviation for its counterpart, the CNPL, however I may have to change the license abbrevation for the Nonviolent Public License to NVPL. I will be prepared to do this upon feedback from the SPDX license list after I submit the NPL to them.

Personally I'm fairly busy with work right now in real life and it has drained attention away from this project for a month or so, but I plan on diving back into it soon enough. Hopefully before June at least. This wraps up this update on the effort to subvert copyright to prevent violence and encourage reciprocity and openness in software. Wish all of you the best out there, stay safe inside and care for the vulnerable! Let me know what you think on the fediverse @thufie@social.pixie.town :)

Respects Our Freedom Licenses

This post is just going to be a list of FLOSS-like licenses which respect the freedoms of the people the program is being run on in any number of ways as well as including short summaries of each license. The only criteria for a license to be included on this list are:

  1. The license must be in the spirit of copyleft and reciprocation.
  2. The license only restricts a license in terms of for what purpose it is used, and not who uses it. Licensing against specific entities rather than their actions is a frivolous effort and discourages coming into compliance.
  3. The license leverages (2) in order to promote social freedoms or for an otherwise ethical cause.

The List

In no particular order

  • [C]NPL – (Cooperative) Nonviolent Public License – Two AGPL-like licenses for software, but also for cultural works, which come in two varieties. One which aims to generally prevent harms (social, physical, and environmental), and the other (CNPL) which additionally adds a non-commercial clause for anything other than worker-owned cooperatives and individuals. All forms of harm are explicitly spelled out rather than referring to an external document.
  • CSL – Cooperative Software License – Strong copyleft license which brands itself as copyfarleft and is for software and cultural works with a restriction on commercial redistribution for organizations which are not worker-owned cooperatives or individuals.
  • CGPL – Common Good Public License – GPL-like license which also asks that the user does not violate the UDHR by use of the software as well as promoting a duty to Nature by use.
  • The Hippocratic License – MIT-like license which also asks that the user does not violate the UDHR by use of the software and in the case that the software is a service, that the service's users also not violate the UDHR.
  • Do No Harm License – BSD 3-clause based license with exclusions for anti-environmental uses, violence, hate, human rights abuses, and more. Still in draft status at time of writing.

If you know of a license not on this list, message me on the fediverse @thufie@pixie.town or email me at thufie@riseup.net

A Call For Serious Reflection

John Sullivan, Executive Director of the Free Software Foundation, published a short, but to the point piece this month going out on the front page of the FSF's Fall Bulletin. The piece, titled Building ethical software based on the four freedoms is a rebuttal to licenses like the NPL, CNPL, Hippocratic, and others which seek to leverage licensing to ensure the preservation of Freedoms at the usage end of software. Understandably a bit shaken by an attack against what is likely a large part of what draws people to the cause of “Free Software” to begin with the prominent position of the piece on the Bulletin and its defensive tone makes one thing clear. The Free Software Foundation as it currently stands will not be concerning itself with Freedoms beyond developer and user Freedoms in software. In my previous post on this blog as well as on the webpage for the NPL itself I explicitly spell out some major ethical and social concerns inherent to taking this “middle of the road” stance on Software Freedom. What I want to talk about in this post is where this unwillingness to do anything comes from (aside from obvious violations of “freedom” 0) by dissecting a few key statements from John Sullivan's piece as well as addressing the counterproposals set forward and why they are insufficient compared to subverting the otherwise unjust powers of copyright against itself in classical copyleft fashion.

Why The Hesitation?

John Sullivan's piece is full of a few gems which don't really make sense, and I'll look at why they don't, but I think it is important to also take a wider look at why the FSF, as a non-profit concerned about its donors, is unwilling to make this extra step.

As a movement of ethically concerned human beings, we want to do everything we can to encourage ethical behavior. But embedding that desire in software license requirements will backfire, by legitimizing fundamentally unjust power over others.

Well this one is pretty rich coming from the people who promote such aggressive licenses like the GPL and AGPL. Care to look in the mirror? Have the GPL and AGPL legitimized the fundamentally unjust powers copyright was designed to protect? Any FSF supporter would give a resounding no to that question, me included. In fact, criticizing these licenses from such a similar position to begin with is strange, surely Sullivan is not really concerned about this alone. And reading ahead a bit more we start to see his actual concerns. And here begins the slippery slope, just like the one all the BSD people have used against the FSF, they're now pulling out a trick commonly used by their old friends who let megacorporations like Microsoft and Apple wield their code against users...

To allow more than this allows not just restrictions for good, but restrictions like, “you may not use this software to publish criticisms of Microsoft.” ...Would the next step be using Digital Restrictions Management (DRM) to enforce the usage rules?

And of course, once again, similar criticisms could have been hurled against the FSF just a decade ago. “How do you ensure that people share their modifications without monitoring their code changes?” and the like are old hat slippery slope arguments used to demonize licenses like the AGPL as somehow being the first step towards Big Brother. So what about the AGPL then truly makes it not an intrusion, but for the social and ethical good? Intention and enforcement practices, of course. The Free Software movement has plenty of experience of where hostile attempts at GPL and AGPL enforcement tend to go, into lengthy corporate lawyer battles causing years of development delays and fostering hostile sentiments. We've long ago learned to be more lenient and cooperative in licensing enforcement and complaints for GPL and AGPL violations because as Bradley M. Kuhn says, “99.999% of GPL enforcement matters get resolved without a lawsuit” arguably due to this approach. You can make many arguments as to why such an arguably invasive license often meets so little resistance, but I think it is because at the level of the license's intention the request being made is not too unreasonable. The Software Freedom Conservancy doesn't use DRM or immediately launch into aggressive lawsuits because the intention of the license is to promote Freedom and Cooperation, not bickering and attacks. So no, with absolutely none of the licenses Sullivan is attempting to rebuke there is never an intention by the license to turn into a hostile megacorporation compact like a huge EULA that will come after you with armies of corporate lawyers if you refuse to comply. These are just regular people making simple requests about the ethical use of their software. In fact, most people comply with licenses out of the box, some even get too scared to use a license because of its terms, so avoid it entirely (ex: Google with the AGPL). This is probably why there are so few violations to begin with, and I think we can all agree that is a good thing, because almost nothing good has ever come out of forcing compliance (notable exceptions being projects like OpenWRT). These new licenses are all essentially using the same exact enforcement strategy that the FSF uses, like insects with spines and wild colors they keep violators (predators) away to begin with! Similar to the above point, this is more hypocritical nonsense cloaked as a more serious concern.

A world of proliferating and potentially conflicting usage restrictions, each seeking to address a different social cause or need, would introduce so much friction that the tremendous democratic social benefit brought about by the free sharing of software – including the empowerment of individuals to effect social change in unjust institutions – would be undermined.

So I suppose this handful of licenses is all too confusing and really just undermining the cause by sheer variety and numbers? Well then why exactly is there not a problem with around 53 different GPL-compatible Free Software licenses alone, not even including Free Software licenses incompatible with the GPL? It is not at all confusing, because in fact, they are all identified with an intent and a movement, common goals for ensuring reciprocity and user freedoms! And so it is the same with all the new licenses including the GPL, they just additionally ensure extra protections for anyone the software is used on. It really is not all that confusing, the goal is all the same, just phrased a little differently, and once again Sullivan is a hypocrite to throw out such a critique when it is precisely the same with the movement he is supposedly in charge of directing. On top of all that, I think it is pretty rich to hear concerns about fragmentation of priorities coming from the FSF which can even find space for anarcho-capitalists with their bitcoin fetish.

So no, the issue was never any of the listed concerns, the issue is marketing the cause of “Software Freedom” from the perspective of being a nonprofit as being profitable for any application regardless of the ethical ramifications. Holding out hope for military-industrial complex money for your GNU/Drones, eh? Oink Oink!

So What Does John Sullivan Propose Instead, Being So “Concerned”

Well in the above piece John Sullivan comes off as a bit caught off guard, repeating the same old “non-free” versus “free” rhetoric with not much in the form of constructive advice on where the movement should go in response. However, in the heat of the moment it appears a few desperate possible solutions get to be torn apart by me, so I'll try to keep it short here with replying to this nonsense. (Warning: The next few responses contain extreme sarcasm)

With the ground rules of free software as the baseline, anyone can build systems to specifically promote ethical use. ... We already have some such systems. For example, the FSF's Respects Your Freedom certification program...

For those reading this who are unfamiliar, the Respects Your Freedom (RYF) certification program is a program for certifying hardware products as only using entirely free software with a few additional requirements such as excluding those that are used to spy on their users. In order for something to be Free Software, however, it doesn't have to run on RYF-certified hardware from any such vendors, rendering this whole process entirely optional. So unless the FSF can get some nice promotional material out of it (cue Sarah McLachlan – In The Arms Of An Angel) and see some benefits within its already established framework through an entirely optional process to avoid alienating donors, sure! Ethical Capitalism to the rescue, right kids? I mean, it isn't like a certification program can actually prevent code from being used in a certain way, which is say, harmful to others. Geez, that almost makes it sound like a license would be better to absolutely ensure mandatory prevention of harm by software but lets not stray too far over there, lest we alienate corporate!

Software engineers could also develop and propagate a code of ethics, the way other forms of engineering have.

I'm sure the fine folks working at Northrop Grumman, Raytheon, and Lockheed Martin would agree, seems to have worked for them. Actually, what are those other names I saw on the previously linked list of the top 25 U.S. Defense companies? Computer Sciences Corp, Hewlett-Packard? It is almost like many software engineers are already complicit in causing physical harm. Well, I'm sure we'll be able to change their minds by giving them a code of ethics on a handout, so no biggie!

And, we've seen company tech workers organize together to refuse to make certain kinds of software; they could do more of this.

Alright! Here we go! Now we've got something! I agree Mr. Sullivan, we need to organize the working class within the tech community to stop this bullshit. I'm glad you have granted us your thoughts and prayers! At this point though, with your suggestions bouncing all over the place, I'm not sure we at the party can truly accept your kind words as coming from a place of genuine concern.

See! I told you I would keep it short. I won't ramble on much longer. But just to close: The Free Software Movement does important work with varying levels of ethics, though generally remaining fairly grounded in not murdering people. I do not think it is too constructive to focus critical effort towards the community, but rather towards its institutions (its clearly more fun, anyways). We do not need donors to know what we are doing is right, and that's why we license for ethics and justice. So I would implore you if you are also fed up with this obvious nonsense, join us! And no, there's no mailing list yet, just a loose-knit community on the various federated networks. You can reach out to me at least on the fediverse. We still need a name for our cause to differentiate it from this above silliness, so maybe you can make a name for it yourself. So on that note...

Best Regards to My Fellow Traitors of the Free Software Party Program,

Thufie

For those unfamiliar, over the past 2 to 3 months I've been working on two software licenses, the The NPL and CNPL. The NPL and CNPL webpage describes what the licenses are for, but to summarize:

The Non-Violent Public License aims to ensure basic protections against forms of violence, coercion, and discrimination which creations are frequently leveraged for in the modern world. This license covers several formats of creative work, but has extra terms for software given the power it has as a tool outside of its creative capacities.

and

The Cooperative Non-Violent Public License goes further and only allows commercial use of the copyrighted work for individuals and worker-owned organizations. It is a superset of the NPL and contains all of the same terms otherwise.

Aside from these principles the licenses are identical in aims to traditional copyleft for creative works and the AGPL for software.

What it is For

The NPL License is intended for use by creatives to make any kind of project copyleft but also socially responsible for its impacts and usage. It can be used when licensing software, art, books, or music and subverts the power of intellectual property laws for social good rather than evils. I think that's pretty straightforward. I have not had any artists, writer, or musicians approach me about issues with the license, because those applications are fairly straightforward. Instead of exploring those, I will look at the use of this license when it comes to writing software. Especially since all of the comments and concerns about the NPL come from people imagining its use as a license for a software project.

Not all software should be licensed NPL. In fact, I'd encourage projects to carefully consider before moving to the NPL or adopting it. The NPL is best for licensing high-level software which interacts with users. The special terms of the NPL which both distinguish it from and make it incompatible with certain other licenses all deal with how software and humans interact, so licensing a library as NPL is useless and just causes license compatibility issues. One of the advantages of traditional copyleft is that other organizations using your system utilities and libraries are compelled to improve them for the entire community and that has to be balanced against the ethics of how the software is used. By using the NPL for libraries, you are discouraging adoption (by unethical entities, but nonetheless) which isn't good for system utilities which really need as many eyes on the code as possible and security patches from everyone using it. For application-level software that interfaces with users like web servers, desktop applications, etc the ethicality of their applications actually begins to matter, so that is what the NPL is targeting. There is one exception to this rule of “don't use the NPL for libraries” however. The NPL should be used for libraries which have extreme ethical ramifications in every possible application. Examples would be biometrics libraries and tracking utilities which are easily abused in contexts like mass surveillance or even just regular corporate surveillance. Only using the NPL for high-level software maximizes the ethical benefits while minimizing fragmentation of the software ecosystem.

So to summarize: The NPL is for licensing art, books, music, other cultural works, high-level software, and software libraries with significant ethical ramifications.

Why I created it

“Free Software, Free Society” is what FLOSS devs always look back to when describing the politics behind their software licensing, the copyleft framework for subverting copyright law for good rather than its evil origins. However, the phrase from Stallman's eponymous book has a glaring oversight when you look at the applications of FLOSS software in everyday life. Today, software licensed under the GPL, far from freeing society, provides the backend for tools of oppression from state biometric databases to the web infrastructure for ICE and associated contractors. Free Software is not actually equipped to Free Society, it is in many cases actively arming the oppressors. So the goal of the NPL is to take responsibility for free software's use in order to actually free society. IBM's computers did the number crunching during the holocaust, and god forbid nothing like that happens again, but should it happen it definitely should not be able to leverage software which was supposedly created to “free society”. So I created a license which provides the same freedoms for anyone not taking part in activities which are violent or adjacent to violence to hopefully ensure, at least under a society enslaved to IP lawyers, that a FLOSS application isn't providing the framework for oppressors to use.

This definitely goes against the grain in the free software / open source software community, where developers are seemingly content with saying “I just really really really want nazis to use my work, but like, in a totally politically neutral way 😇”, but fuck that shit this needs to be done.