SlideShare une entreprise Scribd logo
1  sur  21
Code Reviews
            One Thing Every Programmer Should Know
                                    by
                           Mattias Karlsson
                  Java Champion, JUG Leader & Agile coach
                           Avega Group Sweden


©Copyright 2012
Disclaimer

                  My own experience
                    Ma propre expérience

                  I am probably wrong
                  Je me trompe probablement

©Copyright 2012
Bio
                  Mattias Karlsson
                  Java Champion, JUG Leader & Agile coach
                  Avega Group
                  Stockholm Sweden

                  @matkar
                  LinkedIn.com/in/mattiask
©Copyright 2012
JUG Stockholm




©Copyright 2012
Jfokus
                  Jfokus & Parleys




©Copyright 2012
Code Reviews
                        Revue de code
                  One Thing Every Programmer
                         Should Know
                  Une Chose que Chaque Programmeur
                            Devrait Savoir


©Copyright 2012
©Copyright 2012
Why?
                  Increase Quality (Améliorer la qualité)
                  Reduce Defects (Réduire les défauts)

                          Increase Team Spirit?
                       (Améliorer l'esprit d'équipe?)
©Copyright 2012
Anti-pattern
                     Architects Review
                          Everything
                  Les Architectes Verifient Tout

©Copyright 2012                             Photo by dpstyles
Pair Programming?




                                Photo Kniberg
                                   H by dpstyles


©Copyright 2012
Goal
                       Sharing knowledge
                  Le partage des connaissances

©Copyright 2012
Code Reviews

           Code Review Meeting (Réunion de revue de Code)
                  1-2 hour/week (1-2 heures / semaine)

           Code Review Day (Journee de revue de Code)
           Informal brown bag style (Informelle, “Brown Bag”)

©Copyright 2012
Developer reaction




©Copyright 2012
Preparation
     Code Conventions (conventions de code)
         checked by tools (vérifiées par les outils)

     Tested (Testé)
     Definition of DONE (Définition de FAIT)



©Copyright 2012
Code Review meeting
           Code Walkthrough (Parcours du code pas à pas)
           Introduce Review Roles (Revue des rôles)
           Have a Moderator (Avoir un Modérateur)
           Take notes (Prendre des notes)
           Involve Experts (Impliquer les Experts)
           Involve Newbie’s (Impliquer les Juniors)
©Copyright 2012
Mood
           Learning Mood (Etre en situation d’apprentissage)
           Open and Respectful (Ouvert et respectueux)
           Collaborative (Collaboratif)
           Constructive (Constructive)
           Don´t be sarcastic! (Ne pas être sarcastique!)
           Ask Questions (Posez des questions)
