code reviews - developer conference 2013
DESCRIPTION
Vortrag auf der Developer conference 2013 über Code Reviews am 08.November 2013TRANSCRIPT
![Page 1: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/1.jpg)
ENTER
Code Peer Reviews
Leave your ego at the door
08.11.2013 Frank Sons – Developer Conference 2013
![Page 2: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/2.jpg)
Who am I?
Software Quality Engineer
Doing PHP/Java/etc. for ~15 years
PHP Usergroup Hamburg
Twitter: @FrankS
Still learning
208.11.2013 Frank Sons – Developer Conference 2013
![Page 3: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/3.jpg)
So, what‘s this about?
Introducing Reviews
Collective Coder Ownership
The right review for the right job
Beware the dragons!
308.11.2013 Frank Sons – Developer Conference 2013
![Page 4: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/4.jpg)
A short introduction to reviews
Forget about the code for a moment…
408.11.2013 Frank Sons – Developer Conference 2013
![Page 5: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/5.jpg)
What‘s the idea?
5
Peer review methods are employed to maintain standards, improve
performance and provide credibility.
Wikipedia: Peer review
08.11.2013 Frank Sons – Developer Conference 2013
![Page 6: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/6.jpg)
Reviews aren‘t limited to code…
608.11.2013 Frank Sons – Developer Conference 2013
![Page 7: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/7.jpg)
Back to code reviews…
IBM: Inspection introduced 1970s
7
Strict checklist for approval
08.11.2013 Frank Sons – Developer Conference 2013
Absolutely not agile
![Page 8: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/8.jpg)
„That‘s not my code!“
Collective code ownership is a mindset
808.11.2013 Frank Sons – Developer Conference 2013
![Page 9: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/9.jpg)
What about the ego?
9
“Everyone has the right and freedom to totally suck in private.”
Jeff Atwood - @codinghorror
08.11.2013 Frank Sons – Developer Conference 2013
![Page 10: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/10.jpg)
Forget about your ego!
10
“Attempt to be awesome in public and embrace the suck!”
Jeff Atwood - @codinghorror
08.11.2013 Frank Sons – Developer Conference 2013
![Page 11: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/11.jpg)
Reviews are knowledge sharing!
1108.11.2013 Frank Sons – Developer Conference 2013
![Page 12: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/12.jpg)
Share within your team…
Product knowledge
Technical knowledge
Coding Standards
Transparency
1208.11.2013 Frank Sons – Developer Conference 2013
![Page 13: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/13.jpg)
Finding the right review method
What do you want to do today?
1308.11.2013 Frank Sons – Developer Conference 2013
![Page 14: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/14.jpg)
Just a second…
14
“Hey, you got a minute? I need some help with a small problem.”
08.11.2013 Frank Sons – Developer Conference 2013
![Page 15: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/15.jpg)
Ad hoc
Takes only a few minutes
15
Happens anywhere
08.11.2013 Frank Sons – Developer Conference 2013
Little impact beyond problem
![Page 16: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/16.jpg)
Talk to the duck
1608.11.2013 Frank Sons – Developer Conference 2013
![Page 17: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/17.jpg)
Take a look please…
17
“Can you take a look at my code please? Here is the branch.”
08.11.2013 Frank Sons – Developer Conference 2013
![Page 18: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/18.jpg)
Peer deskcheck / pass around
Can be done asynchronous
18
Great for reviewing lots of code
08.11.2013 Frank Sons – Developer Conference 2013
Most tools work this way
![Page 19: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/19.jpg)
We are agile!
19
“Let’s do this together!”
08.11.2013 Frank Sons – Developer Conference 2013
![Page 20: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/20.jpg)
Pair programming
Driver and Navigator
20
Rapid Iterations
08.11.2013 Frank Sons – Developer Conference 2013
Review on the fly
![Page 21: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/21.jpg)
Let me show you…
21
“Let me show you my code.”
08.11.2013 Frank Sons – Developer Conference 2013
![Page 22: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/22.jpg)
Walkthrough
Author explains code
Developers ask Questions
Ideal to present and educate
Risk of overlooking critical code
2208.11.2013 Frank Sons – Developer Conference 2013
![Page 23: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/23.jpg)
Is this really understandable?
23
“Can you read and explain my code to others?”
08.11.2013 Frank Sons – Developer Conference 2013
![Page 24: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/24.jpg)
„Code Reading“
Reader doesn‘t know code
Other devs: „Eagle Eye view“
Author answers questions
Specific code section
2408.11.2013 Frank Sons – Developer Conference 2013
![Page 25: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/25.jpg)
Beware the dragons!
It can be tricky…
2508.11.2013 Frank Sons – Developer Conference 2013
![Page 26: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/26.jpg)
Egoless!
26
My ego ist not tied to my “perfect” or “imperfect” work product
Jeff Atwood - @codinghorror
08.11.2013 Frank Sons – Developer Conference 2013
![Page 27: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/27.jpg)
Avoid the dragons
Leave the egos at the door
No fingerpointing
Follow up after review
Don‘t abuse result
Lack of knowledge
2708.11.2013 Frank Sons – Developer Conference 2013
![Page 28: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/28.jpg)
Keep this in mind
Three to seven participants
Keep it at two hours max
Involve Managers in planning
Find problems not solutions
Review coverage vs. Project size
2808.11.2013 Frank Sons – Developer Conference 2013
![Page 29: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/29.jpg)
You will see the benefits
Code will be understandable
Knowledge is spread
Improves communication
Light house effects
2908.11.2013 Frank Sons – Developer Conference 2013
![Page 30: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/30.jpg)
JUST DO IT!
3008.11.2013 Frank Sons – Developer Conference 2013
![Page 31: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/31.jpg)
This helps…
3108.11.2013 Frank Sons – Developer Conference 2013
![Page 32: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/32.jpg)
Enjoy your reviews!
Reviews can help your team
32
Reviews are all about the mindset
08.11.2013 Frank Sons – Developer Conference 2013
Don‘t fear the dragons
![Page 33: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/33.jpg)
Feedback welcome!
Twitter: @FrankS
slideshare.net/frank_sons
Ask for a card ;-)
3308.11.2013 Frank Sons – Developer Conference 2013
![Page 34: Code Reviews - developer conference 2013](https://reader035.vdocuments.net/reader035/viewer/2022081516/554ca877b4c90536578b4699/html5/thumbnails/34.jpg)
Thanks!
Hope you enjoyed it!
3408.11.2013 Frank Sons – Developer Conference 2013