JSON.org License Literally Says it "shall be used for Good, not Evil"
java.dzone.com
java.dzone.com
Can we get over this and move on? Anyone would think a lot of people were swindled of something that was clearly not ill-intended.
Almost everything in there is dedicated to giving rights to the user instead of the other way around. In the end, even if a work is created "for evil", you can get the source code, change it and make it be for good. (Not to mention the whole non-discrimination thing is considered by some to be pretty "good" in nature)
Public domain allows you to do anything you want at all with the source material and the product never has to give anyone any rights, prevent discrimination, allow access to the source code, or do anything positive whatsoever. I can take the SQLite source code, rebrand it "SQLPeter", change it so it corrupts your data randomly, remove all documentation and tests and keep the source code from you and charge $1,000 for support.
The work itself may be made with the best of intentions, but the license (public domain) allows it to be used for more evil than the Open Source license would have permitted.
No restriction on usage or brand confusion. That seems a rather immaterial difference along a hypothetical alignment spectrum.
GPL folks are willing to accept fewer rights in exchange for a guarantee that at least that subset of rights will be passed on to all parties. Permissive (BSD/MIT/etc.) folks are OK with the idea that someone might build proprietary software someday, and prefer the license that lets you do the most stuff right now.
First.
Evil by definition is:
6. that which is evil; evil quality, intention, or conduct: to choose the lesser of two evils.
7. the force in nature that governs and gives rise to wickedness and sin.
8. the wicked or immoral part of someone or something: The evil in his nature has destroyed the good.
9. harm; mischief; misfortune: to wish one evil.
10. anything causing injury or harm: Tobacco is considered by some to be an evil.
(http://dictionary.reference.com/browse/evil)Therefore, if you want to 'do evil' you can harm, cause mischief, cause misfortune, cause injury or harm, etc etc etc. So that's what "you can do evil" means.
Second.
Evil is not by definition, "doing something you shouldn't do," as evidenced in the definition in the URL linked above. Evil is just bad. Sometimes it might be necessary to do evil. The bible has innocent god-fearing people do evil all the god-damn time - but it's something they do In The Name Of The Lord.
Third.
Why the hell are you telling me this? I never said anyone should or should not 'ban evil', I was merely stating that the potential for good or evil in a public domain-licensed piece of software like SQLite can't be compared to an Open Source-licensed product because the public domain is inherently more evil than Open Source.
Fourth.
'Banning evil' is not even comparable, to saying that breaking a law is illegal. Saying that breaking a law is illegal is a truism. Banning evil is a sometimes-necessary act in order to enforce a punishment for doing evil, which is the whole basis for a system of laws and penalties. You have to define what evil is and define a punishment for varying degrees of evil. Without specifically defining such laws you have a kind of tribal unspoken law which is quite subjective and not compatible with things like copyright law or software licenses.
Does that clear things up?
(which is a shame, because this clause makes it incompatible with the GPL family of licenses).
Douglas: That's an interesting point. Also about once a year, I get a
letter from a lawyer, every year a different lawyer, at a company--I don't
want to embarrass the company by saying their name, so I'll just say their
initials--IBM...
[laughter]
...saying that they want to use something I wrote. Because I put this on
everything I write, now. They want to use something that I wrote in
something that they wrote, and they were pretty sure they weren't going to
use it for evil, but they couldn't say for sure about their customers. So
could I give them a special license for that?
Of course. So I wrote back--this happened literally two weeks ago--"I give
permission for IBM, its customers, partners, and minions, to use JSLint for
evil."
http://www.mail-archive.com/debian-legal%40lists.debian.org/...If this evil thing is also illegal, is he putting himself into legal risk? After all, he explicitly agreed on the evil task.
I released to free use for all with the only condition that it not be used for evil. If that is unacceptable to you, then you may not use it. Your options are to bend to the pro-evil fanatics, or to find a more reasonable hosting solution.
Ultimately I wrote my own called JShrink (which I just moved to github this weekend - https://github.com/tedivm/JShrink).
The point being, he's not actually willing to make the change.
Now we just need an evil-friendly reimplementation of jslint.
http://searchco.de/?q=The+Software+shall+be+used+for+Good%2C...
Is Google actually enforcing this? I would be curious to know how many projects have been affected by it.
(Last part was a joke :P)
IMO, the only useful description of open source is source code licensed under one of the licenses approved by the Open Source Initiative, but there is no trademark protecting that particular use.
The "good" vs "evil" thing is perhaps a red herring, but you can imagine the practical consequences if "free" software developers licensed their work for all purposes except competitors, etc.
The Free Software Foundation raised this issue in the context of royalty-free patent licenses years ago [2], and the Open Source Initiative went so far as to say that if a license allowed for a "Discrimination Against Fields of Endeavor" then it wasn't an open source license at all [3].
I'm sure D. Crockford didn't do this to be malicious in any way, likely he even did it just to be cute, (maybe he even meant well by it!), but it's also a shame that it's persisted this long, as it sets a bad example for others.
[1] http://en.wikipedia.org/wiki/Field-of-use_limitation
[2] http://www.gnu.org/philosophy/w3c-patent.html
[3] http://www.opensource.org/osd.htmlSeriously? He’s an adult, he makes his choices, if it means people prefer other, fully free software that doesn’t necessitate lawerly wrangling, so what?
His software isn’t free, and I’m fine with that, he did the work, he decides what we can or cannot do with it.
(Being legally allowed to remix code across projects is one of the great things about the OSI model. There are some silos within open source, such as copyleft vs permissive licenses, but at least each of those are already big enough sustain their own ecosystems.)
An amusing anecdote none the less!
So great, anyone who asks for exception from the clause should be the next focus of the Surpreme Lord and Ruler (the US government)... no need to waste all this money snooping through people's email and facebook accounts!
Pretty funny nonetheless, more people should add these little clauses in :D
No they shouldn't. To you it's cute. To anyone who's serious about using JSON it's an arbitrary field of use limitation that could be construed to mean anything. In other words, it makes the software unusable for Real Work (TM).
(Disclosure: I am not a lawyer.)
If I was was Douglas then I would, at this point, refuse to change the license. If you don't want to use it due to some anal overpaid lawyer then your problem, use something else.
A lawyer may tell you this makes your software unworkable, but common sense tells me that this clause means jack all. As you say, it could be construed to mean anything and a court with any common sense would throw out any claim. It would be difficult to fully define the term "evil".
(Having said that, I understand it would probably cost a bucket load through the legal system, that same lawyer bending you over again)
The standard (and correct) response to this is that if you don't like the license either don't use the code or negotiate (as IBM have done in this specific case) alternate terms.
> one that many people don’t even know is lurking in their dependency tree.
That is a due diligence failing on the part of those people, rather than a problem with this specific license. If you don't know that this clause is relevant to your dependencies then what else might be hidden in there that you are unaware of?
A bit like the "blue M&Ms" (and other such) found in the riders for celebrities, they do that as a test to make sure people have bothered to read the information provided rather than any real need for the specific demand to be complied with.
So I guess neither Apple nor any iPhone-owning user may use the phone for evil.
"The Software shall be used for Good, not Evil.” site:http://code.google.com
yields 35k results, they’ve got a lot of banning to doI think when giving something away for free, it does not hurt to try to make the world a little better...
I see the list of you-may-nots on your site, but those also aren't (a) conclusive and (b) strictly defined (what constitutes an 'extreme' position, etc?).
It's evident when certain articles are posted on Hacker News that even this crowd's diversity in backgrounds, experiences and morals vary over quite a range.
This type of thing is of course a problem in computer science, but the law is not a computer, and I wish we could stop treating it like one. With humans involved, it's quite feasible to make decisions about undecidable things. This process is called exercising judgement, and we hire judges to do it. Frankly, I don't see what the problem is with a "don't be evil" clause. Pretty much everyone understands what it means in most any given circumstance, even if we can't write down a decision procedure for it.
I understand that part of the motivation here is the urge to CYA and offload all accountability for bad decisions from people to "the law". Not sure what to do about that.
Further reading: http://www.newyorker.com/arts/critics/atlarge/2012/01/30/120... ; appeared on HN yesterday; from paragraph 7, argues that these attitudes are partly responsible for the current incarceration problem in America.
(I wonder, can we make a proof of the undecidability of the good-vs-evil problem? I don't think it'll be as easy as for the halting problem; we know how to make a program halt or not halt, but it's unclear how to make a program "do something evil" or "do something good".)
Surly this is just a statement of fact. That once embedded in your software, you program will be considered Good.
It doesn't change the line above which grants the user the rights to use the software "without restriction"
http://www.debian.org/social_contract
... and there's a reimplimentation, jsmin.py:
http://wonko.com/post/jsmin-isnt-welcome-on-google-code#comm...
(Joey Hess is a long-time Debian developer).
Anyway, it was a serious question.
But yes, the license does raise some rather intractable problems.