Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Code Reviews
Search
Janos Gyerik
October 14, 2015
Programming
0
150
Code Reviews
Just Do It!
Janos Gyerik
October 14, 2015
Tweet
Share
More Decks by Janos Gyerik
See All by Janos Gyerik
Capture The Flag at SonarSource 2019
janosgyerik
1
44
Keyboard shortcuts
janosgyerik
0
140
Analyze your changeset in a branch before git push using SonarLint + Git hooks; Round #2
janosgyerik
0
650
Analyze your changeset in a branch before git push using SonarLint + Git hooks
janosgyerik
0
360
Unwatch GitHub repos
janosgyerik
0
320
Playing with Yahoo! Pipes
janosgyerik
0
260
Cool features of GitHub
janosgyerik
0
1.3k
Time-saving tricks on the command line
janosgyerik
1
4.3k
Other Decks in Programming
See All in Programming
WebRTC と Rust と8K 60fps
tnoho
2
1.4k
React Native New Architecture 移行実践報告
taminif
1
120
251126 TestState APIってなんだっけ?Step Functionsテストどう変わる?
east_takumi
0
290
CSC305 Lecture 14
javiergs
PRO
0
330
How Software Deployment tools have changed in the past 20 years
geshan
0
26k
Micro Frontendsで築いた 共通基盤と運用の試行錯誤 / Building a Shared Platform with Micro Frontends: Operational Learnings
kyntk
1
1.7k
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
5
2.8k
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
24
19k
乱雑なコードの整理から学ぶ設計の初歩
masuda220
PRO
32
15k
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
1
1.2k
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
7
3.3k
connect-python: convenient protobuf RPC for Python
anuraaga
0
320
Featured
See All Featured
Writing Fast Ruby
sferik
630
62k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Docker and Python
trallard
46
3.7k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Thoughts on Productivity
jonyablonski
73
4.9k
Context Engineering - Making Every Token Count
addyosmani
9
440
RailsConf 2023
tenderlove
30
1.3k
Transcript
code.reviews Janos Gyerik correct clean efficient tested efficient efficient clean
clean tested tested correct correct correct tested correc orrect correc tested efficient clean
2 what is it?
3 commit commit commit review commit commit review commit accept
commit commit commit NOT code reviewed code reviewed
4 why do it?
5 UCXGVKOG catch early catch early catch early bugs bad
patterns ugliness
6
7 peer review peer pressure
8 anything that gets reviewed gets better
9 quality time savings cost savings FACT
10 correct readable efficient tested buggy messy crappy untested NOT
code reviewed code reviewed
11 information sharing NO MORE bottleneck developers
12
13 why/when NOT do it?
14 big bang development too hard to control should be
the exception, not the norm! code reviews are not practical when…
15 without supporting tools tools help doing code reviews efficiently
don’t waste your time, get them and use them! code reviews are not practical…
16 what’s required? disciplined commits
17 incremental changes small and stable logical steps at all
levels
18 one feature one purpose one branch feature
19 short-lived max 3 days feature
20 (example good branch)
21 (example bad branch)
22 one commit one logical change
23 one good commit == stable build; related changes; no
garbage; small; good comment
24
25 (example good commit)
26 example bad commit with many changes)
27 (example bad commit with garbage)
28 how to do it?
29 git fetch origin master git checkout -b feature-x origin/ma
# work work work git commit git commit git push origin feature-x # create merge request
30 Create Merge Request create; don’t assign! self-review: any WTFs?
ready? assign!
31 peer review peer pressure
32 what to review?
33 readable is it clear? easy to read? easy to
understand? FACT Code is read far more often than written!
34 correct is the logic sane? does it work? bug
suspects? -> ask!
35 efficient any performance concerns? -> ask!
36 tested unit tests included? unit test opportunities?
37 good practices Code Complete Effective Java Sonar/Findbugs/… codereview.stackexchange.com
38 how bad can it be?
39 how in-depth? •not too much •not too little •just
right •DO IT FAST
40 attitude?
41 a code review is… NOT about the developer it
is about the code
42 don’t just say something is “wrong” suggest a better
way
43 the focus is.. NOT on problems it is on
solutions
44 perfect code? don’t seek perfect seek good enough better
is good enough don’t be a pain in the ass be flexible be constructive
45
46 mistakes… it’s OK to make mistakes it’s NOT OK
to not learn from them
47