I give permission for IBM [...] to use JSLint for evil.
dev.hasenj.org
dev.hasenj.org
I know why IBM has to these issue so seriously but remember this when you wonder why big companies can't execute as quickly as startups. And remember, the library I wanted to use only had contributions from IBM developers and was under the favoured Eclipse licence.
^ As an aside, putting 'evil' in your licence is pretty dumb. There is no definition of evil which can be argued over in any court. What you consider 'good', someone else almost certainly considers 'evil'
People keep arguing that the license is bad because "evil" is ambiguous. But there's a legal concept called "Contra proferentem", which stipulates that ambiguity in a contract (or license) benefits the party which did not draft it. Crockford's clause has no force because he drafted it.
Am I the only one who finds it concerning that a clause which legally cannot be enforced is placed into a license anyways? I'm not sure how this helps the complaints against the JSLint license.
It might be possible to write an obfuscator though...
Actually, one of the real dangers is if a court does recognise an act as evil, which they do all the time, just search court records for "evil". (For example, if a rapist uses your code, that would probably count as evil to a court)
Then you're definitely breaking the law.
Software is a tool. Like other tools, it can make any process more efficient, for better or worse. Damn, I've been in management too long.
Software is generalized, certain weapons are... not so much.
I think you're open to a civil claim but I don't think you've actually broken any law.
However, the use of a copyleft licence for the project leaves open the possibility that it includes code from a copyleft project authored by someone else.
Was the point of the approval process to ensure that contributions had not come from anywhere other than IBM?
Ya, it sucked.
Or wait, it's just a man's own time, can't he do what he darn well pleases?
1. http://news.ycombinator.com/item?id=763165
2. http://news.ycombinator.com/item?id=3693108
3. http://news.ycombinator.com/item?id=4762035
TIP: Just search on http://www.hnsearch.com to see if you are not posting a duplicate.
I understand that repetitions are sometimes ok for the benefit of new readers and all, so...
Excellent tip though, excellent.
What would be nice would be a way to merge several stories in a same comment thread, and maybe then "bump" older threads in case of reposts.
Even if it weren't the case you could probably find alternative sources to do a repost.
The take-home is don't do that. Don't modify a standard open source contract on a whim as it will inevitably cause serious hassle later. Okay if you have some major ethical/legal objection, then just beware it will cause some major hassle.
JSON is an exception. It came along when the programming world was desperate to be liberated from XML bondage...a fine solution surfaced at the right place and right time. And also at a time when people cared less about open source license specifics. For any average project, you're adding more barriers to adoption than you probably realise.
(I said more about this the last time http://news.ycombinator.com/item?id=4762261)
Thus, I don't think you two really disagree (though with so much XML bashing I think you make a valuable point).
XML is used for far more than just APIs though. However, I suspect that you personally weren't thinking "just APIs" when you wrote that the programming world was desperate to be liberated from XML bondage.
Be honest. You think JSON is far superior to XML in almost every way and you would never consider XML for any task. Also tell us what kind of programming you do most of the day and who you do it for.
Me - I write operations software for a pharmaceutical services company to run a warehouse, call center, marketing and miscellaneous. I float between writing web, desktop and back-end services apps. Most of our clients and partners (big pharmaceutical companies) are working with XML - even for new services and data exchanges. We barely ever see JSON coming from those companies.
I'd argue that there are more of these enterprises out there than there are web startups. If you had said "web programming world", I might not have disagreed.
There's plenty of people using JSON for data exchange outside of web and JavaScript developers. It's surely convenient that JSON is valid JS, and some might say they have the same "father", but it's real benefit is as a lightweight data format. Example - I'm using it right now to interface from a Java/Android client to a Rails server. There are 3000-odd SO questions on "Android JSON" (http://stackoverflow.com/questions/tagged/json+android) and I'm guessing most of those Android devs aren't interfacing with JS.
You're writing a lot, but telling us little. Why is JSON bad for non-web applications?
It all boils down to the fact that it's not just as simple as IBM trusting the license terms as shown.
For example, someone can take some code protected by GPLv2, naughtily strip off that license and apply a completely different (friendlier) license such as MIT or Eclipse. If IBM trusted this code (and license) as supplied then it (IBM) could get sued because it is (unknowingly) using GPLv2 licensed code and not honoring the conditions. It matters not one bit that they thought it was MIT or Eclipse licensed. It matters not one bit that someone else did the naughty thing of changing the license. IBM can still get sued, and theoretically be forced to publish source code that they may not want to, and people love suing IBM.
Another example question is: Did all contributors to the code have permission from their employers (if appropriate) to participate in the development of the package and relinquish their (the employer's) rights to any claim for the code?
The license is only as strong as its weakest link.
I know I've had a package turned down because we weren't able to get in contact with every contributer in order to convince the legal team that this wasn't a risk.
In other words, IBM want to be absolutely sure that including this code isn't ever going to come back and bite them in the ass if they do use this package.
It makes it impossible to include it in a GPL project. It breaks freedom zero, the freedom to "run the program, for any purpose".
This stupid little license game of Crockford's is childish and inappropriate. The more he jokes about it the less respect I have for him. Grow up.
Reply: "I give permission for IBM, its customers, partners, and minions, to use JSLint for evil."
I wonder if they sought further clarification if evil is the same as Evil?