SlideShare una empresa de Scribd logo
1 de 28
Code Peer Reviews
Leave your ego at the door



Frank Sons
Senior Software Engineer
So, what’s this about?

      Introducing Reviews

      Collective code ownership

      Some ways to review code

      Beware the dragons!


                                  2
A short introduction to reviews
    Forget about the code for the moment…




                                            3
What’s the idea?




  Peer review methods are employed
    to maintain standards, improve
  performance and provide credibility.




                                         4
Reviews aren’t limited to code…




                                  5
Back to code reviews…



 IBM: Inspection introduced in 1970s



 Google: 20% rule used for reviews


                                       6
„That‘s not my code!“
Collective code ownership is a mindset




                                         7
What about the ego?




      „Everyone has the right and
   freedom to totally suck in private.“




                                          8
Forget about your ego!




   „Attempt to be awesome in public
        and embrace the suck!“




                                      9
Reviews are knowledge sharing!




                                 10
Share within your team…

     Product knowledge

     Technical knowledge

     Coding Standards

     Transparency


                           11
How to review
A comprehensive overview




                           12
Ad hoc

     Just ask someone

     Takes only a few minutes

     Happens everywhere

     Little impact beyond problem

     Completely informal



                                    13
Peer deskcheck / passaround

     Asking someone for input

     Can be done asynchronous

     Author is not present

     Good for mentoring and coaching

     Very informal



                                       14
Pair programming

     Agile approach

     Driver and navigator

     Rapid iterations

     Cultural change needed

     Informal review



                              15
Walkthrough

     Author explains code

     Code reading

     Ideal to present and educate

     Risk of overlooking critical code

     Informal, no defined process



                                         16
Team review

     Used to judge product

     Check against specifications

     Preparation needed

     Review collects data and input

     Planned and structured



                                      17
Inspection

     Most formal approach

     Industry standard

     Specific roles and trained inspectors

     Checklist

     Moderated review



                                             18
“Inspection Walkthrough”

     Reader doesn‘t know code

     Experienced dev for „eagle eye“ view

     Author explains and answers questions

     Specific code section

     No leads involved



                                             19
Beware the dragons!
         It can be tricky…




                             20
Egoless!




   My ego is not tied to my „perfect“
    or „imperfect“ work product.




                                        21
Avoid the dragons

     No fingerpointing

     Leave the egos at the door

     Resistance to change

     Lack of knowledge

     Cultural issues



                                  22
Some things to keep in mind

     Three to seven participants

     Not longer than two hours

     Manager should be involved in planning

     Find problems, not solutions

     Review coverage vs. project size



                                              23
JUST DO IT!




              24
This helps…




              25
I hope you had a good time!



      Reviews can help your team

      Reviews are all about the mindset

      Don‘t fear the dragons




                                          26
Thanks!




          27
Bigpoint GmbH
       Frank Sons
Senior Software Engineer

    Drehbahn 47-48
    20354 Hamburg
       Germany

 Tel +49 40.88 14 13 - 0
Fax +49 40.88 14 13 - 11

  f.sons@bigpoint.net
    www.bigpoint.net



  Find us on


                           28

Más contenido relacionado

Destacado

Code reviews
Code reviewsCode reviews
Code reviewsJuan Maiz
 
Improving Code Quality Through Effective Review Process
Improving Code Quality Through Effective  Review ProcessImproving Code Quality Through Effective  Review Process
Improving Code Quality Through Effective Review ProcessDr. Syed Hassan Amin
 
Code Review Tool Evaluation
Code Review Tool EvaluationCode Review Tool Evaluation
Code Review Tool EvaluationKate Semizhon
 
Lecturas F2 4 Fn 1 C10
Lecturas   F2   4 Fn   1 C10Lecturas   F2   4 Fn   1 C10
Lecturas F2 4 Fn 1 C10finanzas_uca
 
The Rise of Click Bait, Death of Quality Content, and What We Can Do About It
The Rise of Click Bait, Death of Quality Content, and What We Can Do About ItThe Rise of Click Bait, Death of Quality Content, and What We Can Do About It
The Rise of Click Bait, Death of Quality Content, and What We Can Do About ItA Better Version of You
 
Ca Giving Green Gifts. 11.29.09
Ca Giving Green Gifts. 11.29.09Ca Giving Green Gifts. 11.29.09
Ca Giving Green Gifts. 11.29.09stwordsmith
 
Thesis Midterm032610
Thesis Midterm032610Thesis Midterm032610
Thesis Midterm032610klee4vp
 
