Top Banner
TIM PETTERSEN SENIOR DEVELOPER ATLASSIAN @KANNONBOY Ten tips for effective code review
22

10 Tips for Effective Code Review

Mar 19, 2017

Download

Technology

Atlassian
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 10 Tips for Effective Code Review

TIM PETTERSEN • SENIOR DEVELOPER • ATLASSIAN • @KANNONBOY

Ten tips for effective code review

Page 2: 10 Tips for Effective Code Review

1. One issue, one pull request

=

Page 3: 10 Tips for Effective Code Review

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

master

IN REVIEW DONEIN PROGRESSOPEN

Automatic Transitions

Page 5: 10 Tips for Effective Code Review

feature/JIRA-30

master

IN REVIEW DONEIN PROGRESSOPEN

Branch created!

Automatic Transitions

Page 6: 10 Tips for Effective Code Review

feature/JIRA-30

master

IN REVIEW DONEIN PROGRESSOPEN

Pull Request Created!

Automatic Transitions

Page 7: 10 Tips for Effective Code Review

feature/JIRA-30

master

IN REVIEW DONEIN PROGRESSOPEN

Pull Request Merged!

Automatic Transitions

Page 8: 10 Tips for Effective Code Review

2. Minimum TWO approvals before merge

3. Have 1.5x - 2.5x that number reviewers

Page 9: 10 Tips for Effective Code Review

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

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

4. Use blame to pick reviewers

Page 12: 10 Tips for Effective Code Review

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 13: 10 Tips for Effective Code Review

4. Use blame to pick reviewers

bit.ly/suggest-reviewers

Page 14: 10 Tips for Effective Code Review

5. @mention specialists

Page 15: 10 Tips for Effective Code Review

6. Stuck in review?

Make Tuesday & Thursday inbox zero days

Page 16: 10 Tips for Effective Code Review

betterCode;

7. Move comments into code

review comments

// comments // in code

Page 17: 10 Tips for Effective Code Review

8. Build a team policy, as a team…

…and enforce it!

Page 18: 10 Tips for Effective Code Review

9. Add screenshots for UI/UX changes

(gifs / videos are even better)

Page 19: 10 Tips for Effective Code Review

9. Add screenshots for UI/UX changes

(gifs / videos are even better)

Monosnap GIPHY ScreenFlow

Page 20: 10 Tips for Effective Code Review

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

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

Thank you!

TIM PETTERSEN • SENIOR DEVELOPER • ATLASSIAN • @KANNONBOY