©Copyright 2012
Things to watch out for
           Ego Effect / Hurt Feelings (Effet Ego)
           “I have to contribute..” (Je dois contribuer)
           Don´t Point Out Spelling Errors
           (Ne faites pas remarquer les fautes d'orthographe)
           It´s all about sharing the code
           (Tout est une question de partage du code)
©Copyright 2012
Have Fun
                  Amusez-vous
©Copyright 2012
Measurements




©Copyright 2012
©Copyright 2012
Mattias Karlsson
                        linkedin.com/in/mattiask
                        twitter: @matkar

                  Thanks!
                        mattias.karlsson@avegagroup.se



                  Feedback: #CodeReviews
                  Réaction: #DevoxxFR



©Copyright 2012

Contenu connexe

Similaire à Code Reviews Devoxx France 2012

Startup Weekend Québec - Votre heure de gloire!
Startup Weekend Québec - Votre heure de gloire!Startup Weekend Québec - Votre heure de gloire!
Startup Weekend Québec - Votre heure de gloire!Davender Gupta
 
Problemes architecturaux courants
Problemes architecturaux courantsProblemes architecturaux courants
Problemes architecturaux courantsElapse Technologies
 
Le canevas de modele d'affaires
Le canevas de modele d'affairesLe canevas de modele d'affaires
Le canevas de modele d'affairesDavender Gupta
 
Accompagnement des startups technologiques
Accompagnement des startups technologiquesAccompagnement des startups technologiques
Accompagnement des startups technologiquesDavender Gupta
 
Cours de Web Design part.2
Cours de Web Design part.2Cours de Web Design part.2
Cours de Web Design part.2MC Casal
 
Propulsez votre architecture grâce au TDD et aux Mocks (Agile Tour Québec 2012)
Propulsez votre architecture grâce au TDD et aux Mocks  (Agile Tour Québec 2012)Propulsez votre architecture grâce au TDD et aux Mocks  (Agile Tour Québec 2012)
Propulsez votre architecture grâce au TDD et aux Mocks (Agile Tour Québec 2012)Elapse Technologies
 
Propulsez votre architecture grâce au TDD et aux mocks (Agile Tour Montréal 2...
Propulsez votre architecture grâce au TDD et aux mocks (Agile Tour Montréal 2...Propulsez votre architecture grâce au TDD et aux mocks (Agile Tour Montréal 2...
Propulsez votre architecture grâce au TDD et aux mocks (Agile Tour Montréal 2...Elapse Technologies
 
Votre Startup: La réponse à un problème qui mérite une solution
Votre Startup: La réponse à un problème qui mérite une solutionVotre Startup: La réponse à un problème qui mérite une solution
Votre Startup: La réponse à un problème qui mérite une solutionDavender Gupta
 
Motiva, Conférence Talents Marcus Evans 27 nov 2012
Motiva, Conférence Talents Marcus Evans 27 nov 2012Motiva, Conférence Talents Marcus Evans 27 nov 2012
Motiva, Conférence Talents Marcus Evans 27 nov 2012Prof. Zwi Segal
 
Les pratiques des geants du web
Les pratiques des geants du webLes pratiques des geants du web
Les pratiques des geants du webStephen PERIN
 
E marketing Paris presentation - January 29 - 2013
E marketing Paris presentation - January 29 - 2013 E marketing Paris presentation - January 29 - 2013
E marketing Paris presentation - January 29 - 2013 Brightcove
 
Mythes & légendes du digital marketing adobe slides e com 2013
Mythes & légendes du digital marketing adobe slides e com 2013Mythes & légendes du digital marketing adobe slides e com 2013
Mythes & légendes du digital marketing adobe slides e com 2013BY_CONNECT
 
Le canevas de modele d'affaires
Le canevas de modele d'affairesLe canevas de modele d'affaires
Le canevas de modele d'affairesDavender Gupta
 
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...lyonjug
 
Devoxx france-2013-lecons-cloud
Devoxx france-2013-lecons-cloudDevoxx france-2013-lecons-cloud
Devoxx france-2013-lecons-cloudDali Kilani
 
L'agilité chez Jouve via le Behaviour Driven Development
L'agilité chez Jouve via le Behaviour Driven DevelopmentL'agilité chez Jouve via le Behaviour Driven Development
L'agilité chez Jouve via le Behaviour Driven DevelopmentJouve
 
Présentation ontologos hr os diag 2012
Présentation ontologos hr os diag 2012Présentation ontologos hr os diag 2012
Présentation ontologos hr os diag 2012Ontologos
 

Similaire à Code Reviews Devoxx France 2012 (20)

Startup Weekend Québec - Votre heure de gloire!
Startup Weekend Québec - Votre heure de gloire!Startup Weekend Québec - Votre heure de gloire!
Startup Weekend Québec - Votre heure de gloire!
 
Problemes architecturaux courants
Problemes architecturaux courantsProblemes architecturaux courants
Problemes architecturaux courants
 
Le canevas de modele d'affaires
Le canevas de modele d'affairesLe canevas de modele d'affaires
Le canevas de modele d'affaires
 
Accompagnement des startups technologiques
Accompagnement des startups technologiquesAccompagnement des startups technologiques
Accompagnement des startups technologiques
 
Kauffman Fast Trac Techventure, par Davender Gupta
Kauffman Fast Trac Techventure, par Davender GuptaKauffman Fast Trac Techventure, par Davender Gupta
Kauffman Fast Trac Techventure, par Davender Gupta
 
Webdesign, UX et UCD #2
Webdesign, UX et UCD #2Webdesign, UX et UCD #2
Webdesign, UX et UCD #2
 
Cours de Web Design part.2
Cours de Web Design part.2Cours de Web Design part.2
Cours de Web Design part.2
 
Propulsez votre architecture grâce au TDD et aux Mocks (Agile Tour Québec 2012)
Propulsez votre architecture grâce au TDD et aux Mocks  (Agile Tour Québec 2012)Propulsez votre architecture grâce au TDD et aux Mocks  (Agile Tour Québec 2012)
Propulsez votre architecture grâce au TDD et aux Mocks (Agile Tour Québec 2012)
 
Propulsez votre architecture grâce au TDD et aux mocks (Agile Tour Montréal 2...
Propulsez votre architecture grâce au TDD et aux mocks (Agile Tour Montréal 2...Propulsez votre architecture grâce au TDD et aux mocks (Agile Tour Montréal 2...
Propulsez votre architecture grâce au TDD et aux mocks (Agile Tour Montréal 2...
 
Initiation à l’AOP
Initiation à l’AOPInitiation à l’AOP
Initiation à l’AOP
 
Votre Startup: La réponse à un problème qui mérite une solution
Votre Startup: La réponse à un problème qui mérite une solutionVotre Startup: La réponse à un problème qui mérite une solution
Votre Startup: La réponse à un problème qui mérite une solution
 
Motiva, Conférence Talents Marcus Evans 27 nov 2012
Motiva, Conférence Talents Marcus Evans 27 nov 2012Motiva, Conférence Talents Marcus Evans 27 nov 2012
Motiva, Conférence Talents Marcus Evans 27 nov 2012
 
Les pratiques des geants du web
Les pratiques des geants du webLes pratiques des geants du web
Les pratiques des geants du web
 
E marketing Paris presentation - January 29 - 2013
E marketing Paris presentation - January 29 - 2013 E marketing Paris presentation - January 29 - 2013
E marketing Paris presentation - January 29 - 2013
 
Mythes & légendes du digital marketing adobe slides e com 2013
Mythes & légendes du digital marketing adobe slides e com 2013Mythes & légendes du digital marketing adobe slides e com 2013
Mythes & légendes du digital marketing adobe slides e com 2013
 
Le canevas de modele d'affaires
Le canevas de modele d'affairesLe canevas de modele d'affaires
Le canevas de modele d'affaires
 
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
 
Devoxx france-2013-lecons-cloud
Devoxx france-2013-lecons-cloudDevoxx france-2013-lecons-cloud
Devoxx france-2013-lecons-cloud
 
L'agilité chez Jouve via le Behaviour Driven Development
L'agilité chez Jouve via le Behaviour Driven DevelopmentL'agilité chez Jouve via le Behaviour Driven Development
L'agilité chez Jouve via le Behaviour Driven Development
 
Présentation ontologos hr os diag 2012
Présentation ontologos hr os diag 2012Présentation ontologos hr os diag 2012
Présentation ontologos hr os diag 2012
 

Dernier

Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptxTxaruka
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxpopzair
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipM2i Formation
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxssusercbaa22
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...Faga1939
 
Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeBenamraneMarwa
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptssusercbaa22
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.Franck Apolis
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptxMalikaIdseaid1
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxlamourfrantz
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne FontaineTxaruka
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertChristianMbip
 

Dernier (15)

Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptx
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptx
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadership
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
 
Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étude
 
Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.ppt
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptx
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptx
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne Fontaine
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expert
 

Code Reviews Devoxx France 2012

  • 1. Code Reviews One Thing Every Programmer Should Know by Mattias Karlsson Java Champion, JUG Leader & Agile coach Avega Group Sweden ©Copyright 2012
  • 2. Disclaimer My own experience Ma propre expérience I am probably wrong Je me trompe probablement ©Copyright 2012
  • 3. Bio Mattias Karlsson Java Champion, JUG Leader & Agile coach Avega Group Stockholm Sweden @matkar LinkedIn.com/in/mattiask ©Copyright 2012
  • 5. Jfokus Jfokus & Parleys ©Copyright 2012
  • 6. Code Reviews Revue de code One Thing Every Programmer Should Know Une Chose que Chaque Programmeur Devrait Savoir ©Copyright 2012
  • 8. Why? Increase Quality (Améliorer la qualité) Reduce Defects (Réduire les défauts) Increase Team Spirit? (Améliorer l'esprit d'équipe?) ©Copyright 2012
  • 9. Anti-pattern Architects Review Everything Les Architectes Verifient Tout ©Copyright 2012 Photo by dpstyles
  • 10. Pair Programming? Photo Kniberg H by dpstyles ©Copyright 2012
  • 11. Goal Sharing knowledge Le partage des connaissances ©Copyright 2012
  • 12. Code Reviews Code Review Meeting (Réunion de revue de Code) 1-2 hour/week (1-2 heures / semaine) Code Review Day (Journee de revue de Code) Informal brown bag style (Informelle, “Brown Bag”) ©Copyright 2012
  • 14. Preparation Code Conventions (conventions de code) checked by tools (vérifiées par les outils) Tested (Testé) Definition of DONE (Définition de FAIT) ©Copyright 2012
  • 15. Code Review meeting Code Walkthrough (Parcours du code pas à pas) Introduce Review Roles (Revue des rôles) Have a Moderator (Avoir un Modérateur) Take notes (Prendre des notes) Involve Experts (Impliquer les Experts) Involve Newbie’s (Impliquer les Juniors) ©Copyright 2012
  • 16. Mood Learning Mood (Etre en situation d’apprentissage) Open and Respectful (Ouvert et respectueux) Collaborative (Collaboratif) Constructive (Constructive) Don´t be sarcastic! (Ne pas être sarcastique!) Ask Questions (Posez des questions) ©Copyright 2012
  • 17. Things to watch out for Ego Effect / Hurt Feelings (Effet Ego) “I have to contribute..” (Je dois contribuer) Don´t Point Out Spelling Errors (Ne faites pas remarquer les fautes d'orthographe) It´s all about sharing the code (Tout est une question de partage du code) ©Copyright 2012
  • 18. Have Fun Amusez-vous ©Copyright 2012
  • 21. Mattias Karlsson linkedin.com/in/mattiask twitter: @matkar Thanks! mattias.karlsson@avegagroup.se Feedback: #CodeReviews Réaction: #DevoxxFR ©Copyright 2012

Notes de l'éditeur

  1. And about measurement... I can only agre with this.. Numbers of WTF/min is a a good indicator and it will hopefully be less of the if you start with code review.
  2. And about measurement... I can only agre with this.. Numbers of WTF/min is a a good indicator and it will hopefully be less of the if you start with code review.
  3. Thanks (and buy the book It has a lot more tips and trix than this)