SlideShare ist ein Scribd-Unternehmen logo
1 von 10
Downloaden Sie, um offline zu lesen
7. ebay Tech Talk Berlin 

Demystifying Code Reviews with Gerrit

Mateusz Szczap
Holger Hammel
•  Part of the ebay family
•  located ebay Campus Dreilinden
•  Germany’s biggest online marketplace for vehicles
•  7.44 million unique users (AGOF 2013-04)
•  150 people, 60 within technology
•  High traffic web, android and iOS applications
•  Agile cross functional teams

Mateusz Szczap 
- Software Engineer
Holger Hammel - Team Lead mobile
why this presentation?
some ideas for starting and proceeding with
code reviews easier
Ok nice, but why reviewing at all?
Get feedback for better code
“I believe that peer code reviews are the
single biggest thing you can do to improve
your code.” [jat]
“Code reviews aren't the ultimate solution
to a broken design process, but they are
an incredibly useful tool.” [mwe]
What type of reviews you use?

Pair Programming (by peer, instantly)
Peer Code Review (by peer, async)
Code Walkthroughs (by group, async)
Myth 1: come on, reviews are too
expensive and slow!
less errors -> more productivity
no debugging, retesting, finding the right person, building tech debt

up to 95% defect detection w/ XP
(just <60% w/ only automated testing)


Sources:	
  [smc]	
  references	
  various	
  studies	
  
Myth 2: you have to understand the
whole context of what you review
No you haven’t

Mentioning a typo or a SOLID or clean code
violation or a formatting issue or a missing
test or I didn’t find anything or ….. helps
Myth 3: reviews are blocking
You may not want another column on your
board and wait for someone to review

Reviews make sense even non-blocking
and after a release
the faster the better, though
Myth 4: tools are horrible
yeah, not always a myth

make it as simple, convenient and fast as
possible to create and finish reviews


=> for example with gerrit
Sources
•  [smc] Steve McConnell: Code Complete, Second Edition; Microsoft
Press; 2004; chapters: 20.3. Relative Effectiveness of Quality
Techniques; 20.5. The General Principle of Software Quality;
http://www.ebay.de/sch/i.html?_nkw=McConnell%2C+Steve%3A
+Code+Complete
•  http://scientopia.org/blogs/goodmath/2011/07/06/things-everyone-
should-do-code-review/
•  [jat] Jeff Atwood:
http://www.codinghorror.com/blog/2006/01/code-reviews-just-do-
it.html
•  [mwe] Matt Welsh:
http://matt-welsh.blogspot.de/2012_02_01_archive.html
•  [rbo] Robert Bogue - “Code Reviews w/o the pain”, best practices
http://www.developer.com/tech/article.php/3579756/Effective-
Code-Reviews-Without-the-Pain.htm
•  [jco] Jason Cohen, Smartbear: “11 proven practices for more
effective, efficient peer code review”
http://www.ibm.com/developerworks/rational/library/11-proven-
practices-for-peer-review/index.html

Weitere ähnliche Inhalte

Was ist angesagt?

Static Analysis Primer
Static Analysis PrimerStatic Analysis Primer
Static Analysis Primer
Coverity
 
Nimbuzz advanced vs novice testers
Nimbuzz   advanced vs novice testersNimbuzz   advanced vs novice testers
Nimbuzz advanced vs novice testers
Ravindran Antonysamy
 
0136 ideal static_analyzer
0136 ideal static_analyzer0136 ideal static_analyzer
0136 ideal static_analyzer
PVS-Studio
 
Building Forio Web Simulations - Introduction to Interface Design
Building Forio Web Simulations - Introduction to Interface DesignBuilding Forio Web Simulations - Introduction to Interface Design
Building Forio Web Simulations - Introduction to Interface Design
foriocorp
 

Was ist angesagt? (19)

Sustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey ShannahanSustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey Shannahan
 