ZnO基稀磁半导体共掺杂体系
ZnO基稀磁半导体共掺杂体系ZnO基稀磁半导体共掺杂体系
ZnO基稀磁半导体共掺杂体系cscguochang
 
Baird's 2008 Industrial Conference
Baird's 2008 Industrial ConferenceBaird's 2008 Industrial Conference
Baird's 2008 Industrial Conferencefinance46
 
Code Reviews - developer conference 2013
Code Reviews - developer conference 2013Code Reviews - developer conference 2013
Code Reviews - developer conference 2013Frank Sons
 
Building A Goal Aligned Enterprise Public
Building A Goal Aligned Enterprise   PublicBuilding A Goal Aligned Enterprise   Public
Building A Goal Aligned Enterprise Publicgregflay
 
Webforum 2011 - lovløse nettsamfunn?
Webforum 2011 - lovløse nettsamfunn?Webforum 2011 - lovløse nettsamfunn?
Webforum 2011 - lovløse nettsamfunn?Ingeborg Dirdal
 
SVH In Vogelvlucht Voor Albeda
SVH In Vogelvlucht Voor AlbedaSVH In Vogelvlucht Voor Albeda
SVH In Vogelvlucht Voor AlbedaJohan Lapidaire
 
RIAアーキテクチャー研究会 第3回 セッション4 Mvpvm pattern
RIAアーキテクチャー研究会 第3回 セッション4 Mvpvm patternRIAアーキテクチャー研究会 第3回 セッション4 Mvpvm pattern
RIAアーキテクチャー研究会 第3回 セッション4 Mvpvm patternMami Shiino
 
Государственная социальная сеть
Государственная социальная сетьГосударственная социальная сеть
Государственная социальная сетьVadim Andreev
 
hormel foods hrl_990330_200_120
hormel foods  hrl_990330_200_120hormel foods  hrl_990330_200_120
hormel foods hrl_990330_200_120finance46
 

Destacado (20)

Code reviews
Code reviewsCode reviews
Code reviews
 
Improving Code Quality Through Effective Review Process
Improving Code Quality Through Effective  Review ProcessImproving Code Quality Through Effective  Review Process
Improving Code Quality Through Effective Review Process
 
Code Review Tool Evaluation
Code Review Tool EvaluationCode Review Tool Evaluation
Code Review Tool Evaluation
 
Lecturas F2 4 Fn 1 C10
Lecturas   F2   4 Fn   1 C10Lecturas   F2   4 Fn   1 C10
Lecturas F2 4 Fn 1 C10
 
The Rise of Click Bait, Death of Quality Content, and What We Can Do About It
The Rise of Click Bait, Death of Quality Content, and What We Can Do About ItThe Rise of Click Bait, Death of Quality Content, and What We Can Do About It
The Rise of Click Bait, Death of Quality Content, and What We Can Do About It
 
Ca Giving Green Gifts. 11.29.09
Ca Giving Green Gifts. 11.29.09Ca Giving Green Gifts. 11.29.09
Ca Giving Green Gifts. 11.29.09
 
Thesis Midterm032610
Thesis Midterm032610Thesis Midterm032610
Thesis Midterm032610
 
ZnO基稀磁半导体共掺杂体系
ZnO基稀磁半导体共掺杂体系ZnO基稀磁半导体共掺杂体系
ZnO基稀磁半导体共掺杂体系
 
Baird's 2008 Industrial Conference
Baird's 2008 Industrial ConferenceBaird's 2008 Industrial Conference
Baird's 2008 Industrial Conference
 
Code Reviews - developer conference 2013
Code Reviews - developer conference 2013Code Reviews - developer conference 2013
Code Reviews - developer conference 2013
 
Building A Goal Aligned Enterprise Public
Building A Goal Aligned Enterprise   PublicBuilding A Goal Aligned Enterprise   Public
Building A Goal Aligned Enterprise Public
 
Webforum 2011 - lovløse nettsamfunn?
Webforum 2011 - lovløse nettsamfunn?Webforum 2011 - lovløse nettsamfunn?
Webforum 2011 - lovløse nettsamfunn?
 
SVH In Vogelvlucht Voor Albeda
SVH In Vogelvlucht Voor AlbedaSVH In Vogelvlucht Voor Albeda
SVH In Vogelvlucht Voor Albeda
 
