The Lazy Coder Series: Why Modern Code Review Tools Still Suck đ¤Ź
The short answer is that there is no good reason. Someone should build an opinionated, streamlined and remote-work first code review tool thatâs better than GitHubâs native code review and doesnât require two weeks worth of integration time like Phabricator.
Letâs explore what really sucks about modern code reviews, why itâs in this state and what can we do about it đ.
What sucks about modern code reviewâŚ
A good software engineer breaks down features into smaller commits which are easier to review, easier to understand and easier to trace once itâs merged in.
Letâs say we are building an invites feature: we could split this by (1) adding an invite button, (2) presenting a share sheet and (3) adding analytics for logging.
In GitHub, we would create new branch invites_feature
, push the new branch to remote, create a pull request with updates, etc. and sit and wait for our reviewer to come and read through the code.
The problem starts unfolding here; GitHubâs default code review is through the âFilesâ tab which shows all the edits, all at once. This creates a review process that quickly turns into 500 line reviews đ¤Śââď¸ meaning more bugs and more wasted â° & đ°