Idea - Extending OSS licenses: For Ethical Use Only

I have this idea for some time, maybe it is naive, maybe it already exists. But I lack knowledge and time to find out:

Open-source has disrupted the software market. It has been a huge success. Licensing has played a big role in this, and we have many good ones to choose from, e.g. CreativeCommons, Apache, MIT, etc.

But AFAIK there is no licensing form that prohibits use of creative works for unethical use…

If we would have such license types, and release our software with them, this would be a big deal, since
there’s just so much unethical use all around us…


github List of open-source licenses

I am very sympathetic to the idea, but I foresee pretty big implementation issues, as you will probably also have considered. First, you must define a pretty robust definition of what is an ethical use of the software to begin with. A more fruitful alternative might be to license the software only to non-profit or charitable organizations?

1 Like

Yes. That is where I lack the knowledge. But I saw that among the Humane Tech community members there are a number of lawyers that may know a thing or two about this, so let’s see…

It is hard to define what constitutes ‘ethical use’ though more and more sites have a Code of Ethics and there exists well-defined descriptions of ethical practices.

On the other hand, if something is clearly unethical then most people intuitively know it - they feel it in their gut. Therefore the license should be an extension of current well-defined licenses and allow for at least the most egregious ethics abusers to be dragged to court.

Right now you have for instance the CreativeCommons licenses that disallow commercial use… (depending on which version you chose)

I could imagine such a license being applicable to web-based services, where you can clearly monitor who’s using your software. With OSS libraries that are part of larger applications this would be a lot more tricky. Are there any efforts made towards drawing up such a license?

Not that I am aware of… couldn’t find such efforts, but didn’t spend too much time on it either.

When you are really an unethical corp you don’t give proper attribution to the open-source projects you incorporated in your product. But many popular apps do have a list of OSS projects somewhere in their About pages.

If say (hypothetical), someone created an open-source recommendation system, and found it was being used in YouTube, then based on this you could presumably have a valid case against Google and demand either removal of the code, or changes to the algorithm.
It would not be easy, of course - probably new jurisprudence needs to be created - but still…

Even “non-commercial” licenses are hard to evaluate. if you want to look over the shoulder of reusers and determine if you find their work ethical, you end up using full copyright (or explicitly allowing certain uses).

In the attention space, the closest thing to such an extension of OS licensing may be ideas around attention tokens: platforms that allow readers to intentionally preserve or make available their attention; and require marketers or other messengers to pay for [or otherwise limit] their use of it, even among those who have opted in.

Yes, it will be really hard to enforce the license. But besides actual legal action, having an ethics section in the license agreement would draw attention to the topic of ethical software use in general, which may be of value in its own right. At least it is some extra thing the violator has to contemplate before commencing his/her nefarious act…
Some years ago you couldn’t find a Code of Ethics anywhere, and now they are used at the organization and the project level, so why not at the code level?

But more lawyers and license experts should probably weigh in. Legal texts and jargon are like assembler code to me… very hard to decipher :smiley:

I found this interesting Github repository which is drafting an ethical programmers oath, that is very relevant to development of humane technology:

I signed the oath myself and would encourage developers of the community to do the same, and/or improve the texts of the oath, which are currently defined as follows:

Programmer’s Oath

As a programmer, I swear to fulfill these tenets:

  1. I will only undertake honest and moral work. I will stand firm against any requirement that exploits or harms people.

  2. I will respect the lessons learned by those who came before me, and will share what I learn with those to come.

  3. I will remember that programming is art as well as science, and that warmth, empathy and understanding may outweigh a clever algorithm or technical argument.

  4. I will not be ashamed to say “I don’t know”, and I will ask for help when I am stuck.

  5. I will respect the privacy of my users, for their information is not disclosed to me that the world may know.

  6. I will tread most carefully in matters of life or death. I will be humble and recognize that I will make mistakes.

  7. I will remember that I do not write code for computers, but for people.

  8. I will consider the possible consequences of my code and actions. I will respect the difficulties of both social and technical problems.

  9. I will be diligent and take pride in my work.

  10. I will recognize that I can and will be wrong. I will keep an open mind, and listen to others carefully and with respect.

(PS. I created an crossposting issue refering to this thread: License extension: For ethical use only)

I have had some interesting discussion on the creativecommons freenode channel, that I’ll copy here:

