News for hackers. Stuff that matters.
Re:You may finally use JSHint for evil by ricardobeat on Tuesday August 04, 2020 @03:37PM (#24053677)
The project has been "rewritten from scratch" [1] in order to sidestep the legal requirement of preserving the original license (from JSLint, which it was forked from), against both the original authors' wishes [2].

A whole lot of post-rationalization of how the unconventional license caused the project to slow down: http://mikepennisi.com/blog/2020/jshint-watching-the-ship-si.... Certainly not due to ESLint's extensible design, customization options, better error messages, ES6 and JSX support and adoption by multiple mainstream libraries.

Legal implications aside, it's still sad to see that 'do no evil' is so hard to agree with.

[1] https://jshint.com/relicensing-2020/index.html

[2] https://github.com/jshint/jshint/issues/1234#issuecomment-23...

Re:You may finally use JSHint for evil by jcfields on Tuesday August 04, 2020 @03:45PM (#24053761)
The part that explains why this clause (originally written by Douglas Crawford in the JSON license) is a problem for free software:

> If you’re not versed in legal matters, that probably seems like an odd restriction. By rejecting JSHint, are people admitting that they want to do evil? And is that clause actually enforceable, anyway?

> The answer to the second question is “no,” and that helps answer the first question. Legally-conscious objectors aren’t betraying their own dastardly motivations; they’re refusing to enter into an ambiguous contract. Put differently: they’re not saying, “I’m an evildoer,” they’re saying, “I don’t understand what you want.” This consideration disqualified JSHint from inclusion in all sorts of contexts.

Re:You may finally use JSHint for evil by ricardobeat on Tuesday August 04, 2020 @04:41PM (#24054279)
As an admirer of the WTFPL it's hard to sympathize. The lawyers can still play their games in court, it's free software either way. The fact that a couple central entities get to decide what qualifies as 'real' open source is the most concerning part.
Re:You may finally use JSHint for evil by nemothekid on Tuesday August 04, 2020 @05:06PM (#24054502)
>The lawyers can still play their games in court, it's free software either way.

That isn't true at all. If someone takes GCC, makes some changes and re-releases GCCv2 as closed source, there's no open source boogeyman that will force GCCv2 developers to release their code. It's up to courts, and by extension lawyers. Free software implicitly depends on lawyers to hold up the contract of Free Software.

If lawyers tell you "this contract is unusable because of this clause" then you don't have free software, you have a weird proprietary license. The entire point of free software licenses is to define rules for lawyers to play "their games in court". It's worthless otherwise.

Re:You may finally use JSHint for evil by falcolas on Tuesday August 04, 2020 @05:20PM (#24054617)
IMO, the fact that lawyers can't even agree on the scope of the AGPL means that semantics are just that, semantics.

Many licenses haven't been tried in court, including the AGPL, yet it's used fairly broadly.

Re:You may finally use JSHint for evil by javagram on Wednesday August 05, 2020 @06:56AM (#24059337)
AGPL is widely avoided by corporations precisely because of this problem...

Corporations vastly prefer BSD/MIT style licenses or at most GPLv2.

GPLv3 is avoided, AGPL is avoided even more.

Re:You may finally use JSHint for evil by gowld on Sunday August 09, 2020 @01:16AM (#24097443)
AGPL is avoided because cloud/server corporations know exactly what it means. It's expressly written to ban their business models.

Likewise for GPLv3 and Tivoized corporations.

Re:You may finally use JSHint for evil by ricardobeat on Tuesday August 04, 2020 @06:30PM (#24055204)
The license JSHint is moving to is MIT. It is by far the most common license used in OSS libraries and it allows usage or re-licensing in proprietary software.

That is the context from which I'm speaking, where enforcing openness through legal means is not a concern as the license is permissive (I imagine you were thinking of protecting GPL software, which is kind of the opposite situation). There have been zero court cases involving legal dispute over MIT licensed software.

Re:You may finally use JSHint for evil by geofft on Wednesday August 05, 2020 @02:01AM (#24057698)
Right, the unmodified MIT license is fine. There haven't been any cases precisely because of how unambiguous it is in giving permission.

The question is, how do I know that a contributor to software under the JSLint license (perhaps a corporation that paid an employee to contribute something) won't sue me on the grounds that I'm doing evil with their code?

Re:You may finally use JSHint for evil by bawolff on Tuesday August 04, 2020 @08:41PM (#24056057)
It is not free software.

To quote https://www.gnu.org/philosophy/free-sw.en.html

"The freedom to run the program means the freedom for any kind of person or organization to use it on any kind of computer system, for any kind of overall job and purpose"

Do no evil is maybe tounge in check, but its a real issue when people put things in licenses like "nobody from USA gov is allowed to use"

Re:You may finally use JSHint for evil by jahewson on Tuesday August 04, 2020 @04:57PM (#24054412)
There’s a couple of other central entities which do actually decide what gets to qualify as a legally binding agreement and the WTFPL likely falls short of pleasing them.
Re:You may finally use JSHint for evil by sedatk on Tuesday August 04, 2020 @04:51PM (#24054367)
WTFPL isn't ambiguous though.
Re:You may finally use JSHint for evil by duskwuff on Tuesday August 04, 2020 @05:26PM (#24054669)
Yep. WTFPL, while profane, is unambiguous in its permissivity. It is perhaps ill-advised in its lack of a warranty disclaimer, but that's a problem for the developer, not for the end user.
Re:You may finally use JSHint for evil by Zarel on Wednesday August 05, 2020 @04:03AM (#24058334)
I disagree with the implication that the "do no evil" clause in the license should be no big deal.

Imagine the library had some code like:

    if (get('http://example.com/am-i-evil') === 'yes') {
      fs.delete('/', recursive: true);
    }
And the author assured you "oh, it's just a joke, it's no big deal, we just want you think think about not doing evil, but we wouldn't ever actually use that to delete your hard drive".

Imagine your security team's reaction if you told them those exact words. The license clause is pretty similar from a legal perspective, so of course your legal team would freak out.

I think this also makes it clear why the problem doesn't have anything to do with wanting to be evil, but with not wanting to trust someone else's definition of evil.

Re:You may finally use JSHint for evil by dang on Tuesday August 04, 2020 @03:52PM (#24053824)
Ok, we'll change the URL from http://mikepennisi.com/blog/2020/you-may-finally-use-jshint-..., which has the catchy title but is just a summary page, to the post you linked to, which seems to have the most information.

Off-topic side note: Blog post series are a problem for HN because usually only one element in the sequence gets attention, meaning readers only get part of the story. Alternatively, more than one thread gets attention, but then the discussion is split and we run into the problem of follow-up posts [1], i.e. the exponential decay of interestingness under repetition [2]. So from an HN point of view it's best to just make one long article on a given topic—but that's just the local perspective.

[1] https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...

[2] https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...

Re:You may finally use JSHint for evil by Lazare on Sunday August 09, 2020 @12:22AM (#24097247)
> Legal implications aside, it's still sad to see that 'do no evil' is so hard to agree with.

I disagree that you can ever put the legal implication aside when discussing license terms. The legal implications are the entirety of what's being communicated by a license, which means you're basically saying "if you ignore what these words mean, nobody should disagree with them". That's very true! It is easy to agree with something if you ignore what it means. And?

Re:You may finally use JSHint for evil by gizmo686 on Tuesday August 04, 2020 @03:43PM (#24053738)
> Developers from the Debian and Fedora GNU/Linux distributions independently concluded that they could not include JSHint due to licensing concerns.

Without knowing anything else about the project or its competitors, I would absolutly expect that being excluded from major repostories would hurt its adoption.

Re:You may finally use JSHint for evil by geofft on Wednesday August 05, 2020 @01:57AM (#24057672)
It is my religious belief that we all do evil, at least a little bit, at least sometimes, even if we wish to do good. As St. Paul said, "For I do not do the good I want to do, but the evil I do not want to do—this I keep on doing."

That means that I cannot, in good conscience, use software that requires me to agree that I'm not doing evil. If your conscience is confident that your use of JSLint involves no evil - that you are sinless and blameless - I'm happy for you. Unfortunately I cannot say that of myself.

(And if your conscience lets you say that of your employer and all your co-workers, I really want to know where you work.)