Test Smarter: Efficient Coverage Metrics That Won't Leave You Exposed
Test Smarter: Efficient Coverage Metrics That Won't Leave You ExposedTest Smarter: Efficient Coverage Metrics That Won't Leave You Exposed
Test Smarter: Efficient Coverage Metrics That Won't Leave You Exposed
 
Delhi first draft_2
Delhi first draft_2Delhi first draft_2
Delhi first draft_2
 
Delhi second draft
Delhi second draft Delhi second draft
Delhi second draft
 
Static Analysis Primer
Static Analysis PrimerStatic Analysis Primer
Static Analysis Primer
 
Nimbuzz advanced vs novice testers
Nimbuzz   advanced vs novice testersNimbuzz   advanced vs novice testers
Nimbuzz advanced vs novice testers
 
Debugging with visual studio beyond 'F5'
Debugging with visual studio beyond 'F5'Debugging with visual studio beyond 'F5'
Debugging with visual studio beyond 'F5'
 
Oredev: An Exploratory Tester's Lessons on Security Threat Modeling
Oredev: An Exploratory Tester's Lessons on Security Threat ModelingOredev: An Exploratory Tester's Lessons on Security Threat Modeling
Oredev: An Exploratory Tester's Lessons on Security Threat Modeling
 
Finding Defects in C#: Coverity vs. FxCop
Finding Defects in C#: Coverity vs. FxCopFinding Defects in C#: Coverity vs. FxCop
Finding Defects in C#: Coverity vs. FxCop
 
PHP unit testing - good and bad practices
PHP unit testing - good and bad practicesPHP unit testing - good and bad practices
PHP unit testing - good and bad practices
 
An Introduction To Software Development - Testing, Continuous integration
An Introduction To Software Development - Testing, Continuous integrationAn Introduction To Software Development - Testing, Continuous integration
An Introduction To Software Development - Testing, Continuous integration
 
5 top pain points of test automation
5 top pain points of test automation5 top pain points of test automation
5 top pain points of test automation
 
271 awesome instructional_presentation
271 awesome instructional_presentation271 awesome instructional_presentation
271 awesome instructional_presentation
 
Automating Strategically or Tactically when Testing
Automating Strategically or Tactically when TestingAutomating Strategically or Tactically when Testing
Automating Strategically or Tactically when Testing
 
Thoughts on Test Strategy
Thoughts on Test StrategyThoughts on Test Strategy
Thoughts on Test Strategy
 
OSS Java Analysis - What You Might Be Missing
OSS Java Analysis - What You Might Be MissingOSS Java Analysis - What You Might Be Missing
OSS Java Analysis - What You Might Be Missing
 
While You Are Coding
While You Are CodingWhile You Are Coding
While You Are Coding
 
0136 ideal static_analyzer
0136 ideal static_analyzer0136 ideal static_analyzer
0136 ideal static_analyzer
 
Building Forio Web Simulations - Introduction to Interface Design
Building Forio Web Simulations - Introduction to Interface DesignBuilding Forio Web Simulations - Introduction to Interface Design
Building Forio Web Simulations - Introduction to Interface Design
 

Andere mochten auch

Power point informatica
Power point informaticaPower point informatica
Power point informatica
Jaime del Arco
 
Bilangan pecahan
Bilangan pecahanBilangan pecahan
Bilangan pecahan
Kris Tanto
 
Presentació estat d' ànim de les persones
Presentació estat d' ànim de les personesPresentació estat d' ànim de les persones
Presentació estat d' ànim de les persones
Jaime del Arco
 
X 10 17-rani gusmayzarni
X 10 17-rani gusmayzarniX 10 17-rani gusmayzarni
X 10 17-rani gusmayzarni
ranigzarni
 

Andere mochten auch (9)

Power point informatica
Power point informaticaPower point informatica
Power point informatica
 
Bilangan pecahan
Bilangan pecahanBilangan pecahan
Bilangan pecahan
 
