[Twisted-Python] Encouraging New Reviewers (was: Re: something about Github, as all threads about fostering community now start on that subject)

Glyph glyph at twistedmatrix.com
Mon Aug 26 22:07:06 MDT 2013


On Aug 26, 2013, at 3:37 PM, Richard Wall <m-lists at the-moon.net> wrote:

> 1. Encourage new code reviewers -- various people have said they'd do
>    code reviews but are unsure of the process or feel unqualified to
>    comment on other people's code. So:

I find that there are three major impediments to encouraging new reviewers.

Most significantly, new reviewers do not actually know which code they can review.  New reviewers should be reviewing only patches by people who already have commit; otherwise, new contributors end up getting their code reviewed by another new contributor who might not know the ins and outs of the process.  In the best case they will get an incomplete review; in the worst case, they will be told "looks okay to me, merge" and then get kicked out of the review queue with no way to land it.

I think that's a fine rule, but it has one gigantic problem: we don't have a list of committers anywhere.  Making this list - and, critically, associating VCS handle (svn.twistedmatrix.com login) with Trac handle, for those cases where it differs - would really help new contributors figure out whether there's 

Best of all would be a separate report, "Review Tickets Submitted By Committers", which would be things that external contributors could review.  Of course, lots of these will be very confusing-looking to someone new to the Twisted codebase, but it's easy enough for people to skip things they don't understand :).

New reviewers don't know that it's OK to make a mistake.  So first let me say: it's okay to make a mistake.  Not every review is perfect.  If you missed something significant, there are several filters to catch problematic reviews.

First, if you're really new, and you're reviewing something for a committer, then it's their responsibility to make sure your review looks thorough enough.  They can always put it back into review if they think you *might* have missed something.  This is not a failure!  This means you got some valuable practice and feedback.

Second, plenty of people watch trunk commits.  If a dodgy commit gets through, someone will generally notice and revert it.  If you feel like your review needs a second look, feel free to pipe up in #twisted-dev on IRC and say "would someone please have another look at this just to make sure".

Third, this is why we have the pre-release cycle: it's a final chance for everybody with Twisted applications to make sure that nothing broke anything.

We don't have any mentorship in place; even with a comprehensive checklist, it can be intimidating to try to do a code review.  Really, we should set up a mentorship program where mentors do code reviews with people watching.  Unfortunately, our existing reviewers are generally overtaxed as it is, so for now it falls to (brave) newbies to ask for mentoring help.

I feel like if someone could hack up a Trac report, or an extension to the high scores page, that addressed the first point, it would be a lot easier to deal with the second and third ones.  So, if anyone reading this would like to do that, I would be forever in  your debt.

-glyph

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://twistedmatrix.com/pipermail/twisted-python/attachments/20130826/9b1153f4/attachment.html>


More information about the Twisted-Python mailing list