10 tips for effective code review
TRANSCRIPT
![Page 1: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/1.jpg)
TIM PETTERSEN • SENIOR DEVELOPER • ATLASSIAN • @KANNONBOY
Ten tips for effective code review
![Page 2: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/2.jpg)
1. One issue, one pull request
=
![Page 3: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/3.jpg)
1. One issue, one pull request
# what’s shipping? $ git branch --merged
# what’s left to ship? $ git branch --no-merged
![Page 4: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/4.jpg)
master
IN REVIEW DONEIN PROGRESSOPEN
Automatic Transitions
![Page 5: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/5.jpg)
feature/JIRA-30
master
IN REVIEW DONEIN PROGRESSOPEN
Branch created!
Automatic Transitions
![Page 6: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/6.jpg)
feature/JIRA-30
master
IN REVIEW DONEIN PROGRESSOPEN
Pull Request Created!
Automatic Transitions
![Page 7: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/7.jpg)
feature/JIRA-30
master
IN REVIEW DONEIN PROGRESSOPEN
Pull Request Merged!
Automatic Transitions
![Page 8: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/8.jpg)
2. Minimum TWO approvals before merge
3. Have 1.5x - 2.5x that number reviewers
![Page 9: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/9.jpg)
Fewer reviewers find more defects
0
7.5
15
22.5
30
1 2 3 4 5 6 7 8 9
Def
ects
/ k
LoC
Number of Reviewerssource: bit.ly/review-stats
![Page 10: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/10.jpg)
More reviewers spend less time
0
7
14
21
28
1 2 3 4 5 6
Min
utes
spe
nt /
revi
ewer
Number of Reviewerssource: bit.ly/review-stats
![Page 11: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/11.jpg)
4. Use blame to pick reviewers
![Page 12: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/12.jpg)
4. Use blame to pick reviewers
$ npm install -g git-guilt
# find blame delta for current branch $ git guilt `git merge-base master HEAD` HEAD
Alice Foo ++++++++++++++++++++++++(239) Bob Bar ++++++++ Eve Baz ------- Mira Ted ---------------- Bec Opal ------------------------(-159)
![Page 14: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/14.jpg)
5. @mention specialists
![Page 15: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/15.jpg)
6. Stuck in review?
Make Tuesday & Thursday inbox zero days
![Page 16: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/16.jpg)
betterCode;
7. Move comments into code
review comments
// comments // in code
![Page 17: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/17.jpg)
8. Build a team policy, as a team…
…and enforce it!
![Page 18: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/18.jpg)
9. Add screenshots for UI/UX changes
(gifs / videos are even better)
![Page 19: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/19.jpg)
9. Add screenshots for UI/UX changes
(gifs / videos are even better)
Monosnap GIPHY ScreenFlow
![Page 20: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/20.jpg)
Ask a programmer to review 10 lines of code, they'll find 10 issues. Ask them to do 500 lines and they'll say it looks good.@ G I R AY O Z I L
“”
10. Keep it concise
![Page 21: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/21.jpg)
10. Keep it concise Se
cond
s pe
r lin
e
Lines of Code
1 line per second
100 lines per second
source: bit.ly/review-stats
![Page 22: 10 Tips for Effective Code Review](https://reader031.vdocuments.mx/reader031/viewer/2022030306/58ceafff1a28abb2218b4ccd/html5/thumbnails/22.jpg)
Thank you!
TIM PETTERSEN • SENIOR DEVELOPER • ATLASSIAN • @KANNONBOY