awesome-code-review
Code review resource
A curated list of resources and research on code review processes and best practices for improving software development.
An "Awesome" list of code review resources - articles, papers, tools, etc
4k stars
101 watching
331 forks
last commit: 2 months ago
Linked from 3 awesome lists
awesomeawesome-listcode-reviewcode-reviews
Awesome Code Review / Academic Papers | |||
An experiment to assess the cost-benefits of code inspections in large scale software development (Porter, Siy, Toman & Votta, 1997) | Early paper that tested a range of then-current review techniques including multi-stage review and code-review-via-meeting that found you can get most of the benefit in an offline, single pass, with two reviewers | ||
Anywhere, anytime code inspections: using the Web to remove inspection bottlenecks in large-scale software development (Perpich, Perry, Porter, Votta & Wade, 1997) | One day in the far future the best way to review code will be on the world wide web | ||
Characteristics of Useful Code Reviews: An Empirical Study at Microsoft (Bosu, Greiler, Bird, 2015) | This paper reports the findings of a large scale qualitative and quantitative study focusing on understanding which code review comments are considered useful by developers | ||
Code Reviewing in the Trenches: Understanding Challenges, Best Practices, and Tool Needs (MacLeod, Greiler, Storey, Bird, Czerwonka, 2018) | A large scale study of over 900 Microsoft developers to understand their code review processes, their motivations to do code reviews, and which pitfalls and best practices they encounter | ||
Design and Code Inspections to Reduce Errors in Program Development (Fagan, 2002) | Using a more formal process, particularly with defined roles for each participant and drive a big increase in error detection during review | ||
Helping Developers Help Themselves: Automatic Decomposition of Code Review Changes (Barnett et al. 2015) | ( ) Research into automatically splitting big diffs into smaller diffs leading to better reviews | ||
Modern Code Review: A Case Study at Google | A study that shows how code reviews work at Google | ||
Work Practices and Challenges in Pull-Based Development (Gousios et al. 2015) | ( ) Field study of how GitHub pull requests are used in the wild | ||
Awesome Code Review / Articles | |||
8 Tips for Great Code Reviews | A few basic rules for a better code review process | ||
A Better Code Review | Decent set of patterns and anti-patterns for code reviews | ||
A Zen Manifesto for Effective Code Reviews | Practical tips for the submitter and the reviewer to make effective code reviews | ||
Brian Guthrie's Feature Branching Rant | Twitter thread on the pros and cons of GitHub's open source first model with regards to "in-company" code review practice | ||
Building an Inclusive Code Review Culture | Guidelines to help ensure a collaborative and learning culture | ||
Code Review: Create The Culture, Learn The Best Practices | Code review tips and best practices from tech leaders | ||
Code Review Etiquette | A few tips helping with positive engagement on code review | ||
Code Review Guidelines for Humans | Some guidelines for giving and getting code reviews | ||
Code Reviews: Just Do It | Seminal post advocating for peer review of software back in 2006 | ||
Code Reviews at Google are lightweight and fast | Details on how code review best practices and processes work at Google | ||
Code Review Review is the Manager's Job | Why management should ensure code review is done and done well | ||
Comments During Code Reviews | Writing good comments during code reviews | ||
Designing Awesome Code Reviews | Principles for actively designing a code review process | ||
Effective Code Reviews Without the Pain | Another 2006 classic on how to effectively perform a code review | ||
Feedback Ladders: How We Encode Code Reviews at Netlify | Helpful framwork for reviewers to classify how actionable specific pieces of review feedback are | ||
How Code Reviews work at Microsoft | A in-depth analysis on how the code review process looks like at Microsoft | ||
How I review code | More personal advice on how to best review a pull request from an engineer at Tumblr | ||
How to do a code review | A thorough description of how Google engineers do code reviews, from the Google's Engineering Practices documentation | ||
How to Do Code Reviews Like a Human | Techniques that treat the code review as not only a technical process but a social one as well | ||
Modern Code Reviews | Arguably belongs in academic paper, but it's a website giving an overview of evidence on code review by facet/context. Links off to a bunch of papers | ||
On Code Review | Short article about tooling and personal elements of code review, from an ex-Facebook engineer | ||
Pull Requests: How to Get and Give Good Feedback | Advice for both sides of the code review process, the reviewer and the reviewee | ||
Ship Small Diffs | Why it's better to review small changes rather than large ones | ||
Stacked Pull Requests: Keeping GitHub Diffs Small | A step-by-step process to split big PRs and increase review engagement | ||
The Art of Humanizing Pull Requests | Emoji rich guide to the human side of code review via pull requests | ||
Towards Productive Technical Discussions | Tactical questions and actions to push code review discussions into a more productive territory | ||
Unlearning Toxic Behaviors in a Code Review Culture | A how-to guide for pull requests via how-not-too | ||
Why I changed the way I think about Code Quality | Why code quality is about more than just the code | ||
Awesome Code Review / Books | |||
Best Kept Secrets of Peer Code Review | Older compilation of 10 essays on the practice of code reviews. Some repetition due to different authors covering the same territory | ||
Handbook of Walkthroughs, Inspections, and Technical Reviews | Older book covering more formal walkthroughs but covers politics and group dynamics in review well | ||
Peer Reviews in Software: A Practical Guide | A practical guide to formal code inspections as a code review practice | ||
Software Inspection: An Industry Best Practice | Compendium of papers on code review practice | ||
Ultimate Guide to Code Reviews | Codacy sponsored ebook of code review practices based on developer survey | ||
What to Look for in a Code Review | JetBrains sponsored ebook of how to spot coding anti-patterns during review | ||
Awesome Code Review / Talks and Podcasts | |||
Code Reviews: Honesty, Kindness, Inspiration: Pick Three - Jacob Stoebel RubyConf 2017 | How to do effective code review while remaining kind to the original author | ||
Goldilocks and the Three Code Reviews - Vaidehi Joshi RedDot Ruby Conf 2017 | Finding just the right amount of code review by focussing on what is affecting | ||
Implementing a Strong Code-Review Culture - Derek Prior Railsconf 2015 | How to instill a healthy code review culture in a team | ||
Michaela Greiler on Code Reviews - SE Radio 2020 | Michaela Greiler discusses the importance of code reviews and how to conduct them on the Software Engineering Radio podcast | ||
Awesome Code Review / Tools | |||
Axolo | Github/GitLab Slack integration. Create one ephemeral channel per pull request/ merge request | ||
Crucible | Atlassian's on-premise code review tool | ||
Gerrit | Open source git code review tool originating out of Google | ||
GitHub | Git hosting and pioneer of the "Pull Request" | ||
Gitpod | Code review pull requests in a full IDE within your browser | ||
LGTM | Automated Git code review for GitHub and Bitbucket pull requests for finding security vulnerabilities and code quality issues | ||
Phabricator | Open source git/mercurial/svn code review tool originating out of Facebook | ||
PullNotifier | Improve pull request visibility and overall productivity for dev teams using Github and Slack | ||
PullRequest | Code review as a service for GitHub pull requests | ||
Reviewable | Code review tool built on top of GitHub pull requests | ||
Review Board | Open source review tool that is SCM/platform neutral | ||
Sider | Automated code review service for GitHub | ||
Softagram | Automated code change visualization (and dependency analytics) for pull requests, merge requests (GitLab) and patch sets (Gerrit) | ||
SonarCloud | Detect code smells, bugs and vulnerabilities in Azure DevOps, Bitbucket and GitHub repositories | ||
Upsource | JetBrain's on-premise git/mercurial/perforce/svn code review tool | ||
Viezly | Code review service with pull request visualization and enhanced navigation between changes |