Live data from Hacker News

Probability of acceptance of pull requests

paulmillr.com

31–40 of 57 posts

Re: Probability of acceptance of pull requests

#31
Vaguely related anecdote:

I had a really bad experience trying to use node.js for a project. Eventually I figured out that the module I needed was just broken, so I decided to at least update the documentation. As it turned out, not only was it not documented how to update the documentation (...) but I had to go back and forth on undocumented style guide rules (for documentation that gets displayed in the browser anyway!) and then sign the CLA, all to update a single line of text in the docs to say 'don't use this module, it's broken'. It literally would have taken less time for them to make the change themselves.

This soured me even more on node.js than actually using it had. It's bizarre that project maintainers would actively put so many walls between themselves and valuable (or not-valuable, for that matter) code contributions.

I can only assume that the legal downside to not having a CLA signed for every single-line commit is enormous. Are there previous court cases in the US where not having a CLA got someone destroyed?

Re: Probability of acceptance of pull requests

#32

Is it possible to switch the axis and set the maxima at 100%? I have to re-calibrate for each graph, or 30% almost looks like 50%. And it's hard to read the rotated labels, but the percent on the horizontal axis would not need to be rotated.

As for maxima — yeah, definitely. Done.

Great.

Just to expand on the switching of axis. It's harder to compare data between graphs, but upon second inspection, it appears the colors from the first graph are not used in the secondary graphs.

Second, trying to get to the projects in the first graph, it's easier to exit the graph from the bottom. Otherwise, short bars (eg. node) are hard to "select" for the "Current" line, and in that case, I have to make a longer trip around the graph to get to the link. Maybe link the labels? Move the "Current" line underneath?

I enjoyed it nonetheless. If you're considering expanding or having a follow-up piece, I'd enjoy combining the three graphs with the format / filtering at http://www.techempower.com/benchmarks/.

Re: Probability of acceptance of pull requests

#33
post #17

Earlier quoted context omitted.

It's so much better to send these sorts of proposal via e-mail. It's much easier to review the patches via e-mail, and everyone on the development community can make suggestions. Even so, it's not uncommon for patches to require three or four versions, and not just by first-time contributors. There are patches written by folks who have been working on ext4 for many years which still require three or four or more revi…

Does this hold true for you on smaller projects too? Ruby gems, for instance...? I personally strongly prefer to see a diff via Github, especially for smaller features on a small library / gem -- although on larger & more popular projects (lots of pull requests) it definitely makes some sense that you'd prefer to have a 'heads up' of sorts via email first to confirm that it's even a desirable feature. Really just won…

I think email is a better forum if everyone involved is disciplined about factoring commits well, writing good messages, using an email client that formats properly, and is fluent with the tools. PRs are more intuitive, more tolerant of workflows, and more accessible to newcomers. At this point, nothing matches the archival quality of mailing lists. When PRs are rebased/refactored as a result of reviews, the original versions generally become orphaned, so the discussion vanishes.

When there are multiple independent discussions spawned from different parts of single patch, as is common in less disciplined communities, the granularity of email is too coarse, and threaded line-comments are much better. On the other hand, patches on mailing lists frequently spin off into higher level design/philosophy discussions, which isn't appropriate in line comments.

Re: Probability of acceptance of pull requests

#34

I can't speak for the other projects, but the data is completely wrong and misleading for jQuery. It looks like this code only counts a pull request as merged if it's landed with a merge commit. It's much more common for us to touch up the pull request (for example, fixing small style or commit message issues), then rebase, possibly squash some commits, and land via a fast-forward commit. So this is "accepted": https…

The hosting sites need to start providing a way for a maintainer to update or supersede a PR, as well as a way to track prior versions of commits in a PR after the PR has been updated post-review.

Re: Probability of acceptance of pull requests

#35
post #22

What would increase the accept rate greatly would be if there was a function to accept-pull-into-new-branch, which creates a new branch and applies. The maintainer can then apply the necessary changes/corrections/documentation updates, get the branch tested, then merge it back if all goes OK.

    $ git fetch url-or-remote their-branch-name:my/better-branch-name
    $ git checkout my/better-branch-name
    $ hack, commit, etc

Re: Probability of acceptance of pull requests

#36
Very great analysis! I remember reading an article about an experiment someone took in bringing up the contribution in his project - And that was to add users as collaborators any time someone made a successful contribution.

I've been doing this with all of my projects so far (Granted, I do not lead any interesting projects) but a small one I re-did recently has already gotten additional activity from one contributor since I added him on.

Re: Probability of acceptance of pull requests

#37
post #10

The curious question is why certain projects have significantly lower pull-rates; I doubt the quality of the pull requests vary that widely across projects. Is it that project leadership has a clear vision for a product and feel pull requests are a distraction? If so, share the vision and enlist willing developers to help achieve that vision. Is it that project leadership has a high-standard for the codebase? If so,…

This is a complicated problem, and one that I'm excited to think could be improved in the coming years as Github et al have the time and resources to invest in it. I have a few thoughts on the topic and on your comments: 1. I actually DO think that the quality of pull requests varies widely from project to project. You dismiss this in your first sentence but I don't think you should. I think there are a lot of reason…

> Some projects attract more inexperienced developers than others.

Fair.

> In many ways community submitted pull requests are a "million monkeys at a million typewriters."

I strongly disagree with this assertion. To argue that community cannot be lead or directed toward a common goal is very pessimistic. Sure, Joe in Idaho has a specific itch, but there's a good chance there is an opportunity to capture Joe's enthusiasm and willingness to do work on the project by working with him instead of treating him like a code-monkey at a keyboard. Community relations is hard because dealing with people is hard.

> 1. Tools that help maintainers cultivate the submitters talent pool on their project.

Yes, I agree that this is someplace where some tools would help tremendously.

> Github can help me discover what is happening to that function elsewhere.

Great idea. I'd love to see a "related diffs" tool for a given piece of code.

> So many of us are code-first, conversation-later types and that constantly conflicts with the social nature of our job.

I totally agree. Ultimately, tools will only get us so far; people skills must fill in the rest. Making "Joe" feel welcome and a part of the creative process requires measures of patience, kindness, gentleness and mentorship.

Re: Probability of acceptance of pull requests

#39
It would also be interesting to track the distribution of those pull-requests, with respect to user who submitted it. With the current setup, projects that are only willing to accept pull-requests from known committers, and those who are more open to new comers look identical.
Post reply on HN