Grupos ezequiel brito
Grupos   ezequiel britoGrupos   ezequiel brito
Grupos ezequiel brito
 
Bilangan pecahan
Bilangan pecahanBilangan pecahan
Bilangan pecahan
 
Presentació estat d' ànim de les persones
Presentació estat d' ànim de les personesPresentació estat d' ànim de les persones
Presentació estat d' ànim de les persones
 
X 10 17-rani gusmayzarni
X 10 17-rani gusmayzarniX 10 17-rani gusmayzarni
X 10 17-rani gusmayzarni
 
iOS Testautomation bei mobile.de
iOS Testautomation bei mobile.deiOS Testautomation bei mobile.de
iOS Testautomation bei mobile.de
 
Slideshare presentation
Slideshare presentation Slideshare presentation
Slideshare presentation
 
Wie mobile.de mobil wurde - Fast Feedback
Wie mobile.de mobil wurde - Fast FeedbackWie mobile.de mobil wurde - Fast Feedback
Wie mobile.de mobil wurde - Fast Feedback
 

Ähnlich wie Four myths about peer code reviews - 7. ebay tech talk

Code Review
Code ReviewCode Review
Code Review
Ravi Raj
 
caring_about_code_quality
caring_about_code_qualitycaring_about_code_quality
caring_about_code_quality
Ketan Patel
 
Code review
Code reviewCode review
Code review
Aleksey Solntsev
 
4.Security Assessment And Testing
4.Security Assessment And Testing4.Security Assessment And Testing
4.Security Assessment And Testing
phanleson
 
5-Ways-to-Revolutionize-Your-Software-Testing
5-Ways-to-Revolutionize-Your-Software-Testing5-Ways-to-Revolutionize-Your-Software-Testing
5-Ways-to-Revolutionize-Your-Software-Testing
Mary Clemons
 
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learnedSwiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Michael Palotas
 

Ähnlich wie Four myths about peer code reviews - 7. ebay tech talk (20)

TLC2018 Thomas Haver: The Automation Firehose - Be Strategic and Tactical
TLC2018 Thomas Haver: The Automation Firehose - Be Strategic and TacticalTLC2018 Thomas Haver: The Automation Firehose - Be Strategic and Tactical
TLC2018 Thomas Haver: The Automation Firehose - Be Strategic and Tactical
 
Get Faster - While You're Getting Better
Get Faster - While You're Getting BetterGet Faster - While You're Getting Better
Get Faster - While You're Getting Better
 
Automated tests
Automated testsAutomated tests
Automated tests
 
assertYourself - Breaking the Theories and Assumptions of Unit Testing in Flex
assertYourself - Breaking the Theories and Assumptions of Unit Testing in FlexassertYourself - Breaking the Theories and Assumptions of Unit Testing in Flex
assertYourself - Breaking the Theories and Assumptions of Unit Testing in Flex
 
Code Review
Code ReviewCode Review
Code Review
 
caring_about_code_quality
caring_about_code_qualitycaring_about_code_quality
caring_about_code_quality
 
Code review
Code reviewCode review
Code review
 
SCA in an Agile World | June 2010
SCA in an Agile World | June 2010SCA in an Agile World | June 2010
SCA in an Agile World | June 2010
 
Peer Code Review An Agile Process
Peer Code Review An Agile ProcessPeer Code Review An Agile Process
Peer Code Review An Agile Process
 
Why you should integrate peer code reviews in your software company
Why you should integrate peer code reviews in your software companyWhy you should integrate peer code reviews in your software company
Why you should integrate peer code reviews in your software company
 
4.Security Assessment And Testing
4.Security Assessment And Testing4.Security Assessment And Testing
4.Security Assessment And Testing
 
How to successfully grow a code review culture
How to successfully grow a code review cultureHow to successfully grow a code review culture
How to successfully grow a code review culture
 