[08:54] <barnie> hi! i am not an expert in open-source licenses, but interested in creating a license (or extension): For Ethical Use Only
[08:54] <barnie> does such license already exist (couldn't find anything that comes close till now)
[08:56] <barnie> on the recently founded Center of Humane Technology i started a discussion on this topic:
[08:56] <barnie> curious to hear an experts' opinion :)
[09:39] <ccbot1> <jure> @barnie: you can serch for different discussions that occurred around JSLint's 'no evil' clause:
[09:55] <barnie> jure: thank you, i'll have a look :)
[09:56] <barnie> jure: though 'no evil' to me sounds different than ethical.. but i'm a novice at this :D
[09:58] <ccbot1> <jure> @barnie: it's a different perspective. If you look at debian-legal, they argue that the license should define what is evil. In your context you would have to define what is ethical, which is not entirely obvious since it similarly depends on point of view.
[09:59] <ccbot1> <jure> @barnie: for jslint, it meant that these restrictions made the license non-free as it had additional restrictions that restricted freedoms of their users (but I guess this is the exact point of your license)
[10:06] <barnie> yes, thank you, it would probably be non-free by definition. I read the discussion.. guess 'ethical' is almost as hard to define as 'not evil'
[10:08] <barnie> some of the reasons that The Center for Humane Technology was founded include that software is used in non-ethical ways (social networks making people addicted to their use, collecting all kinds of data for obscure commercial reasons without the users full consent (not knowing the extent of data collection), etc.
[10:09] <barnie> this general trend worries me.. and I would like to open-source code that cannot be used in these kinds of ways
[17:04] <gwolf> barnie: It's a _bad_ idea. Look for the controversy surrounding the Douglas Crockford licensing on JSLint
[17:05] <gwolf> That license has attracted several adopters, but it's been determined as non-free by many others (including a group as large as Debian)
[17:06] <gwolf>
[17:06] <gwolf>
[17:06] <gwolf>
[17:06] <gwolf>
[17:07] <gwolf>
[17:07] <gwolf> And many more :)
[20:24] <barnie> gwolf: thank you for the infos. yes, i read some of the discussion on the JSLint license.. will check your resources..
[20:29] <barnie> i agree with the arguments in the 1st resource, i.e. it makes it a  non-free license and cannot effectively be used without the risk for legal action.. but isn't that because the clause "The Software shall be used for Good, not Evil" is just too short
[20:31] <barnie> in a license For Ethical Use Only there should be a more elaborate discussion on what constitutes ethical use and/or describe circumstances that are clearly unethical and are prohibited
[20:32] <barnie> btw. if you have a creativecommons license that is for non-commercial use only.. doesn't that make it a non-free license as well?
[20:33] <barnie> if that's the case i wouldn't mind if the For Ethical Use Only license was non-free.. but it should be clearly defined
[20:34] <barnie> if an organization or project has a Code of Ethics you should also be able to determine whether this code is breached.. or it is useless
[20:35] <gwolf> Yes, CC Non-Commercial and Non-Derivative licenses are non-free
[20:35] <gwolf> according to many definitions
[20:35] <barnie> ah, ok
[20:36] <gwolf> it depends on your goals, after all ☺ I personally think an "Ethical License" opens for far more abuses than good use cases
[20:36] <gwolf> and it's... all depending on who is judging
[20:36] <barnie> i don't agree with the Debian statement (or the argument in the article) that code with that license is not Open Source.. after all the source is open, for anyone to view
[20:37] <barnie> just Debian doesn
[20:37] <barnie> doesn't define it as such anymore
[20:37] <gwolf> view ≠ use, modify, adapt, redistribute
[20:38] <barnie> yea, agree
[20:38] <gwolf> I mentioned Debian because ① I am a Debian Developer and it deeply influences me, and ② it's a very well-recognized free software body worldwide, so its decisions have quite a bit of impact
[20:38] <barnie> i am newby at this and by no means a lawyer.. just frustrated how OSS software can be used for all kinds of nefarious uses
[20:39] <gwolf> but yes, there are differences in worldviews...

I was pointed in the direction of the JSON license by Gray Marchiori, on the cool Programmers Oath project who wrote this regarding ethical licensing:

To answer some of your questions from the original discussion - yes, it has been done.

Short and sweet: the JSON licence.

There were earlier and more complex alternatives, including no-nukes licences, and licences that banned use by military or certain other options.

As I’m sure you’ve discovered while looking into this concept, those licences are explicitly non-free, and depending on definition may not be considered ‘open source’. There is no way to work around those limitations, because the definitions explicitly prohibit discrimination of use.

It would be good to see a more comprehensively thought out creation - perhaps as a ‘patch’ that could be applied to existing free licences? Definitely worthy of a github repo. One risk; an Oath is a humanistic agreement and any human can meaningfully contribute. A licence is a legal agreement and it would be unwise to use a licence not drafted or inspected by some very well qualified and probably expensive lawyers.

So from these discussions it leads that - for ethical licenses to be successful in any way - there should be a clear legal description on what constitutes ethical and what is prohibited. And important is that it should not be too restrictive, describing general cases that can be broadly applied.

Seems we are in need of expert opinions of those involved with ethics and legal issues surrounding them!! Anyone here??