7 ms·
Etherpad includes banned (on Google code) software JSMin
- xal 17y agoStuff like this is why we slap MIT_LICENSE on everything we release so we never hear about licensing again. It's just a silly situation that arises from a silly change to the license.
- madair 17y agoSome people actually don't want their code to be used for evil. Glad MIT works for you though.
- Tichy 17y agoIt might be impossible for code to not be usable for evil. If you are programming an online shop, you kill physical shops (evil). If you program a game, you are stealing people's time (evil). If you program a social network, you tempt people to expose too much of themselves on the net (evil). There are always two sides to things.
- tomjen2 17y agoOh please. People are responsible for their own actions; as long as you don't lie to them, they accept the responsibilities when they do business with you. And there is nothing wrong with killing of inefficient businesses.
- pmorici 17y agoGood and Evil are one in the same it just depends which side you are on. Sure there are some clear cut things like clubbing babies, obviously evil. but what if I run a internet scam site that uses all it's profits to run free medical clinics in the third world and saves hundreds of lives? Point being it's subjective, hence only you can decide what is good and evil for yourself and putting a clause like that in your license is meaningless.
- Pistos2 17y agoIs your assessment about the subjectivity of good and evil objective? "There is no such thing as right or wrong." [ ] Right [ ] Wrong
- lionhearted 17y agoHah, this made me laugh and think for a moment. Personally, I'm not sure that right and wrong are subjective, but I'm also quite careful about saying there's an objective right and wrong. Objective right and wrong can certainly lead away from "live and let live", and who arbitrates this objective morality when people disagree? 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.
- Ralith 17y agoYou're conflating the rather abstract and arguably subjective moral concepts of "right" and "wrong" with "true" and "false."
- Eliezer 17y agoNow you've got me wanting to put a clause in my copylefted work that says "This work may be used for Good or Evil, but only by people who acknowledge the difference."
- pmorici 17y agoThere is a difference if we agree on our frame of reference, ie: what religion / culture / time and place we are drawing our definitions of good and evil from. But given that a piece of open source software is put out there for everyone from any point and time here on forward it's nearly a given that at some point a user is going to evaluate their actions in a different frame of reference and do something that you view as evil and they view as good.
- xal 17y agoThe point is that it's impossible to tell what is Evil and what is Good. It entirely depends on your point of reference. 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.
- kelnos 17y agoHow is that evil from anyone's perspective? You released code under a license that said people could do certain things with it. So they did those certain things with it, and you think that's evil? Huh? (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?)
- xal 17y agoThere are a ton of things you can do with our code that isn't actively marketing to our exact customer base. According to numbers we got recently more then 30% of all deployed commercial rails apps use ActiveMerchant which probably means tens of thousands. Only a handful are e-commerce systems.
- kelnos 17y agoSure, but how is that "evil"?
- enneff 17y agoBut this license doesn't prevent that from happening, anyway. Anyone truly evil would just ignore that clause.
- anigbrowl 17y agoIt's not that. The problem for someone who wants to use it is that they're entering into a contract with a licensor which commits them to an unknown (and possibly unknowable) compliance regime that they can never be sure they will satisfy. 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?
- nostrademons 17y agoThis is not unique to Google. I've got a friend at MetaCarta who really wanted to use JSMin, but the legal department squashed it immediately because the phrase "This software shall be used for Good, not for Evil" could mean anything in a court of law. 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.
- madair 17y agoJust because a legal department says something doesn't make it true. This is not tested in a court of law, and law departments have varying standards and interpretations. Some even have guts. Some prefer themselves not to do evil. 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.
- rgrove 17y agoThis headline is misleading taken out of context, and is not the headline of the linked blog post (I'm the author). JSMin isn't "banned software", it's just not allowed on Google Code.
- suprgeek 17y agoModified headline to reflect that it is "banned" on Google code and not in general. JSMin is indeed very good.
- rgrove 17y agoMuch better, thanks.
- nailer 17y agoSaying that JSMin is banned still implies JSmin itself ws explicitly banned, which is not correct. 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.
- JoelMcCracken 17y agoI don't see anything wrong with this. The license terms are very ambiguous. Honestly, what is "evil", and if you can define it, you deserve a phd in philosophy. 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).
- rgrove 17y agoThe point isn't whether it's right or wrong. It's that Google made a rule (no JSMin/JSLint on Google Code), then (unintentionally) broke it themselves with Etherpad and a few other projects, and must now deal with the consequences. 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.
- blasdel 17y agoJSMin's license is simply MIT + this added clause: 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.
- alextgordon 17y agoRichard Hipp actually said that he wished he hadn't released SQLite into the public domain. Apparently it becomes a headache when the code is used in countries that don't have the same implementation of the public domain as the US (around 16 minutes in: http://www.viddler.com/explore/rentzsch/videos/25/ http://www.viddler.com/explore/rentzsch/videos/25/ ). 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).
- blasdel 17y agoYes, Moral Rights are even more of a pain in the ass than the AGPL could ever hope to be.
- whalesalad 17y agoWhy can't JSMin simply remove that from their license and save a lot of people a lotta headache?
- deleted 17y ago[deleted]
- deleted 17y ago[deleted]
- madair 17y agoMaybe he prefers that JSMin code not show up in Hellfire missiles?
- ique 17y agoWho says it wont? If the hellfire missiles is used to kill terrorists plotting to nuke the world I would say they were used for good! 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.
- eagleal 17y agoAs for the terrorist thing, it's a terrorist from your point of view. Eg. Israel bombing an UN school full of children was not seen as a terrorism, .... [Disclosure: I'm neither Israelite neither Islamic, neither at the side of UN, so neither from Iraqi.] Let's not talk about this "shit" in HN, sorry for going offtopic. 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.
- dagw 17y agoThe 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?
- tlrobinson 17y agoCrockford talks about this problem here: http://developer.yahoo.com/yui/theater/video.php?v=crockford-json http://developer.yahoo.com/yui/theater/video.php?v=crockford... 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.
- suprgeek 17y agoWonderful. So JSMin will still be used by IBM, Crockford gets to illustrate how divorced Legal Speak is from Regular Speak, and pokes some (well deserved) fun at "IBM and its Minions". Win-Win
- Retric 17y agoThe RPGer in me finds it amusing that they did not ask for you to extent that to "neutral" acts.
- anthonyb 17y agoI find it amusing that he only licensed it to IBM and minions for small-e evil, not big-E Evil.
- oujheush 17y agoNeutral in this license appears to be in a gray area. The initial phrase "for Good, not Evil" presents a dichotomy. Now, this addendum allows Evil as well. So the license has never explicitly addressed this issue, it seems like it would depend on what else the license says. 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.
- lsb 17y agoIt's an unfortunate aspect of IBM's legacy that they supplied the Third Reich with computer supplies (those numbers branded into people's arms are IBM database ids), and they also partnered with apartheid South Africa to supply them with technology. See http://www-cs-students.stanford.edu/~cale/cs201/ http://www-cs-students.stanford.edu/~cale/cs201/ and http://www.ibmandtheholocaust.com/ http://www.ibmandtheholocaust.com/ and http://en.wikipedia.org/wiki/IBM_and_the_Holocaust http://en.wikipedia.org/wiki/IBM_and_the_Holocaust and http://en.wikipedia.org/wiki/History_of_IBM 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.
- gojomo 17y agoIf some creators want to be whimsical in their license text, of course that's their prerogative. 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.
- Kadin 17y agoIt's a pretty stupid line to put in a license. What the hell does it even mean? Without defining "evil" in the context of the license, it could mean anything -- who gets to decide what constitutes "evil"? The original author? In that case, it's like making the license immediately revocable for any reason at any point in the future. 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.
- oomkiller 17y agoHow childish of him. Attorneys will quibble over anything, he needs to either remove the offending text from the license, and use the FREE Google Code, or host it himself and quit complaining about Google's legal policies. He is going to either lose lots of software where his code is used, or make it a lot harder on the community.
- RyanGWU82 17y agoIt's not his call. He forked a derivative of Douglas Crawford's JSmin project, and that was a requirement in Crawford's license.
- neilc 17y agoThe whole thing is silly, because JSmin is ~200 lines of code. It would be trivial to rewrite from scratch and avoid the braindamaged license.
- cdibona 17y agoI think the right way to deal with this is to find a way to use our closure tool to replace jsmin's functionality in a dfsg/osi approved way. Not before the new year though (I was the dude who said no way to jsmin on google code)
- rgrove 17y agoThat takes care of JSMin, but what about JSLint?
- motters 17y agoI'm not sure that Good and Evil have legal definitions. Also people doing evil often seem to believe they're doing good, so could claim full compliance.
- neilc 17y agoLast week, Google banned my PHP port of JSMin from Google Code due to a quibble over a line in the license stating that “The Software shall be used for Good, not Evil”, which they believe makes the license non-free. 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.
- ghempton 17y agogithub ftw