Etherpad includes banned (on Google code) software JSMin
wonko.com
wonko.com
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."
Pretty funny, if you ask me.
Assuming that the license this is added to is a generally permissive license, I would assume that neutral acts are implicitly allowed and were probably not enjoined by "for Good, not Evil" as that clause would simply not have applied.
But I am not a lawyer.
See http://www-cs-students.stanford.edu/~cale/cs201/ and http://www.ibmandtheholocaust.com/ and http://en.wikipedia.org/wiki/IBM_and_the_Holocaust and http://en.wikipedia.org/wiki/History_of_IBM for starters; the last one has a rather distressing paragraph:
One of the medals Watson received was from the Nazi government in 1937, honoring him in his role as the President of the International Chamber of Commerce. During the rise of Nazi Germany and the onset of World War II, Watson and IBM’s German subsidiary had relationships and contracts with the German military/industrial technocracy. IBM's punch card machines were used by Germany to keep track of people who were to be subjected to the Holocaust.[8] Only after Jews were identified—a massive and complex task that Hitler wanted done immediately—could they be targeted for efficient asset confiscation, ghettoization, deportation, enslaved labor, and, ultimately, annihilation. It was a cross-tabulation and organizational challenge so monumental, it called for a computer. Of course, in the 1930s no computer existed. But IBM's Hollerith punch card technology did exist. IBM and its German subsidiary custom-designed complex solutions, one by one, anticipating the Reich's needs. They did not merely sell the machines and walk away. Instead, IBM leased these machines for high fees and became the sole source of the billions of punch cards Hitler needed.
The Software shall be used for Good, not Evil.
Google Code takes a hard stance against license proliferation, and only allows the ones on their minimized list, period.I think Hipp took a better approach with Sqlite -- the code is in the public domain, and instead of a license the code comes with headers containing this simple admonition/blessing:
May you do good and not evil
May you find forgiveness for yourself and forgive others
May you share freely, never taking more than you give.I think that if you want to appease legal departments, your best bet is a well known licence, written by lawyers (eg Apache 2.0).
Basically any corporate entity with a legal department worth its salt will say the same thing.
It's a shame, really, because JSMin and JSLint are nice pieces of software and the intent behind it is admirable, but the way our legal system works, that clause has prevented much good that could otherwise have been accomplished.
But if you're Raytheon, Haliburton, the U.S. Military, or one of the mercenary step-children of Blackwater then yeah, maybe your legal department is wise to balk.
It's just a silly situation that arises from a silly change to the license.
"There is no such thing as right or wrong." [ ] Right [ ] Wrong
So, funny phrasing and thought provoking way of putting it. After some reflection, I think I'd press you to define right and wrong before answering if you hit me up with that.
We release about 40% of Shopify's code base as open source. There are numerous knockoffs both closed source and open source that use all of our open source ( and even our themes, templates, js and css! ) to make competing products. This sucks for us and is certainly evil from our perspective but it's silly to change a battle hardened OSI license to prevent people from doing that.
(Of course, if people are using the software in ways at odds with your license, you have legal recourse, in which case... why aren't you taking legal action?)
You could have a license that said 'good for all uses except military ones' - you might or not want to deal with the requirements it imposes, but at least they're very clear cut.
But concepts of good an evil are hopelessly subjective. Besides all the examples already used here, suppose JSMin was employed for some scientific application involving the study of evolution. Well, I think that would be good since I'm a fan of Darwin, but if I were a fundamentalist Christian or Muslim I might consider that absolutely pernicious on the grounds that evolution denies the guidance of God in natural affairs (which some people do believe). Not only do I have to worry whether the author of JSMin might believe this, but anyone else who believes that and see JSMin being employed for this end might take moral offense and file for an injunction to prevent its use. such a suit would probably be thrown out immediately, but who wants to worry about such hassles when they are so easily avoidable?
It would be better to say 'non Open Source' as that's the reason why JSmin, Microsoft Windows and other apps for which you can get source code but aren't OSS aren't allowed on Google Code.
It probably does make the software non-free (e.g. according to the DSFG); more importantly, such a clause is utterly idiotic. Rather than bitching about Google Code, the JSMin author would be better served to get rid of the arbitrary, subjective and probably unenforceable clause from the license. The original JSMin is only 200 lines of C, so the simple solution would just be a from-scratch rewrite.
The license statement is just ridiculous and doesn't mean anything at all, yet it gives legal departments everywhere a big problem to deal with.
As for the license statement, it is there beacuase he wants to. Have you ever thought that he may want that giant corporates don't use his code without permission first.
A clear example of this it's the main story of this discussion and the response by tlrobinson.
EDIT: The startups don't have this problem. Big corporations do.
What makes you say that this is not a problem for startups? Is it because you think startups are too small to profitably take to court and thus can safely ignore software licenses, or because you think that somehow companies below a certain size are incapable of evil?
"Corporation, n. An ingenious device for obtaining individual profit without individual responsibility." - Ambrose Bierce
That quote is good for a laugh, but a lot of people actually believe that without thinking it through entirely. Corporations exist to limit legal liability to the corporation itself: So if a group of 10 people get together to do something, they can form a corporation, and the people won't lose their personal possessions if something goes wrong on the corporate level. Meanwhile, anyone who does business with the corporation is informed it's a corporation - in order to keep the legal protections of a corporation, the corporation must explicitly identify itself with markings of "Inc", "Co", "Corp", "Incorporated", or so on. When an officer of the corporation signs a document, he signs it as, "His Name, Pres." instead of just his name - indicating that he's signing in his officer role, not personally. People who do business with the corporation understand that if something goes wrong, they can sue the corporation, but not the individuals who invested in it and its employees, unless the people did something wrong as individuals as well.
Some people think this is a bad thing, but they ignore what happens if you didn't have them. If corporation limited liability wasn't available, established people would be muc more hesitant to go into a dangerous line of business for fear of losing what they already have. So you wouldn't have the most talented and established businessmen managing and investing in dangerous work like long distance shipping, mining, drilling, etc. Fields that are particularly dangerous would be populated only by people with nothing to lose - a scary proposition.
Actually, personally, I think the ideal is to make corporate limited liability weaker at the same time as generally having courts hold people liable less often. Currently, if you slip on ice in front of a business, you've got a decent chance of winning a lawsuit which is crazy. Spilling hot coffee. Etc. Reducing liability and generally admitting that "bad stuff happens and isn't always someone's fault" while simultaneously holding individuals more accountable when they actually do wrong would probably be the best legal mix. But, if you want lots of liability and broad judicial jurisdiction, you absolutely need to have limited liability in order to allow the most experienced people to get involved in dangerous and important fields without risking everything they already have.
As an example of such, consider this recent datum: http://www.editorsweblog.org/newsrooms_and_journalism/2009/1...
I feel sure there must be some pragmatic medium between corporate fecklessness and the opposite case of unlimited liability.
These kinds of "licenses" are more likely hurtful to startups than large corporations.
Point being, if you release something under a license that is is too obscure and free, you will run into these problems, as Google has. I mean, they operate in China, after all. (not that I have anything against China. The citizens of the United States of America could learn from China).
To their credit, they are actually dealing with the consequences and not setting a double standard, which I find admirable. But I still think the situation is worth highlighting and worth discussing.
But it does create a bit of a mess for people who take certain principles in their work as seriously as these programmers care about their craft and personal expression.
License text is code, of a sort, and overall it's a good thing that large organizations care about the precise meaning of the legal agreements they enter into.
Similarly, it's a good thing that the 'Open Source Definition' says licenses can't discriminate against fields of endeavor (including those some would label 'evil') and still be considered 'open source'.
So this little license flourish throws a couple of monkeywrenches into the gears for well-meaning folks just trying to get good stuff done.
Perhaps it succeeds as a thought-provoking bit of performance art, but it's lousy as a license term for enabling sharing and building.
It's understandable that Google, or just about anyone else, would reject a license with that sort of vague language in it.
There's a time and place for whimsy, but a software license isn't it.
Not before the new year though (I was the dude who said no way to jsmin on google code)