I don't know if this is the kind of elephant in the room that everyone knows about, or if it's more of an Emperor's New Clothes scenario based on collective delusion, but the Gerrit interface is really, really awful. It is a massive turn-off to new users and a significant barrier to entry. Even basic things like finding a project or posting a comment are frustratingly difficult.
As someone who has worked on Wikimedia projects since 2003 I am very familiar with the code, processes, history, ethos and community around MediaWiki development. Even so, I completely disengage when confronted with the Gerrit interface for code review. It was one of the main reasons that caused me to step away from active development, and even now - nearly half a decade later - nothing seems to have changed.
In 2012, Gerrit was evaluated. The two top criteria for a code review tool were:
- It must not be ugly
- It must be reasonably intuitive and user-friendly
Gerrit fails catastrophically on both of these criteria. To be honest, I have no way of telling how well it meets the more functional requirements, because I can never find the functionality I need.
For example, I was just asked to code-review a trivial improvement to an extension I wrote. Having followed the link in the e-mail, it took me a minute or so to find what might be the right button to add a comment (`it appears that you 'reply' to a commit, rather than commenting on it, which is a curious concept). For some reason this button is located in the middle of the header. I couldn't figure out how to actually see the changes in the commit (thankfully the diff was included in the e-mail). Having replied it took me another minute to figure out where my comment had actually gone (down the bottom, nowhere near the box you just interacted with, collapsed so you can't see it). In the process, I found another comment that might have affected what I wrote if I had managed to find it beforehand. I still have no idea how to 'approve' the commit, as requested.
I don't know if anyone here has used Github - you should check it out sometime. It'll blow your mind!
This post is a bit of a rant, but there is a serious point here - Gerrit needs replacing. It is not fit for purpose. It is a barrier against contributing and it is not likely to improve in future versions (it has demonstrably proved that over half a decade).
Discuss.