RIAアーキテクチャー研究会 第3回 セッション4 Mvpvm pattern
RIAアーキテクチャー研究会 第3回 セッション4 Mvpvm patternRIAアーキテクチャー研究会 第3回 セッション4 Mvpvm pattern
RIAアーキテクチャー研究会 第3回 セッション4 Mvpvm pattern
 
Государственная социальная сеть
Государственная социальная сетьГосударственная социальная сеть
Государственная социальная сеть
 
hormel foods hrl_990330_200_120
hormel foods  hrl_990330_200_120hormel foods  hrl_990330_200_120
hormel foods hrl_990330_200_120
 
Wishes
WishesWishes
Wishes
 
Rocodromo 1º bachiller
Rocodromo 1º bachillerRocodromo 1º bachiller
Rocodromo 1º bachiller
 
I festival de poesias mids
I festival de poesias   midsI festival de poesias   mids
I festival de poesias mids
 
Kpc Nieuwegein 27112009
Kpc Nieuwegein 27112009Kpc Nieuwegein 27112009
Kpc Nieuwegein 27112009
 

Similar a Code reviews - Leave your ego at the door

Code review in practice
Code review in practiceCode review in practice
Code review in practiceEdorian
 
성공적인코드리뷰 문화 사내 발표
성공적인코드리뷰 문화 사내 발표성공적인코드리뷰 문화 사내 발표
성공적인코드리뷰 문화 사내 발표Byoenghan Baek
 
Developing on large scale applications
Developing on large scale applicationsDeveloping on large scale applications
Developing on large scale applicationsAdrian IORGU
 
Effective Code Reviews (IPC 2018)
Effective Code Reviews (IPC 2018)Effective Code Reviews (IPC 2018)
Effective Code Reviews (IPC 2018)Frank Sons
 
10 Faulty Behaviors of Code Review - Developer Summit Istanbul 2018
10 Faulty Behaviors of Code Review - Developer Summit Istanbul 201810 Faulty Behaviors of Code Review - Developer Summit Istanbul 2018
10 Faulty Behaviors of Code Review - Developer Summit Istanbul 2018Lemi Orhan Ergin
 
Avoiding the Heuristic Solution: Moving past functional and correct to joyful...
Avoiding the Heuristic Solution: Moving past functional and correct to joyful...Avoiding the Heuristic Solution: Moving past functional and correct to joyful...
Avoiding the Heuristic Solution: Moving past functional and correct to joyful...Steven Hoober
 
What to do once you have an idea
What to do once you have an ideaWhat to do once you have an idea
What to do once you have an ideaSergey Sundukovskiy
 
Software Quality via Unit Testing
Software Quality via Unit TestingSoftware Quality via Unit Testing
Software Quality via Unit TestingShaun Abram
 
How Google Said - Ninja Code Review With Gerrit
How Google Said - Ninja Code Review With GerritHow Google Said - Ninja Code Review With Gerrit
How Google Said - Ninja Code Review With GerritAnuar Nurmakanov
 
Caring about Code Quality
Caring about Code QualityCaring about Code Quality
Caring about Code QualitySaltmarch Media
 
The Essential Product Owner - Partnering with the team
The Essential Product Owner - Partnering with the teamThe Essential Product Owner - Partnering with the team
The Essential Product Owner - Partnering with the teamCprime
 
Slides for Houston iPhone Developers' Meetup (April 2012)
Slides for Houston iPhone Developers' Meetup (April 2012)Slides for Houston iPhone Developers' Meetup (April 2012)
Slides for Houston iPhone Developers' Meetup (April 2012)lqi
 
Software quality
Software qualitySoftware quality
Software quality5minpause
 
Code smells and Other Malodorous Software Odors
Code smells and Other Malodorous Software OdorsCode smells and Other Malodorous Software Odors
Code smells and Other Malodorous Software OdorsClint Edmonson
 
Java Zone 2017 - Build the right system
Java Zone 2017  - Build the right systemJava Zone 2017  - Build the right system
Java Zone 2017 - Build the right systemCecilie Haugstvedt
 
Education for Design For Life
Education for Design For LifeEducation for Design For Life
Education for Design For LifeDave Malouf
 
Java Zone Academy 2018 - Build the right system
Java Zone Academy 2018   -  Build the right systemJava Zone Academy 2018   -  Build the right system
Java Zone Academy 2018 - Build the right systemCecilie Haugstvedt
 
The Fun Of A Program Manager
The Fun Of A Program ManagerThe Fun Of A Program Manager
The Fun Of A Program ManagerBetter Software
 

Similar a Code reviews - Leave your ego at the door (20)

Code review in practice
Code review in practiceCode review in practice
Code review in practice
 
