H

Hasen

dev.hasenj.org · Personal blog · on HN since 2011

Hasen is a programmer who writes about web development, covering Backbone.js, Knockout.js, Node.js, CouchDB, Flask, and software licensing.

What HN saysHN mostly links his post on Douglas Crockford's JSLint license exemption for IBM "to use for evil", in discussions of the JSON license and open source terms.
19HN people shared it
13linked it in comments
13stories submitted
306story points
9 years agolast shared
2011people per year2026

Most-shared posts

  1. 1
    IBM and its minions …
    12 people · 1 points · first shared 2011 · discussion on HN
  2. 2
    I give permission for IBM [...] to use JSLint for evil.
    2 people · 186 points · first shared 2013 · 55 comments on HN
  3. 3
    Why I'm choosing CouchDB
    2 people · 3 points · first shared 2012 · discussion on HN
  4. 4
    A comparison between Backbone.js and Knockout.js
    2 people · 3 points · first shared 2012 · discussion on HN
  5. 5
    Why I think Node.JS is a terrible platform
    1 people · 100 points · first shared 2012 · 141 comments on HN
  6. 6
    Sketching helped me avoid getting stuck
    1 people · 5 points · first shared 2011 · discussion on HN
  7. 7
    Adding web sockets to Flask apps
    1 people · 3 points · first shared 2012 · discussion on HN
  8. 8
    Coroutines vs explicitly async APIs
    1 people · 2 points · first shared 2012 · 1 comments on HN
  9. 9
    Tools for Front End development
    1 people · 1 points · first shared 2015 · discussion on HN
  10. 10
  11. 11
    Interesting hack to create html templates in javascript
    1 people · 1 points · first shared 2013 · discussion on HN

What HN people wrote when they linked it

