Comment by recursivedoubts
8 hours ago
They are open source developers, giving away free software as a gift. There is no duty here.
We can speak, respectfully, of how important backwards compatibility is to us, and ask nicely for them to give more of their time to support it when their free sodftware isn't backwards compatible. Perhaps we can even offer to help implement it.
But they have no duty to do so or to "care" for their users. (They have already demonstrated they care for their users, btw, by giving them free software.)
EDIT: I missed an important part of the story, which is that they mutated existing files in a non-backwards compatible manner. That should have been avoided, I understand where the (secondary) author is coming from now.
The argument is that developers have a duty not to arbitrarily delete data on your system that you may have relied on that was produced by another program just because they’d like to replace it with something in their own format.
I don’t care if you’re volunteering your time; if you build something whose implied purpose and success depends on other people using it, you emphatically have a duty to those people not to silently destroy stuff that was there before your software was.
It's worth pointing out that vim is not "another program" as far as Neovim is concerned. It's an earlier version of the same program. Neovim is a fork of vim, not a totally different editor that happens to share part of a name.
Forking creates new programs.
If I fork chromium, I do not get to claim that I am a chromium maintainer.
Vim and Neovim are two seperate programs.
3 replies →
It absolutely is another program, I can tell this because it has a different name. To run it I type "nvim" instead of "vim". I use different config files to control its behavior. I install a different package on my system when I want to use it on a new computer.
4 replies →
> giving away free software as a gift
Even a gift comes with an implicit promise that it will do no harm. Deleting important data of yours without warning is harm.
If you’re storing your important data in ~/.cache, you’re eventually going to suffer even if you don’t install Neovim.
This gift comes with the following clauses listed plainly in the license file:
It's genuinely mind-blowing to me that software can do something obviously bad, someone can point it out, and then someone will link to the license file to say they have the right to do it.
That's such an obvious category mistake that I'm not sure how to respond. It almost feels like a bad-faith interpretation of Wichary's original point.
7 replies →
I don't think anyone is looking for legal remedies, this is not the right layer.
11 replies →
There's a long literary tradition of representing contracts as a tool of villainy. Signing them is generally treated as a Faustian bargain.
This is a great example of why. Most humans have a sense, deep down, that contracts often exist to bridge the gulf between the ethically defensible and the legally defensible.
It's hard to imagine that any sane person who is just looking to use a popular editor would read some broad limitation of liability language like the above, and interpret it to mean, "By the way, we intend to quietly delete certain files created by a competing fork of this project whenever we find them."
It's true that contracts with liability limitation clauses like this are an absolute necessity in this day and age. But there's also a non-legal principle of mutual respect that is absolutely necessary to a healthy open source community.
3 replies →
I am never going to use any software you have written.
“Here, take this car, it’s free!”
“Ow, the gas pedal is actually a bear trap.”
“Why are you complaining? It’s free!”
This is a very apt analogy. If you give someone a car (or sell it cheap) and you know there is a problem with the car, then it is your duty to tell them. "Hey, I've been having trouble with the breaks they need to be pumped. Be careful about that."
Then you don't take the car. Why is this confusing?
That's not how liability works, not either morally or (IANAL) legally.
Because you didn't find out it was a bear trap until after you stepped on it?
Ah, yes. The old story of the one-footed man who didn't take the car.
Well I would feel slightly irate if I had to find out about the bear trap before I decide I don’t want the car.
That’s fine, you can leave the car, but you’ve already lost your foot. Why do you find this confusing?
You discover it’s a bear trap not before you try to pull out from the parking lot.
A duty, like a responsibility, can be something you feel or choose for yourself. The fact that the maintainers of some software don’t feel it is a perfectly good argument for not using that software. There is no necessary connection to compensation or transactional thinking.
If I give away food I have a duty not to poison you. It doesn’t matter you didn’t pay for it.
Others are eating it and are fine, chances are you’re allergic. Fortunately all ingredients are listed, you can check - or even modify the recipe yourself.
> Fortunately all ingredients are listed
How does this translate to the vim situation?
1 reply →
It's not poison, it's a broken feature. And you have the source code. Fix it if you like.
Sure, and then have it break again the next time upstream pushes a change. Or have something else break because upstream doesn't care about breaking things that I'm relying on.
The only way to "fix" this from a source code perspective would be to fork Neovim.
Software isn’t food.
So software that deletes important data of yours without any warning is ok because at least it isn't poisoning you?
4 replies →
You must feel clever completely missing the point on purpose like that.
12 replies →
Yes, everyone is aware of that. The parent poster was bringing up the example of food to demonstrate that our society does not agree that giving something away for free doesn't mean you have no obligation as to potential adverse effects of the thing.
4 replies →
This is absolutely true. On the other hand, if there's Vim, Neovim, emacs, MS Word, Google Docs etc and some treat me with respect and others do not, that might affect my choice of which software to use.
Sure. And likewise, users who care about backwards compatibility have no duty to do anything for the Neovim developers--they can simply use a different editor that suits their preferences.
Is there a good way to avoid programs like this in general?
You buy software that includes a commercial license that guarantees data retention
3 replies →
> They are open source developers, giving away free software as a gift. There is no duty here.
But actually there is! They didn't start from scratch. They took another very successfull and beloved project with the promise "to make it better". There is some promise here and the duty not to make it worse.
"Better" is subjective. They made it better...for themselves. Then gave it away so people who share their opinion, had the opportunity to choose to use it.
> Then gave it away so people who share their opinion, had the opportunity to choose to use it.
How many neovim users were made aware that the software would proactively delete their decade-long file history?
1 reply →
And this obligation lasts… for the rest of their lives?
It would be really surprising if they could make it better for literally every user. The perpetual undo is just better handled by git.
They wrote this software with the explicit intention of offering it to other people to use. Their program deleted data created with a different program, on someone else’s computer. If they have no sense of duty that would preclude doing that, no one should use their software.
"Behold my glorious generosity, which eclipses your petty meaningless little data!"
This is the extreme version of "I enjoy coding but I hate users."
It may be legally valid in absolute technical terms, but I'm going to take a lot of persuading that it's a healthy attitude.
Sure. And nobody has a duty to use it. This user states that (s)he doesn't want to use an editor that doesn't care for its users. I don't blame anyone here.
If people can be upset when llms delete a file, we can be upset when an open-source project deletes a file.
HN commenters constantly mistake “what I should do” with “what I am obligated to do.” Nobody is saying open source developers are legally mandated to be careful with user data. We are saying they should. There’s no need to haul out the license and put our lawyer hats on here. One can be within one’s legal rights and still be wrong.
Ill remember this when I distribute malware.
To be fair some malware has a better support and care experience than some open source software. The malware actively encourages you to contact them to pay the ransom. The open source software, no such luck.
Oh my. This set of principles is appropriate for malware.
If you don’t like how it works, go build your own.
I already build software where I hold myself to a higher standard than malware, so not sure I get your point. Why not strive for a better world with good software?
2 replies →
> giving away free software as a gift. There is no duty here.
By that logic, if Facebook gives away their services for free then they don't have the duty to protect their user's privacy and mental health?
By your reasoning, a doctor who volunteers to provide free care to people has no duty of care to those patients. This is patently absurd - ethics and norms are a large part of what constitutes a professional.
And for what it's worth, I have flagged your comment for the inevitable pointless bickering it has precipitated. While applying reductionist frameworks and seeing where they lead is a necessary part of an individual's path to understanding, please avoid pushing ignorant assertions ("there is no duty here") as if they might constitute well reasoned truths.
There is not a duty but there is an image and quality issue. Something many open source projects suffer from and should not.
And even mentioning that results in "fork it if you're not happy" which immediately turns everyone off who's had to maintain a fork to fix a minor issue in something before. And anyone who can't fork it is being told to go to hell.
Everyone needs to quite frankly get off their high horse, crank the ego down and listen to users. Because you're damaging open source with the attitude.
30 years ago, things were better. They got a lot worse, particularly since github appeared.
You spewing bs like the left-pad dev who removed it from NPM a decade ago crashing everything.
Yes, OSS can start with just a passion without a duty, but as the scale grows you have a duty to make sure it does not have adverse effect.
If you don't like the duty, just make it die by building it crappy like VIM does.