Hi Manuel,

Since we spoke I've been working with a contributor who submitted a
somewhat non-trivial change [1] via pull request. This was my first
non-trivial code review with on GitHub with myself in the role of
reviewer. By GHC standards the patch is neither large nor subtle; it's
largely just me guiding a new contributor through the codebase.

I'll admit that after this experience I'm a bit less rosy on GitHub's
code review functionality than I was on Monday. I thought it might be
helpful (for me, if not also for you) to summarize my impressions:

 * Commenting works well although quoting bits of comments is a bit
   inconvenient.

 * The lack of an overview of the diff (like Differential's "file tree"
   pane) makes reviewing patches of moderate-to-large size rather tricky

 * The treatment of rebased branches is truly awful. The previous
   commits appear to be totally gone and cannot be viewed. This is
   in contrast to Phabricator, where you can view each revision of
   a differential, which in the past has been very helpful when we
   are trying to reconstruct the reasoning behind a change.

 * While the discussion on pre-rebase commits is preserved, it is
   impossible to view it in the context in which it was made since the
   patches themselves are gone.

 * The "Conversation" interface gets rather hard to follow after a short
   while since there are free-standing comments, new commit
   notifications, and inline code comments in a low-contrast,
   low-whitespace wall of boxes.

Some of these issues above may be just a function of my unfamiliarity
with the interface. Many of the other issues could no doubt be worked
around with a combination of Greasemonkey and custom CSS. That being
said, the fact that this may be necessary is a bit unfortunate and the
more fundamental issues (inability to view previously revisions,
treatment of rebases) can't be worked around.

This is a shame since, as I related on Monday, I think the arcanist
workflow introduces a lot of friction. Relying on Git, a tool nearly all
our users are familiar with, for patch management makes much more sense
IMHO. However, I'll admit I was hoping that GitHub's code review
experience was better than it is.

Perhaps reviewable.io or some alternative would be better?

Anyways, these are just my two-pence. I'm still happy to consider moving
and am not ruling out that on the whole it still may be the right thing
to do; however, I was just a bit surprised by some of the issues that I
encountered and thought it would only be fair to let you know.

Cheers,

- Ben


[1] https://github.com/ghc/ghc/pull/76/files
-------------------- End of forwarded message --------------------