성공적인코드리뷰 문화 사내 발표
성공적인코드리뷰 문화 사내 발표성공적인코드리뷰 문화 사내 발표
성공적인코드리뷰 문화 사내 발표
 
Developing on large scale applications
Developing on large scale applicationsDeveloping on large scale applications
Developing on large scale applications
 
Effective Code Reviews (IPC 2018)
Effective Code Reviews (IPC 2018)Effective Code Reviews (IPC 2018)
Effective Code Reviews (IPC 2018)
 
10 Faulty Behaviors of Code Review - Developer Summit Istanbul 2018
10 Faulty Behaviors of Code Review - Developer Summit Istanbul 201810 Faulty Behaviors of Code Review - Developer Summit Istanbul 2018
10 Faulty Behaviors of Code Review - Developer Summit Istanbul 2018
 
Avoiding the Heuristic Solution: Moving past functional and correct to joyful...
Avoiding the Heuristic Solution: Moving past functional and correct to joyful...Avoiding the Heuristic Solution: Moving past functional and correct to joyful...
Avoiding the Heuristic Solution: Moving past functional and correct to joyful...
 
What to do once you have an idea
What to do once you have an ideaWhat to do once you have an idea
What to do once you have an idea
 
Software Quality via Unit Testing
Software Quality via Unit TestingSoftware Quality via Unit Testing
Software Quality via Unit Testing
 
How Google Said - Ninja Code Review With Gerrit
How Google Said - Ninja Code Review With GerritHow Google Said - Ninja Code Review With Gerrit
How Google Said - Ninja Code Review With Gerrit
 
Caring about Code Quality
Caring about Code QualityCaring about Code Quality
Caring about Code Quality
 
2011_esc.pdf
2011_esc.pdf2011_esc.pdf
2011_esc.pdf
 
The Essential Product Owner - Partnering with the team
The Essential Product Owner - Partnering with the teamThe Essential Product Owner - Partnering with the team
The Essential Product Owner - Partnering with the team
 
Slides for Houston iPhone Developers' Meetup (April 2012)
Slides for Houston iPhone Developers' Meetup (April 2012)Slides for Houston iPhone Developers' Meetup (April 2012)
Slides for Houston iPhone Developers' Meetup (April 2012)
 
Software quality
Software qualitySoftware quality
Software quality
 
Code smells and Other Malodorous Software Odors
Code smells and Other Malodorous Software OdorsCode smells and Other Malodorous Software Odors
Code smells and Other Malodorous Software Odors
 
Java Zone 2017 - Build the right system
Java Zone 2017  - Build the right systemJava Zone 2017  - Build the right system
Java Zone 2017 - Build the right system
 
Education for Design For Life
Education for Design For LifeEducation for Design For Life
Education for Design For Life
 
Pragmatic programmer 2
Pragmatic programmer 2Pragmatic programmer 2
Pragmatic programmer 2
 
Java Zone Academy 2018 - Build the right system
Java Zone Academy 2018   -  Build the right systemJava Zone Academy 2018   -  Build the right system
Java Zone Academy 2018 - Build the right system
 
The Fun Of A Program Manager
The Fun Of A Program ManagerThe Fun Of A Program Manager
The Fun Of A Program Manager
 

Más de Frank Sons

An Introduction to pair programming methods
An Introduction to pair programming methodsAn Introduction to pair programming methods
An Introduction to pair programming methodsFrank Sons
 
Introduction to architecture katas
Introduction to architecture katasIntroduction to architecture katas
Introduction to architecture katasFrank Sons
 
Pair programming
Pair programmingPair programming
Pair programmingFrank Sons
 
Architecture Katas - How can we learn to create better architectures?
Architecture Katas - How can we learn to create better architectures?Architecture Katas - How can we learn to create better architectures?
Architecture Katas - How can we learn to create better architectures?Frank Sons
 
Effektive Code Reviews Solutions
Effektive Code Reviews SolutionsEffektive Code Reviews Solutions
Effektive Code Reviews SolutionsFrank Sons
 
Creating a good architecture
Creating a good architectureCreating a good architecture
Creating a good architectureFrank Sons
 
Effective Code Reviews
Effective Code ReviewsEffective Code Reviews
Effective Code ReviewsFrank Sons
 
"Effektive Code Reviews" - Abendvortrag bei oose.de
"Effektive Code Reviews" - Abendvortrag bei oose.de"Effektive Code Reviews" - Abendvortrag bei oose.de
"Effektive Code Reviews" - Abendvortrag bei oose.deFrank Sons
 
