It's not hard to justify developing a compiler or CPU (or a JS lintier) and deciding that it's just a generic tool and you have no control over the code compiled with it - and that's perfectly fine. You might however find it harder to justify writing functionality that's designed to track people or that you know is intended to be used for nefarious purposes, and in those situations you should be willing to hold yourself to whatever moral standard you have determined. Just because everyone below you hasn't prevented you from doing it isn't a reason to go along with it, you know more directly what your software is going to be used for than they do and they're effectively trusting you to make these decisions.
Again though, a JS linter doesn't exactly have these concerns ;)
Your tracking someone explore a new cave and recording paths found. You kill someone who is about to kill other innocent people. Pushing a kid into bushes to avoid a car could save their life.
Evil depends on context. What's evil to you is not evil to me either.
Courts generally throw out clauses like these unless the definition of evil is part of the agreement.
I think it's also somewhat interesting to compare these comments against the ones on articles where we find out a company is helping China (or a different country) censor their website, either locally or globally. In those situations people are upset they were willing to do it - but why wouldn't they if they have no moral responsibility for what they're making and it brings in more dollars? Someone in those companies had to approve it and eventually add those lines of code or those entries in a database, and good or bad they should be willing to stand up for those decisions and say no if they truly disagree with what they're doing. They are, quite literally, our last line of defense against such actions - and it might not be "fair" to them, but it is reality.
Do you think Linus would be willing to adding a driver for a USB device developed by North Korea that could or would be used by them for nefarious purposes?
Do you think he would be willing to adding code that would make it easier for the NSA to spy on Linux users?
Do you think he would be willing to add code to track Linux usage?
Do you think he would continue to develop and work on Linux if it turned out North Korea was the only user of it? Not just one of, but the sole consumer?
The real world involves actual hard problems and questions, and in some cases (In Linus's case, probably more often than not) your choices will have a direct impact on people. And while I can't tell you Linus's answers for those questions, it's not the answers that matter. What's important is that he should be willing to stand up for those decisions. It shouldn't be acceptable to us or him for him to simply throw his hands in the air and say "well I don't have any responsibility here so who cares how this software is used".
Software that is morally gatekept by its creator is not free (as in freedom) software. I value freedom more than I value "preventing harm" or whatever you're worried about. The whole world is trending toward less freedom (of speech, etc.) in the name of "preventing harm" which I think is a big mistake.
You really missed the point. Yes, anybody can maintain a fork, but Linus still has to make the judgement on whether to add such a driver to Linux. And making such a call is a big deal, it means he and the kernel developers are committing to maintaining it (to some degree) and makes it easier for North Korea to keep it up to date and functioning. And Linus's tree is the tree people get their Linux Kernel from, just because forks exist does not mean he doesn't need to think about what he adds to his. Linus is a "moral gatekeeper" whether he wants to be one or not, and in some cases he has to answer such questions, the only relevant part is how he chooses to answer them.
> Software that is morally gatekept by its creator is not free (as in freedom) software. I value freedom more than I value "preventing harm" or whatever you're worried about. The whole world is trending toward less freedom (of speech, etc.) in the name of "preventing harm" which I think is a big mistake.
These are two completely different things. There's a big difference between "I'm not going to prevent you from writing X" and "Here's X, it's only used by you and I wrote it or I'm keeping it up to date for you". That was the whole point of the example questions I gave. At some point it's not just some theoretical boogeyman, at some point you are aiding those who are doing things you don't consider OK. Just because they can fork Linux doesn't mean Linus has no responsibility for what he puts into his fork and develops.
> I value freedom more than I value "preventing harm" or whatever you're worried about.
And what's your point? Refusing to develop software or maintain software for someone is expressing freedom, I would argue that very thing is what will protect freedom from various nefarious actors. Or do you suggest such people (like Linus) should just blindly develop whatever they're told without any concern for what the results may be?
The real irony here is that some of the software I'm talking about is software that is currently restricting the freedom of people across the world. And I can guarantee you that some of the people who go on Hacker News help develop it, and justify it via "It's not my responsibility, it's just code and I get paid to do it" - and that shouldn't be acceptable to them or us. My whole point is that they should have a higher standard and realization of the affect the code they write has on other people, and I think we're actually in agreement on this part.
For that reason, I will never, ever use software with a license like that. Therefore, I will never, ever create software with a license like that.