hasenj · 2012-11-16
Backbone.js is not going to solve your DOM spaghetti problems. You will still bind to events, you will still manipulate the DOM, you will still do all the manual work. I really recommend looking at Knockout.js instead. It really gets rid of all the DOM manipulation code that tends to become so complex and spaghetti like. How? It provides a declarative language for two-way binding between the UI and the data. Check out this example: http://jsfiddle.net/FEVbz/ In the HMTL pane, edit the input boxes and watch as the other DOM elements update automagically. Notice how simple and clean the Javascript code is. All it's doing is initialization and setup. Nothing else. No event binding. No dom manipulation. No spaghetti. No nothing. Shameless plug: Here's an article I wrote about why I think Knockout.js is so much better than Backbone.js http://dev.hasenj.org/post/35572197519
Sanddancer · 2013-04-20
I'd argue that history shows otherwise. GPLv3, with its increased restrictions, proved a bridge too far for a lot of projects, to the detriment of everyone. Apple, the FreeBSD project, the OpenBSD project, etc have all put in efforts to divest themselves of GPL encumbered code because it increased the costs of using the software. Because the wording of things like the patent clauses were so questionable, it became much cheaper in terms of lawyer time, etc, to either use older software that was still under GPLv2, or to use software using less-encumbered licenses, like BSD and MIT. That balding middle manager needs to make sure that that license is acceptable by his boss, by the people in the legal department, etc. For example, an innocuous throwaway line of a program that can only be used for "good, not evil," ends up needing to get the lawyers involved for clarification and special waivers ( http://dev.hasenj.org/post/3272592502/ibm-and-its-minions ). If the internal costs of using an encumbered program are too great, then chances are, it just won't get used; the company will either write their own version, or use a commmercial variant.
hdhzy · 2017-05-12
See also "don't use for evil" clause in JSON library by Douglas Crockford and a special exemption for IBM: "I give permission for IBM, its customers, partners, and minions, to use JSLint for evil." [0]. [0]: http://dev.hasenj.org/post/3272592502/ibm-and-its-minions
captn3m0 · 2016-12-24
That is true. Re-posting what current_call posted above: https://opensource.org/osd The license must not discriminate against any person or group of persons. That is the legal definition to be compliant as per OSI. The JSON license did not fulfill it. However, since then, the JSON spec/schema has been worked out under ECMA 5 standardisation, so you can JSON for all your evil projects now without a worry. [1] JSLint, however, you will need to get a waiver like IBM did.[2] [1]: https://news.ycombinator.com/item?id=3693108 [2]: http://dev.hasenj.org/post/3272592502/ibm-and-its-minions
pella · 2015-12-07
see JSLINT license ( https://github.com/douglascrockford/JSLint/blob/master/jslint.js "The Software shall be used for Good, not Evil." ) Only one documented exceptions : Douglas Crockford “I give permission for IBM, its customers, partners, and minions, to use JSLint for evil.” http://dev.hasenj.org/post/3272592502/ibm-and-its-minions More info - see HN archivum : JSLINT + EVIL https://hn.algolia.com/?query=jslint%20evil&sort=byPopularity&…
LoSboccacc · 2015-09-18
at IBM? half the company probably is. http://dev.hasenj.org/post/3272592502/ibm-and-its-minions
ams6110 · 2014-05-07
Reminds me of Crockford's JSON license: "The software shall be used for Good, not Evil" [1] and his story of how IBM objected to that, and he wrote them a special exception "I give permission for IBM, its customers, partners, and minions, to use JSLint for evil." [2] 1: http://www.json.org/license.html 2: http://dev.hasenj.org/post/3272592502/ibm-and-its-minions
johnsoft · 2013-07-23
That reminds me of this blog post – http://dev.hasenj.org/post/3272592502/ibm-and-its-minions
btilly · 2013-03-02
I think of that every time I hear about the IBM exemption to jslint's license. See http://dev.hasenj.org/post/3272592502 for what that is if you do not know. It is only funny until you realize the likely reason that IBM's lawyers are taking that term so seriously. (You think they don't still have clients who are despotic dictators?)
technomancy · 2012-05-09
> Patent trolls aren't illegal, but they're evil If you use Douglas Crockford's JSON library, then arguably its license could make you turn them down on legal grounds: http://dev.hasenj.org/post/3272592502/ibm-and-its-minions =)
wulczer · 2011-04-13
By the way, just to prove I'm not such a stiff, I rememberd and quickly found this: http://dev.hasenj.org/post/3272592502/ibm-and-its-minions It genuinely made me laugh :)
jerf · 2017-03-30
It doesn't actually say anything. It doesn't say you have permission to do anything, it doesn't say "If you do this I won't sue you", it doesn't license patents, it doesn't promise that as long as you conform to the license that you won't get in trouble in the future (that's the "estoppel" comment in the article [1]). A normal human being reading the license will get the almost-certainly-correct impression that the author of the code will not come after them for anything they do, especially if it's a small usage. Lawyers must worry about two reasonable scenarios: First, some large usage causing the original licenser to decide to change their mind [2]. To put it in terms most of HN will understand, what if you release some code under the WTFPL license and discover that the Trump administration is using it. Would you be tempted to wedge your way into the legal ambiguity and sue them over it? Your specific answer doesn't matter; you need merely believe that there are plenty of people jumping out of their seats and yelling YES! to make my point, as that is enough to send shivers down a big-company lawyer's spine. And second, even if you are confident that the original author wouldn't sue, if the rights to the package get transferred to someone else, you have to worry about whether that licenser will change their mind as above. If a new party changes their mind about the license, some of your legal defenses get a lot harder. The bigger you are as a target, the more you have to…
GFischer · 2015-07-22
Reminds me of the JSON / JSLint clause :) and the funny IBM story https://en.wikipedia.org/wiki/JSLint "The JSLint license is a derivative of the MIT License. The sole modification is the addition of "The Software shall be used for Good, not Evil."" The story (transcript from a conference): "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.” [laughter and applause] And the attorney wrote back and said: “Thanks very much, Douglas!”" http://dev.hasenj.org/post/3272592502/ibm-and-its-minions That said, these kind of clauses do cause legal problems. https://www.change.org/p/douglas-crockford-remove-the-not-evil-clause-…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close