Code Qualität in agilen Teams - code.talks Hamburg 2015
Code Qualität in agilen Teams - code.talks Hamburg 2015Code Qualität in agilen Teams - code.talks Hamburg 2015
Code Qualität in agilen Teams - code.talks Hamburg 2015Frank Sons
 
Imposter Syndrom - Lightning talk PHP Unconference 2015
Imposter Syndrom - Lightning talk PHP Unconference 2015Imposter Syndrom - Lightning talk PHP Unconference 2015
Imposter Syndrom - Lightning talk PHP Unconference 2015Frank Sons
 
Code Quality in an agile world - PHP Usergroup Hamburg
Code Quality in an agile world - PHP Usergroup HamburgCode Quality in an agile world - PHP Usergroup Hamburg
Code Quality in an agile world - PHP Usergroup HamburgFrank Sons
 
Code Qualität in agilen Teams - Webmontag Hamburg
Code Qualität in agilen Teams - Webmontag HamburgCode Qualität in agilen Teams - Webmontag Hamburg
Code Qualität in agilen Teams - Webmontag HamburgFrank Sons
 
Das Hochstapler Syndrom
Das Hochstapler SyndromDas Hochstapler Syndrom
Das Hochstapler SyndromFrank Sons
 
Was bringen Code Reviews wirklich? Wir sind doch schon agil.
Was bringen Code Reviews wirklich? Wir sind doch schon agil.Was bringen Code Reviews wirklich? Wir sind doch schon agil.
Was bringen Code Reviews wirklich? Wir sind doch schon agil.Frank Sons
 
Presenting to win - how I changed some old slides
Presenting to win - how I changed some old slidesPresenting to win - how I changed some old slides
Presenting to win - how I changed some old slidesFrank Sons
 
Selbstmotivation - vom Intro zum Extro
Selbstmotivation - vom Intro zum ExtroSelbstmotivation - vom Intro zum Extro
Selbstmotivation - vom Intro zum ExtroFrank Sons
 
Code Reviews - PHP Unconference Europe 2013
Code Reviews - PHP Unconference Europe 2013Code Reviews - PHP Unconference Europe 2013
Code Reviews - PHP Unconference Europe 2013Frank Sons
 
PHP Usergroup 2013/03/12
PHP Usergroup 2013/03/12PHP Usergroup 2013/03/12
PHP Usergroup 2013/03/12Frank Sons
 

Más de Frank Sons (20)

An Introduction to pair programming methods
An Introduction to pair programming methodsAn Introduction to pair programming methods
An Introduction to pair programming methods
 
Introduction to architecture katas
Introduction to architecture katasIntroduction to architecture katas
Introduction to architecture katas
 
Pair programming
Pair programmingPair programming
Pair programming
 
Architecture Katas - How can we learn to create better architectures?
Architecture Katas - How can we learn to create better architectures?Architecture Katas - How can we learn to create better architectures?
Architecture Katas - How can we learn to create better architectures?
 
Effektive Code Reviews Solutions
Effektive Code Reviews SolutionsEffektive Code Reviews Solutions
Effektive Code Reviews Solutions
 
Creating a good architecture
Creating a good architectureCreating a good architecture
Creating a good architecture
 
Effective Code Reviews
Effective Code ReviewsEffective Code Reviews
Effective Code Reviews
 
"Effektive Code Reviews" - Abendvortrag bei oose.de
"Effektive Code Reviews" - Abendvortrag bei oose.de"Effektive Code Reviews" - Abendvortrag bei oose.de
"Effektive Code Reviews" - Abendvortrag bei oose.de
 
Code Qualität in agilen Teams - code.talks Hamburg 2015
Code Qualität in agilen Teams - code.talks Hamburg 2015Code Qualität in agilen Teams - code.talks Hamburg 2015
Code Qualität in agilen Teams - code.talks Hamburg 2015
 
Imposter Syndrom - Lightning talk PHP Unconference 2015
Imposter Syndrom - Lightning talk PHP Unconference 2015Imposter Syndrom - Lightning talk PHP Unconference 2015
Imposter Syndrom - Lightning talk PHP Unconference 2015
 
Code Quality in an agile world - PHP Usergroup Hamburg
Code Quality in an agile world - PHP Usergroup HamburgCode Quality in an agile world - PHP Usergroup Hamburg
Code Quality in an agile world - PHP Usergroup Hamburg
 
