D pullrequest review process rant
Steven Schveighoffer
schveiguy at yahoo.com
Thu May 9 11:06:03 PDT 2013
On Wed, 08 May 2013 10:56:28 -0400, Benjamin Thaut
<code at benjamin-thaut.de> wrote:
> I recently got very disappointed by the review process of a pull request
> I did on druntime:
> https://github.com/D-Programming-Language/druntime/pull/370
>
> This is how it went:
>
> 1) First everyone nitpicked about code formatting
> 2) I fixed all the nitpicks which was quite some work.
> 3) Pull request stalls for a month.
> 4) Even more nitpicks.
> 5) Even more work.
> 6) Reviewers actually start thinking about the problem behind the pull
> request.
> 7) Problem is not important enough, review request gets rejected.
> 8) All the work, including fixing nitpicks is wasted.
>
> So what I'm trying to say is, that maybe a pull request should first be
> analyzed if it is actually worth putting more work into it before
> starting with the nitpicks. I don't know if the review process is
> already defined somewhere, if not it might be worth doing so.
>
I first of all want to say, good for you to try helping the D community.
This is something we need a lot of. I also want to say that I am a
contributor to both Phobos and Druntime, and I also have been largely
unable to look at pull requests, shame on me. This is super-frustrating
for authors, and it's going to kill contributions if we don't fix it.
But I want to give a little bit more of an explanation here. I was not
involved in the pull request. But I can see the history. Some
observations I have:
1. nitpicking of style is EASY, it requires no thought or real time,
except to type the nit. This makes it something more likely to occur
before people have put any real thought into a pull request. The lesson
here should be to use the correct style so you don't have this problem.
I'm aware that we don't have a good definition, or good consistency, and
we need to do both of those.
2. The people who complained about style/formatting were NOT the same
people who questioned the utility of the pull request. This is HUGELY
important in understanding how this all went down.
For point 2, realize that people have their own schedules and own day-time
jobs. I literally ignored the newsgroups for 6 months because I did not
have time to look at D at all. From the point of view of the requester,
it is really important to understand that there is no real order to pull
requests to review. It's not like people can't review more than one pull
request, have to review them in a specific order, or have to review them
at all. And the goals and motivations for review can be different. We
don't all speak as one voice, so try to remember that.
This is something I think can be better managed with a collaboration tool
(like trello), or at least a status notification of who is assigned, who
is reviewing, what status is it in, etc. There is a large nebulous thing
called a review process that is right now defined loosely (AFAIK, the only
requirement is we have 2 people review each request), and pretty much
differs for every person. This needs to change. We need an official
review process, and a well-defined order of how things should be done.
Otherwise, the requester has no clue what is happening, and even other
reviewers have no idea what is happening. I will start a new thread on
this.
Sorry to read about this experience. I hope we can all do better.
-Steve
More information about the Digitalmars-d
mailing list