×
Copy
Open
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Egor Tolstoy telegram.me/ twitter.com/ etolstoy igrekde
Slide 2
Slide 2 text
2
Slide 3
Slide 3 text
3
Slide 4
Slide 4 text
4
Slide 5
Slide 5 text
5
Slide 6
Slide 6 text
6
Slide 7
Slide 7 text
7 May the Code Review be with you
Slide 8
Slide 8 text
8 Goals Practices Ethics Code Review
Slide 9
Slide 9 text
9 Goals Practices Ethics Code Review
Slide 10
Slide 10 text
10 Knowledge Sharing in a Team
Slide 11
Slide 11 text
11
Slide 12
Slide 12 text
12
Slide 13
Slide 13 text
13
Slide 14
Slide 14 text
14
Slide 15
Slide 15 text
15 Shared Code Ownership
Slide 16
Slide 16 text
16 Code reuse
Slide 17
Slide 17 text
17 Error Diagnosis
Slide 18
Slide 18 text
18 Project Consistency
Slide 19
Slide 19 text
19 #1: Shared Code Ownership #2: Code reuse #3: Knowledge sharing in a team #4: Error diagnosis #5: Project consistency
Slide 20
Slide 20 text
20 Goal-Question-Metric 1. Identify the goal 2. List the questions 3. Determine the metrics
Slide 21
Slide 21 text
21 Goal «Increase code reuse»
Slide 22
Slide 22 text
22 Questions Are we using shared libraries in the code? Did we extract all visual styles? What is a level of code duplication?
Slide 23
Slide 23 text
23 Metrics Number of shared libraries Number of hardcoded styles Level of code duplication
Slide 24
Slide 24 text
24 The plan is completed by 60%
Slide 25
Slide 25 text
25 Goals Practices Ethics Code Review
Slide 26
Slide 26 text
26 Who conducts a review? When to conduct a review? How to conduct a review?
Slide 27
Slide 27 text
27 Who conducts a review? When to conduct a review? How to conduct a review?
Slide 28
Slide 28 text
28 Small team Several independent teams Large team Single developer
Slide 29
Slide 29 text
29
Slide 30
Slide 30 text
30 Author Reviewer 1 Reviewer 2 Reviewer 3 Review
Slide 31
Slide 31 text
Author Reviewer 1 Reviewer 2 Reviewer 3 Review
Slide 32
Slide 32 text
32
Slide 33
Slide 33 text
33 Team Lead Team 1 Team 2
Slide 34
Slide 34 text
Team Lead Team 1 Team 2
Slide 35
Slide 35 text
35 Team Lead Team 1 Team 2
Slide 36
Slide 36 text
36 Team Lead Team 1 Team 2
Slide 37
Slide 37 text
37
Slide 38
Slide 38 text
38 Author
Slide 39
Slide 39 text
39 Author
Slide 40
Slide 40 text
Author
Slide 41
Slide 41 text
41
Slide 42
Slide 42 text
42 Slack Community Peer Lab Other colleagues
Slide 43
Slide 43 text
43 Who conducts a review? When to conduct a review? How to conduct a review?
Slide 44
Slide 44 text
44
Slide 45
Slide 45 text
No content
Slide 46
Slide 46 text
46 Who conducts a review? When to conduct a review? How to conduct a review?
Slide 47
Slide 47 text
47
Slide 48
Slide 48 text
48 Conduct architecture reviews
Slide 49
Slide 49 text
49 0 50 100 150 200 0 500 1000 1500 2000
Slide 50
Slide 50 text
lines of code 0 50 100 150 200 0 500 1000 1500 2000 comments the more lines of code, the fewer comments
Slide 51
Slide 51 text
51 Conduct self assessment
Slide 52
Slide 52 text
52 Always fill review description
Slide 53
Slide 53 text
53 Use check lists and automate them
Slide 54
Slide 54 text
54 SwiftLint OCLint Infer Clang Analyzer Copy-Paste Detector
Slide 55
Slide 55 text
55 Code review check list automation
Slide 56
Slide 56 text
56 Commit messages style Commit content Commit messages spelling Linters Artifacts
Slide 57
Slide 57 text
57
Slide 58
Slide 58 text
58
Slide 59
Slide 59 text
59 Use code review tools
Slide 60
Slide 60 text
60 Upsource / JetBrains Crucible / Atlassian GitHub
Slide 61
Slide 61 text
61
Slide 62
Slide 62 text
62
Slide 63
Slide 63 text
63 Opens review in AppCode GitHub integration Powerful statistics Code Ownership Flexible notifications
Slide 64
Slide 64 text
64 Pre-commit review Snippet review Time spent for review Atlassian products integrations Flexible tags
Slide 65
Slide 65 text
65 Emoji reactions Powerful code ownership PR templates Lots of integrations Easy to setup
Slide 66
Slide 66 text
66
Slide 67
Slide 67 text
67 Goals Practices Ethics Code Review
Slide 68
Slide 68 text
68 Control your temper
Slide 69
Slide 69 text
69 Ask questions instead of making assumptions
Slide 70
Slide 70 text
70 Praise your teammates
Slide 71
Slide 71 text
71 Keep short and to the point
Slide 72
Slide 72 text
72 Criticise code not people
Slide 73
Slide 73 text
73 Learn to admit mistakes
Slide 74
Slide 74 text
74 Don't leave any comments unanswered
Slide 75
Slide 75 text
75 Avoid phrases with "my" or "yours"
Slide 76
Slide 76 text
76
Slide 77
Slide 77 text
77
Slide 78
Slide 78 text
78 Goals&Metrics
Slide 79
Slide 79 text
79 Goals&Metrics Team Organization
Slide 80
Slide 80 text
80 Goals&Metrics Team Organization Engineering Practices
Slide 81
Slide 81 text
81 Goals&Metrics Team Organization Engineering Practices Empathy
Slide 82
Slide 82 text
You and your team need code review twitter.com/igrekde