Code Qualität in agilen Teams - Webmontag Hamburg
Code Qualität in agilen Teams - Webmontag HamburgCode Qualität in agilen Teams - Webmontag Hamburg
Code Qualität in agilen Teams - Webmontag Hamburg
 
Das Hochstapler Syndrom
Das Hochstapler SyndromDas Hochstapler Syndrom
Das Hochstapler Syndrom
 
Code reviews
Code reviewsCode reviews
Code reviews
 
Was bringen Code Reviews wirklich? Wir sind doch schon agil.
Was bringen Code Reviews wirklich? Wir sind doch schon agil.Was bringen Code Reviews wirklich? Wir sind doch schon agil.
Was bringen Code Reviews wirklich? Wir sind doch schon agil.
 
Code Review
Code ReviewCode Review
Code Review
 
Presenting to win - how I changed some old slides
Presenting to win - how I changed some old slidesPresenting to win - how I changed some old slides
Presenting to win - how I changed some old slides
 
Selbstmotivation - vom Intro zum Extro
Selbstmotivation - vom Intro zum ExtroSelbstmotivation - vom Intro zum Extro
Selbstmotivation - vom Intro zum Extro
 
Code Reviews - PHP Unconference Europe 2013
Code Reviews - PHP Unconference Europe 2013Code Reviews - PHP Unconference Europe 2013
Code Reviews - PHP Unconference Europe 2013
 
PHP Usergroup 2013/03/12
PHP Usergroup 2013/03/12PHP Usergroup 2013/03/12
PHP Usergroup 2013/03/12
 

Último

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
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 2024Rafal Los
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
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...apidays
 
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 2024The Digital Insurer
 
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 TerraformAndrey Devyatkin
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
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?Igalia
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 

Último (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
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...
 
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
 
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
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
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?
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

Code reviews - Leave your ego at the door

  • 1. Code Peer Reviews Leave your ego at the door Frank Sons Senior Software Engineer
  • 2. So, what’s this about? Introducing Reviews Collective code ownership Some ways to review code Beware the dragons! 2
  • 3. A short introduction to reviews Forget about the code for the moment… 3
  • 4. What’s the idea? Peer review methods are employed to maintain standards, improve performance and provide credibility. 4
  • 6. Back to code reviews… IBM: Inspection introduced in 1970s Google: 20% rule used for reviews 6
  • 7. „That‘s not my code!“ Collective code ownership is a mindset 7
  • 8. What about the ego? „Everyone has the right and freedom to totally suck in private.“ 8
  • 9. Forget about your ego! „Attempt to be awesome in public and embrace the suck!“ 9
  • 10. Reviews are knowledge sharing! 10
  • 11. Share within your team… Product knowledge Technical knowledge Coding Standards Transparency 11
  • 12. How to review A comprehensive overview 12
  • 13. Ad hoc Just ask someone Takes only a few minutes Happens everywhere Little impact beyond problem Completely informal 13
  • 14. Peer deskcheck / passaround Asking someone for input Can be done asynchronous Author is not present Good for mentoring and coaching Very informal 14
  • 15. Pair programming Agile approach Driver and navigator Rapid iterations Cultural change needed Informal review 15
  • 16. Walkthrough Author explains code Code reading Ideal to present and educate Risk of overlooking critical code Informal, no defined process 16
  • 17. Team review Used to judge product Check against specifications Preparation needed Review collects data and input Planned and structured 17
  • 18. Inspection Most formal approach Industry standard Specific roles and trained inspectors Checklist Moderated review 18
  • 19. “Inspection Walkthrough” Reader doesn‘t know code Experienced dev for „eagle eye“ view Author explains and answers questions Specific code section No leads involved 19
  • 20. Beware the dragons! It can be tricky… 20
  • 21. Egoless! My ego is not tied to my „perfect“ or „imperfect“ work product. 21
  • 22. Avoid the dragons No fingerpointing Leave the egos at the door Resistance to change Lack of knowledge Cultural issues 22
  • 23. Some things to keep in mind Three to seven participants Not longer than two hours Manager should be involved in planning Find problems, not solutions Review coverage vs. project size 23
  • 26. I hope you had a good time! Reviews can help your team Reviews are all about the mindset Don‘t fear the dragons 26
  • 27. Thanks! 27
  • 28. Bigpoint GmbH Frank Sons Senior Software Engineer Drehbahn 47-48 20354 Hamburg Germany Tel +49 40.88 14 13 - 0 Fax +49 40.88 14 13 - 11 f.sons@bigpoint.net www.bigpoint.net Find us on 28