Felix Geisendörfer is a Go and PostgreSQL engineer who writes about open source maintenance, profiling, state machines and TCP details.
HN links it for The Pull Request Hack, about handing commit access to contributors. Commenters share similar maintainer handover stories and discuss the practice.
> PS. I was truly impressed with Richard Hipp fixing each and every of these cases within a couple of hours of sending in a report.
I can't stress how quickly this will turn me from "it's a good library" to "it's an amazing library". (Or prevent me from tacking on, "but it's kinda abandoned".) I've never sent patches SQLite's way, but I've sent patches to other open source projects, and whole quarters go by with nary a peep. This is not only frustrating, but often it feels like it pushes more work onto me than just accepting an even potentially buggy patch would cause. If I'm sending a patch, there's a good chance I'm using it myself, and thus your library has become a special-cased wart in my deployment process that I'd very much like to kill. (E.g., since I work in Python: I can't `pip install package==version` anymore; it needs to be on Github or something; thankfully pip makes this fairly easy; patches to things that some other package has decided to bundle rather than just use the package-manager approved version of are especially painful.)
While I'm not sure I'd go this far, the lament reminds me of http://felixge.de/2013/03/11/the-pull-request-hack.html
> I even considered not submitting this comment, for fear of anyone misunderstanding or taking this the wrong way, and the inevitable "open source is a responsibility" responses.
I'm glad that you did, thank you for taking the time to respond.
> The thing is, you're actually implying more than you're saying. What you really mean is, "You could always have the courtesy to acknowledge the bug or PR I’ve submitted as soon as I submit it."
While I've definitely been guilty of impatience in the past, now I try to measure the response against some kind of "OSS time", which is a lot more forgiving. I appreciate that people are likely to be busy, or away with their kids in Hawaii for the past two weeks.
Having said that...
> The maintainer may just be really busy this month. Or maybe they've been really busy for 6 months.
I think one month is a bit long to have to wait for a response. 6 months: most certainly too long. In those cases, the "pull request hack" [1] may be the way forward.
[1] http://felixge.de/2013/03/11/the-pull-request-hack.html
If the OP would consider becoming a maintainer of a project they contribute to, and then follow their own advice, they do have some warrant to their complaints, otherwise not so much, for the reasons you state.
I got a substantial pull request to an open source project of mine [1] that I don't have much time for, and followed the "Pull Request Hack" [2] and made the committer a maintainer. My GitHub notifications for that project now follows this pattern: "Random user: Hi, please merge my changes", "Maintainer: Thanks for your contribution, I made some changes and merge it in!". That's pretty fulfilling.
1: https://github.com/jacobrask/node-upnp-device
2: http://felixge.de/2013/03/11/the-pull-request-hack.html (although this was before I read the article)
Apple | Backend (Go, PostgreSQL) engineer | Shanghai, China | ONSITE | Full Time
We're a small team that is having a huge impact on the mass production of Apple's products.
If you're an expert in Go or PostgreSQL (ideally both), we'd love to talk to you. But perhaps even more importantly, you should be a good communicator and fast learner. Relocation is possible. My e-mail is in my profile.
You might also enjoy enjoy this recent blog post of mine that gives you a small glimpse on the kind of things my team is up to: http://felixge.de/2017/07/27/implementing-state-machines-in-postgresql.html (The example is not the problem domain we're working in, it was made up for the post)
"Since the early days of node/npm, sharing commit access/publish rights, with other contributors was a widespread community practice. https://felixge.de/2013/03/11/the-pull-request-hack.html open source is driven by sharing! It's great!"
Yes, but, quoting from his post he cites:
"So should you really do this for all pull requests? Probably not. While I've given a large amount of users access to various projects of mine, I'm still looking for:
"Github profile: Does this user stand to lose a reputation by doing something stupid?
"Skill: Based on the patch, do I think the user could be a good developer?
"Usefulness: Is this patch solving a valid problem?"
I see that you already have 25 contributors, so you might wanna try filing an issue asking for someone to take over. A very good advice I've gotten is to grant commit access to anyone who files a PR that gets merged[0].
The best person to take over is probably in this list[1].
[0]: http://felixge.de/2013/03/11/the-pull-request-hack.html
[1]: https://github.com/eneifert/ZendeskApi_v2/graphs/contributors