Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> if I see you approaching a door, I am under no obligation to open it just because I'm physically able to, but if I open a door for you, I'd better hold it until you're finished walking through, or I'm a jerk. By holding the door open, I've made an implicit promise that I'm not going to close it on you.

This reminds me of an incident years ago. I was on a city bus, very full of people, and we were just about to leave a stop. There's a woman maybe 150 feet away running towards the bus. The driver sees her running and re-opens the door, waiting. Inconvenience to all of us on the bus, but hey, she's running.

The woman, seeing the bus has waited for her, stops running and starts slowly walking instead.

Driver sighs, closes the door, drives away.

I'm not sure what the moral lesson I take from it is, but mainly "if I go out of my way to help you, don't take advantage of my generosity". Maybe that partially applies to situations like this one. Or maybe just "don't annoy transit operators". That's a good one too.



I think that's fair - especially the part about not taking advantage of generosity. But I don't think that's what happened here. Someone reported a soundness bug. Someone else (IIRC) posted a patch fixing it by switching from a custom Cell type to the standard library one, which is what the maintainer called uncreative and boring. Fixing a soundness bug is a perfectly reasonable, non-advantage-taking thing to do in a PR.

(I agree that in general there is a problem with open-source users feeling entitled to support/features and maintainers not feeling comfortable saying no, but that doesn't seem to be the type of incident that triggered this, and more generally it is difficult for me to see how a patch would count as that - at least a patch that isn't "please maintain this pile of new code," which this one wasn't.)


> Someone reported a soundness bug.

Your description starts off on the wrong foot because a) there was no bug, and b) although the library used unsafe code extensively, its maintainer argued that was not a problem and that didn't meant the code was unsafe.

So in the end we only have issues being reported by opinionated users trying to force their personal opinions on a project maintainer, who due to the content and tone of said issue reporters decided not to accept the reports or patches. Once some bad apples in the community started to increase the unpleasantness of the whole experience, the maintainer said enough is enough.


In this case, the maintainer made an active and conscious decision to do something that did nothing but hurt everyone using the project. There are no passengers who might benefit here, sadly.


Since this seems to be a constant point in this thread but I don't see it: How exactly did that person hurt anybody? They maintained this project for 3(?) years and the code is readily available elsewhere on github now. If there's really that many people being inconvenienced by that, surely somebody else will take over that fork instead.


This person killed the momentum that this project had, much of which was only partly their work. Forks fracture a project’s community and pit the pieces against each other: occasionally they work out, but often they all just fizzle into nothingness. Keeping a project together has value. (Also, note that associated GitHub metadata such as issues has been wiped.)


Reading the description in the root of that project, the community and user base might just as well be attributed to "killing the momentum" if you like (if that's even the case, this seemed to have happened literally hours ago). The issues seem to be intact on the maintainers personal copy of that repository.

I mean, yes, keeping a project together has value, I just don't see where the assumption here comes from that this maintainer has to do that indefinitely or even has to be involved in actively searching for successors in a community they don't feel good about. The maintainer even states being open to suggestions. If nobody steps up, momentum can't have been that great, if somebody does, a fork will live on. That's still in the realm of mild inconvenience, other projects have survived much larger controversy.

edit: the frontpage is currently topped by a more balanced write-up by Steve Klabnik that weighs up, among others, both of these views https://news.ycombinator.com/item?id=22075076


> I just don't see where the assumption here comes from that this maintainer has to do that indefinitely or even has to be involved in actively searching for successors in a community they don't feel good about

Of course they don’t. But I don’t see why they couldn’t have made an issue along the lines of “I’m stepping down, I’d like someone else to take over the project”. (Still reading through the other writeup.)


What do you mean wiped? It was moved to personal account https://github.com/fafhrd91/actix-web.


I was under the impression that that repository was probably going to be deleted at some point.


I think you are confused. The maintainer made an active and conscious decision to protect himself. That's clearly not "nothing", and a perfectly legitimate reason.


I think there are a number of ways the maintainer could have protected themselves without making it actively worse for the community. I would even predict that this decision makes them likely to get even more abuse, though of course I would never condone that.


> I think there are a number of ways the maintainer could have protected themselves without making it actively worse for the community.

If said community was the one causing the problem, what would be the point of that?


The community is not a monolithic entity.


If there are bad apples in the community then the good apples need to speak up and reject them.

Otherwise the bad apples are the apples.


They're referring to the maintainer's conscious decision to reject a patch made in good faith, that fixed the issues that had been pointed out. It was rejected with the statement "this is boring." Do you think this behaviour is justifiable?

> I think you are confused

You sure?


> They're referring to the maintainer's conscious decision to reject a patch made in good faith, that fixed the issues that had been pointed out.

You're misrepresenting the problem. There was never a bug or an issue, only a bunch of opinionated and vocal users who thought that bullying a maintainer is an acceptable way to get him to accept their patches. The maintainer rejected the bullies' actions and in turn the bullies ramped up their attacks, which ultimately convinced the maintainer that closing up shop is the best way to stop having to deal with these bullies.


> You're misrepresenting the problem. There was never a bug or an issue

The story originated from the author of this article [0] posting a bug report issue [1].

Why are you accusing others of misrepresenting the problem while doing so yourself?

0: https://medium.com/@shnatsel/smoke-testing-rust-http-clients...

1: https://archive.is/BEqfM


Please stick with the facts and thus with primary sources. Part of the blame of this shitstorm lies in those who insist in misrepresenting the problem with bullshit blog posts and "he said she said" nonsense.

https://www.reddit.com/r/rust/comments/epszt7/actixnet_unsou...

Unfortunately this is not the first time Rust soundness/unsafe zealots are aggressive and create shitstorms in the community.


I linked to an archive of the GitHub issue in question and the reporter's own blog article about it. Are those not primary sources? And you've linked to Reddit?


It is if your the one maintaining it. It's not like people are paying the person to accept their patches. If they want their patch applied they can fork the project. The maintainer isn't a slave to others.

Under what obligation does the maintainer NEED to accept any patch? It's his project he built. He can build or destroy his work as he sees fit. If you have an issue fork it. This is how things like libreoffice, mariadb, and countless other projects have come to exist.


Yeah, people who aren't in perfect running form don't deserve help.


Well put!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: