At the request of a few folks, I've done some research on how the open
source project Launchpad does code review and deployment.
In Launchpad, all developers are also code reviewers for about a day a
week. All developers write "merge proposals" and attach them to their
branches, and their colleagues review those branches and proposals
within a day. Code reviewing is not primarily a gate to keep bugs out of
code, but a social step, to get a second set of eyes on code, and to
spread knowledge around. After code review, and automated testing on an
EC2 instance, the developer lands the branch in trunk, a developer QAs
it, and it gets deployed onto production in a matter of days or hours.
A few key differences from MediaWiki:
* No volunteer reviewers, small volunteer contributor community
* Review trainees have already seen what a good code review looks
like, perhaps need less training
* Started with backlog of less than a week's worth of commits
I've stuck a more detailed description here:
http://www.mediawiki.org/wiki/User:Sumanah/Launchpad-dev-process
in case people want to get some ideas before the code review discussion
tomorrow:
http://www.mediawiki.org/wiki/Code_review_management/July_2011_training
--
Sumana Harihareswara
Volunteer Development Coordinator
Wikimedia Foundation