5-Ways-to-Revolutionize-Your-Software-Testing
5-Ways-to-Revolutionize-Your-Software-Testing5-Ways-to-Revolutionize-Your-Software-Testing
5-Ways-to-Revolutionize-Your-Software-Testing
 
Caring about Code Quality
Caring about Code QualityCaring about Code Quality
Caring about Code Quality
 
Successful Software Projects - What you need to consider
Successful Software Projects - What you need to considerSuccessful Software Projects - What you need to consider
Successful Software Projects - What you need to consider
 
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learnedSwiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
 
Owasp tds
Owasp tdsOwasp tds
Owasp tds
 
Capability Building for Cyber Defense: Software Walk through and Screening
Capability Building for Cyber Defense: Software Walk through and Screening Capability Building for Cyber Defense: Software Walk through and Screening
Capability Building for Cyber Defense: Software Walk through and Screening
 
Hacker vs tools
Hacker vs toolsHacker vs tools
Hacker vs tools
 
Hacker vs Tools: Which to Choose?
Hacker vs Tools: Which to Choose?Hacker vs Tools: Which to Choose?
Hacker vs Tools: Which to Choose?
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Four myths about peer code reviews - 7. ebay tech talk

  • 1. 7. ebay Tech Talk Berlin Demystifying Code Reviews with Gerrit Mateusz Szczap Holger Hammel
  • 2. •  Part of the ebay family •  located ebay Campus Dreilinden •  Germany’s biggest online marketplace for vehicles •  7.44 million unique users (AGOF 2013-04) •  150 people, 60 within technology •  High traffic web, android and iOS applications •  Agile cross functional teams Mateusz Szczap - Software Engineer Holger Hammel - Team Lead mobile
  • 3. why this presentation? some ideas for starting and proceeding with code reviews easier
  • 4. Ok nice, but why reviewing at all? Get feedback for better code “I believe that peer code reviews are the single biggest thing you can do to improve your code.” [jat] “Code reviews aren't the ultimate solution to a broken design process, but they are an incredibly useful tool.” [mwe]
  • 5. What type of reviews you use? Pair Programming (by peer, instantly) Peer Code Review (by peer, async) Code Walkthroughs (by group, async)
  • 6. Myth 1: come on, reviews are too expensive and slow! less errors -> more productivity no debugging, retesting, finding the right person, building tech debt up to 95% defect detection w/ XP (just <60% w/ only automated testing) Sources:  [smc]  references  various  studies  
  • 7. Myth 2: you have to understand the whole context of what you review No you haven’t Mentioning a typo or a SOLID or clean code violation or a formatting issue or a missing test or I didn’t find anything or ….. helps
  • 8. Myth 3: reviews are blocking You may not want another column on your board and wait for someone to review Reviews make sense even non-blocking and after a release the faster the better, though
  • 9. Myth 4: tools are horrible yeah, not always a myth make it as simple, convenient and fast as possible to create and finish reviews => for example with gerrit
  • 10. Sources •  [smc] Steve McConnell: Code Complete, Second Edition; Microsoft Press; 2004; chapters: 20.3. Relative Effectiveness of Quality Techniques; 20.5. The General Principle of Software Quality; http://www.ebay.de/sch/i.html?_nkw=McConnell%2C+Steve%3A +Code+Complete •  http://scientopia.org/blogs/goodmath/2011/07/06/things-everyone- should-do-code-review/ •  [jat] Jeff Atwood: http://www.codinghorror.com/blog/2006/01/code-reviews-just-do- it.html •  [mwe] Matt Welsh: http://matt-welsh.blogspot.de/2012_02_01_archive.html •  [rbo] Robert Bogue - “Code Reviews w/o the pain”, best practices http://www.developer.com/tech/article.php/3579756/Effective- Code-Reviews-Without-the-Pain.htm •  [jco] Jason Cohen, Smartbear: “11 proven practices for more effective, efficient peer code review” http://www.ibm.com/developerworks/rational/library/11-proven- practices-for-peer-review/index.html