SlideShare a Scribd company logo
1 of 32
Download to read offline
Code Review 
jak zyskać więcej niż tracić? 
Sebastian Malaca
Co to jest Code Review? 
Code Review jest techniką polegającą na 
systematycznym przeglądzie kodu 
źródłowego. 
Ma na celu znalezienie i poprawienie 
błędów przeoczonych na etapie jego 
pisania, poprawiając tym samym jakość 
oprogramowania oraz umiejętności 
programisty. 
[Wikipedia.org]
Code Review wpływa na: 
• Jakość kodu i oprogramowania
Code Review wpływa na: 
• Jakość kodu i oprogramowania 
• Wymiana wiedzy nt. projektu
Code Review wpływa na: 
• Jakość kodu i oprogramowania 
• Wymiana wiedzy nt. projektu 
• Umiejętności developerów
Code Review wpływa na: 
• Jakość kodu i oprogramowania 
• Wymiana wiedzy nt. projektu 
• Umiejętności developerów 
• Czytelność kodu
Code Review to: 
• „Konstruktywne” komentarze
Code Review to: 
• „Konstruktywne” komentarze 
• Detale
Code Review to: 
• „Konstruktywne” komentarze 
• Detale 
• Niekończące się dyskusje
Code Review to: 
• „Konstruktywne” komentarze 
• Detale 
• Niekończące się dyskusje 
• Błędy „projektowe”
Code Review to: 
• „Konstruktywne” komentarze 
• Detale 
• Niekończące się dyskusje 
• Błędy „projektowe” 
• Wydłużony proces developmentu
Pozbyć się 
Code Review?!
Wyrzuć to, co nie potrzebne! 
• Standardy kodowania
Wyrzuć to, co nie potrzebne! 
• Standardy kodowania 
• Jałowe komentarze
Wyrzuć to, co nie potrzebne! 
• Standardy kodowania 
• Jałowe komentarze 
• Etap projektowania
Co jest ważne, a co nie? 
• Każdy pisze inaczej
Co jest ważne, a co nie? 
• Każdy pisze inaczej 
• Sugestie, a błędy
Co jest ważne, a co nie? 
• Każdy pisze inaczej 
• Sugestie, a błędy 
• Pomyśl, nim coś napiszesz
Co jest ważne, a co nie? 
• Każdy pisze inaczej 
• Sugestie, a błędy 
• Pomyśl, nim coś napiszesz 
• Nie pisz komentarzy!
Co jest ważne, a co nie? 
• Każdy pisze inaczej 
• Sugestie, a błędy 
• Pomyśl, nim coś napiszesz 
• Nie pisz komentarzy! 
• #whatever
Kod, który warto oglądać 
• Nie każda zmiana jest tak samo ważna
Kod, który warto oglądać 
• Nie każda zmiana jest tak samo ważna 
• Nie każdy musi oglądać Twój kod
Kod, który warto oglądać 
• Nie każda zmiana jest tak samo ważna 
• Nie każdy musi oglądać Twój kod 
• Każdy powinien oglądać kod
Odwieczne problemy 
• Post- czy pre- commit?
Odwieczne problemy 
• Post- czy pre- commit? 
• Z toolem czy bez?
Odwieczne problemy 
• Post- czy pre- commit? 
• Z toolem czy bez? 
• Kiedy poprawiać?
Pułapki i problemy 
• Komentarze, a niezrozumienie kodu
Pułapki i problemy 
• Komentarze, a niezrozumienie kodu 
• Cross-team review i pair programming
Pułapki i problemy 
• Komentarze, a niezrozumienie kodu 
• Cross-team review i pair programming 
• Kwestia sporne i arbiter
Pytania ?!
Dziękuję 
http://sebastian-malaca.blogspot.com/ 
http://twitter.com/SebastianMalaca

More Related Content

Viewers also liked

Radosław Ziemba: GPON or xWDM as technology for connecting business subscribes
Radosław Ziemba: GPON or xWDM as technology for connecting business subscribesRadosław Ziemba: GPON or xWDM as technology for connecting business subscribes
Radosław Ziemba: GPON or xWDM as technology for connecting business subscribesPROIDEA
 
PLNOG14: Evolved Programmable Network, architektura dla sieci operatorskich -...
PLNOG14: Evolved Programmable Network, architektura dla sieci operatorskich -...PLNOG14: Evolved Programmable Network, architektura dla sieci operatorskich -...
PLNOG14: Evolved Programmable Network, architektura dla sieci operatorskich -...PROIDEA
 
4Developers 2015: Property-based testing w języku Scala - Paweł Grajewski
4Developers 2015: Property-based testing w języku Scala - Paweł Grajewski4Developers 2015: Property-based testing w języku Scala - Paweł Grajewski
4Developers 2015: Property-based testing w języku Scala - Paweł GrajewskiPROIDEA
 
JDD2014: Conversation patterns for software professionals - Michał Bartyzel
JDD2014: Conversation patterns for software professionals - Michał BartyzelJDD2014: Conversation patterns for software professionals - Michał Bartyzel
JDD2014: Conversation patterns for software professionals - Michał BartyzelPROIDEA
 
PLNOG14: Internet w pojazdach - Paweł Wachelka
PLNOG14: Internet w pojazdach - Paweł WachelkaPLNOG14: Internet w pojazdach - Paweł Wachelka
PLNOG14: Internet w pojazdach - Paweł WachelkaPROIDEA
 
4Developers 2015: Enterprise makeover. Be a good web citizen, deliver continu...
4Developers 2015: Enterprise makeover. Be a good web citizen, deliver continu...4Developers 2015: Enterprise makeover. Be a good web citizen, deliver continu...
4Developers 2015: Enterprise makeover. Be a good web citizen, deliver continu...PROIDEA
 
PLNOG 13: Paweł Kuśmierski: How Akamai and Prolexic mitigate (D)DoS attacks
PLNOG 13: Paweł Kuśmierski: How Akamai and Prolexic mitigate (D)DoS attacksPLNOG 13: Paweł Kuśmierski: How Akamai and Prolexic mitigate (D)DoS attacks
PLNOG 13: Paweł Kuśmierski: How Akamai and Prolexic mitigate (D)DoS attacksPROIDEA
 
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...PROIDEA
 
Incredible seminar on marketing
Incredible seminar on marketingIncredible seminar on marketing
Incredible seminar on marketingNeel Patel
 
JDD2015: In English Efficient HTTP applications on the JVM with Ratpack - Álv...
JDD2015: In English Efficient HTTP applications on the JVM with Ratpack - Álv...JDD2015: In English Efficient HTTP applications on the JVM with Ratpack - Álv...
JDD2015: In English Efficient HTTP applications on the JVM with Ratpack - Álv...PROIDEA
 
4Developers 2015: Sylius - E-Commerce framework for PHP - Pawel Jedrzejewski
4Developers 2015: Sylius - E-Commerce framework for PHP - Pawel Jedrzejewski4Developers 2015: Sylius - E-Commerce framework for PHP - Pawel Jedrzejewski
4Developers 2015: Sylius - E-Commerce framework for PHP - Pawel JedrzejewskiPROIDEA
 
PLNOG15: Data Center migration in practice - Tomasz Jarlaczyk
PLNOG15: Data Center migration in practice - Tomasz JarlaczykPLNOG15: Data Center migration in practice - Tomasz Jarlaczyk
PLNOG15: Data Center migration in practice - Tomasz JarlaczykPROIDEA
 
CONFidence 2015: when something overflowing... - Peter Hlavaty
CONFidence 2015: when something overflowing... - Peter HlavatyCONFidence 2015: when something overflowing... - Peter Hlavaty
CONFidence 2015: when something overflowing... - Peter HlavatyPROIDEA
 

Viewers also liked (16)

Radosław Ziemba: GPON or xWDM as technology for connecting business subscribes
Radosław Ziemba: GPON or xWDM as technology for connecting business subscribesRadosław Ziemba: GPON or xWDM as technology for connecting business subscribes
Radosław Ziemba: GPON or xWDM as technology for connecting business subscribes
 
PLNOG14: Evolved Programmable Network, architektura dla sieci operatorskich -...
PLNOG14: Evolved Programmable Network, architektura dla sieci operatorskich -...PLNOG14: Evolved Programmable Network, architektura dla sieci operatorskich -...
PLNOG14: Evolved Programmable Network, architektura dla sieci operatorskich -...
 
4Developers 2015: Property-based testing w języku Scala - Paweł Grajewski
4Developers 2015: Property-based testing w języku Scala - Paweł Grajewski4Developers 2015: Property-based testing w języku Scala - Paweł Grajewski
4Developers 2015: Property-based testing w języku Scala - Paweł Grajewski
 
JDD2014: Conversation patterns for software professionals - Michał Bartyzel
JDD2014: Conversation patterns for software professionals - Michał BartyzelJDD2014: Conversation patterns for software professionals - Michał Bartyzel
JDD2014: Conversation patterns for software professionals - Michał Bartyzel
 
PLNOG14: Internet w pojazdach - Paweł Wachelka
PLNOG14: Internet w pojazdach - Paweł WachelkaPLNOG14: Internet w pojazdach - Paweł Wachelka
PLNOG14: Internet w pojazdach - Paweł Wachelka
 
4Developers 2015: Enterprise makeover. Be a good web citizen, deliver continu...
4Developers 2015: Enterprise makeover. Be a good web citizen, deliver continu...4Developers 2015: Enterprise makeover. Be a good web citizen, deliver continu...
4Developers 2015: Enterprise makeover. Be a good web citizen, deliver continu...
 
PLNOG 13: Paweł Kuśmierski: How Akamai and Prolexic mitigate (D)DoS attacks
PLNOG 13: Paweł Kuśmierski: How Akamai and Prolexic mitigate (D)DoS attacksPLNOG 13: Paweł Kuśmierski: How Akamai and Prolexic mitigate (D)DoS attacks
PLNOG 13: Paweł Kuśmierski: How Akamai and Prolexic mitigate (D)DoS attacks
 
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
PLNOG14: Ocena wydajności i bezpieczeństwa infrastruktury operatora telekomu...
 
Incredible seminar on marketing
Incredible seminar on marketingIncredible seminar on marketing
Incredible seminar on marketing
 
Mughals empire
Mughals empireMughals empire
Mughals empire
 
JDD2015: In English Efficient HTTP applications on the JVM with Ratpack - Álv...
JDD2015: In English Efficient HTTP applications on the JVM with Ratpack - Álv...JDD2015: In English Efficient HTTP applications on the JVM with Ratpack - Álv...
JDD2015: In English Efficient HTTP applications on the JVM with Ratpack - Álv...
 
4Developers 2015: Sylius - E-Commerce framework for PHP - Pawel Jedrzejewski
4Developers 2015: Sylius - E-Commerce framework for PHP - Pawel Jedrzejewski4Developers 2015: Sylius - E-Commerce framework for PHP - Pawel Jedrzejewski
4Developers 2015: Sylius - E-Commerce framework for PHP - Pawel Jedrzejewski
 
PLNOG15: Data Center migration in practice - Tomasz Jarlaczyk
PLNOG15: Data Center migration in practice - Tomasz JarlaczykPLNOG15: Data Center migration in practice - Tomasz Jarlaczyk
PLNOG15: Data Center migration in practice - Tomasz Jarlaczyk
 
Entrepreneurship and business management
Entrepreneurship and business managementEntrepreneurship and business management
Entrepreneurship and business management
 
CONFidence 2015: when something overflowing... - Peter Hlavaty
CONFidence 2015: when something overflowing... - Peter HlavatyCONFidence 2015: when something overflowing... - Peter Hlavaty
CONFidence 2015: when something overflowing... - Peter Hlavaty
 
Power and politics
Power and politicsPower and politics
Power and politics
 

Similar to JDD2014: Code review - jak zyskać więcej niż tracić? - Sebastian Malaca

Code review
Code reviewCode review
Code reviewDivante
 
Code Review budujące relacje w zespole
Code Review budujące relacje w zespoleCode Review budujące relacje w zespole
Code Review budujące relacje w zespoleMaciej Mortek
 
Dwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędówDwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędówMichal Lukaszewski
 
Aula polska - Psychologia i Code Review
Aula polska -  Psychologia i Code ReviewAula polska -  Psychologia i Code Review
Aula polska - Psychologia i Code ReviewTomasz Grzemski
 
4Developers: Sebastian Malaca- Spotkania, na których chcesz być obecny
4Developers: Sebastian Malaca- Spotkania, na których chcesz być obecny4Developers: Sebastian Malaca- Spotkania, na których chcesz być obecny
4Developers: Sebastian Malaca- Spotkania, na których chcesz być obecnyPROIDEA
 
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...Future Processing
 
Jak Twoja strona moze wygenerować niespodziewane koszta? WordUp Kraków
Jak Twoja strona moze wygenerować niespodziewane koszta? WordUp KrakówJak Twoja strona moze wygenerować niespodziewane koszta? WordUp Kraków
Jak Twoja strona moze wygenerować niespodziewane koszta? WordUp KrakówTomasz Dziuda
 
Praktyczne code reviews - PHPConPl
Praktyczne code reviews - PHPConPlPraktyczne code reviews - PHPConPl
Praktyczne code reviews - PHPConPlSebastian Marek
 
Matuesz Olejarka - Realia testów bezpieczeństwa
Matuesz Olejarka - Realia testów bezpieczeństwaMatuesz Olejarka - Realia testów bezpieczeństwa
Matuesz Olejarka - Realia testów bezpieczeństwakraqa
 
Codesushi: Code review z korzyściami dla recenzenta i recenzowanego
Codesushi: Code review z korzyściami dla recenzenta i recenzowanego Codesushi: Code review z korzyściami dla recenzenta i recenzowanego
Codesushi: Code review z korzyściami dla recenzenta i recenzowanego Krzysztof (Chris) Ozog
 
4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...
4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...
4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...PROIDEA
 
Code Review, czyli przegląd kodu - prezentacja tematu pracy magisterskiej
Code Review, czyli przegląd kodu -  prezentacja tematu pracy magisterskiejCode Review, czyli przegląd kodu -  prezentacja tematu pracy magisterskiej
Code Review, czyli przegląd kodu - prezentacja tematu pracy magisterskiejWiktor Gworek
 
4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzeb...
4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzeb...4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzeb...
4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzeb...PROIDEA
 
Girls in It - Front-end & Back-end. Jak zacząć
Girls in It - Front-end & Back-end. Jak zacząćGirls in It - Front-end & Back-end. Jak zacząć
Girls in It - Front-end & Back-end. Jak zacząćmonterail
 
Lilianna Poradzińska, Białystok kwiecień 2013
Lilianna Poradzińska, Białystok kwiecień 2013Lilianna Poradzińska, Białystok kwiecień 2013
Lilianna Poradzińska, Białystok kwiecień 2013GeekGirlsCarrots
 
Od środowiska developerskiego do produkcji [PL]
Od środowiska developerskiego do produkcji [PL]Od środowiska developerskiego do produkcji [PL]
Od środowiska developerskiego do produkcji [PL]Droptica
 

Similar to JDD2014: Code review - jak zyskać więcej niż tracić? - Sebastian Malaca (18)

Code review
Code reviewCode review
Code review
 
Code Review budujące relacje w zespole
Code Review budujące relacje w zespoleCode Review budujące relacje w zespole
Code Review budujące relacje w zespole
 
Dwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędówDwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędów
 
Aula polska - Psychologia i Code Review
Aula polska -  Psychologia i Code ReviewAula polska -  Psychologia i Code Review
Aula polska - Psychologia i Code Review
 
4Developers: Sebastian Malaca- Spotkania, na których chcesz być obecny
4Developers: Sebastian Malaca- Spotkania, na których chcesz być obecny4Developers: Sebastian Malaca- Spotkania, na których chcesz być obecny
4Developers: Sebastian Malaca- Spotkania, na których chcesz być obecny
 
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
 
Jak Twoja strona moze wygenerować niespodziewane koszta? WordUp Kraków
Jak Twoja strona moze wygenerować niespodziewane koszta? WordUp KrakówJak Twoja strona moze wygenerować niespodziewane koszta? WordUp Kraków
Jak Twoja strona moze wygenerować niespodziewane koszta? WordUp Kraków
 
Praktyczne code reviews - PHPConPl
Praktyczne code reviews - PHPConPlPraktyczne code reviews - PHPConPl
Praktyczne code reviews - PHPConPl
 
Matuesz Olejarka - Realia testów bezpieczeństwa
Matuesz Olejarka - Realia testów bezpieczeństwaMatuesz Olejarka - Realia testów bezpieczeństwa
Matuesz Olejarka - Realia testów bezpieczeństwa
 
Lean Hardware
Lean HardwareLean Hardware
Lean Hardware
 
Codesushi: Code review z korzyściami dla recenzenta i recenzowanego
Codesushi: Code review z korzyściami dla recenzenta i recenzowanego Codesushi: Code review z korzyściami dla recenzenta i recenzowanego
Codesushi: Code review z korzyściami dla recenzenta i recenzowanego
 
4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...
4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...
4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...
 
Untitled
UntitledUntitled
Untitled
 
Code Review, czyli przegląd kodu - prezentacja tematu pracy magisterskiej
Code Review, czyli przegląd kodu -  prezentacja tematu pracy magisterskiejCode Review, czyli przegląd kodu -  prezentacja tematu pracy magisterskiej
Code Review, czyli przegląd kodu - prezentacja tematu pracy magisterskiej
 
4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzeb...
4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzeb...4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzeb...
4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzeb...
 
Girls in It - Front-end & Back-end. Jak zacząć
Girls in It - Front-end & Back-end. Jak zacząćGirls in It - Front-end & Back-end. Jak zacząć
Girls in It - Front-end & Back-end. Jak zacząć
 
Lilianna Poradzińska, Białystok kwiecień 2013
Lilianna Poradzińska, Białystok kwiecień 2013Lilianna Poradzińska, Białystok kwiecień 2013
Lilianna Poradzińska, Białystok kwiecień 2013
 
Od środowiska developerskiego do produkcji [PL]
Od środowiska developerskiego do produkcji [PL]Od środowiska developerskiego do produkcji [PL]
Od środowiska developerskiego do produkcji [PL]
 

JDD2014: Code review - jak zyskać więcej niż tracić? - Sebastian Malaca

  • 1. Code Review jak zyskać więcej niż tracić? Sebastian Malaca
  • 2. Co to jest Code Review? Code Review jest techniką polegającą na systematycznym przeglądzie kodu źródłowego. Ma na celu znalezienie i poprawienie błędów przeoczonych na etapie jego pisania, poprawiając tym samym jakość oprogramowania oraz umiejętności programisty. [Wikipedia.org]
  • 3. Code Review wpływa na: • Jakość kodu i oprogramowania
  • 4. Code Review wpływa na: • Jakość kodu i oprogramowania • Wymiana wiedzy nt. projektu
  • 5. Code Review wpływa na: • Jakość kodu i oprogramowania • Wymiana wiedzy nt. projektu • Umiejętności developerów
  • 6. Code Review wpływa na: • Jakość kodu i oprogramowania • Wymiana wiedzy nt. projektu • Umiejętności developerów • Czytelność kodu
  • 7. Code Review to: • „Konstruktywne” komentarze
  • 8. Code Review to: • „Konstruktywne” komentarze • Detale
  • 9. Code Review to: • „Konstruktywne” komentarze • Detale • Niekończące się dyskusje
  • 10. Code Review to: • „Konstruktywne” komentarze • Detale • Niekończące się dyskusje • Błędy „projektowe”
  • 11. Code Review to: • „Konstruktywne” komentarze • Detale • Niekończące się dyskusje • Błędy „projektowe” • Wydłużony proces developmentu
  • 12.
  • 13. Pozbyć się Code Review?!
  • 14. Wyrzuć to, co nie potrzebne! • Standardy kodowania
  • 15. Wyrzuć to, co nie potrzebne! • Standardy kodowania • Jałowe komentarze
  • 16. Wyrzuć to, co nie potrzebne! • Standardy kodowania • Jałowe komentarze • Etap projektowania
  • 17. Co jest ważne, a co nie? • Każdy pisze inaczej
  • 18. Co jest ważne, a co nie? • Każdy pisze inaczej • Sugestie, a błędy
  • 19. Co jest ważne, a co nie? • Każdy pisze inaczej • Sugestie, a błędy • Pomyśl, nim coś napiszesz
  • 20. Co jest ważne, a co nie? • Każdy pisze inaczej • Sugestie, a błędy • Pomyśl, nim coś napiszesz • Nie pisz komentarzy!
  • 21. Co jest ważne, a co nie? • Każdy pisze inaczej • Sugestie, a błędy • Pomyśl, nim coś napiszesz • Nie pisz komentarzy! • #whatever
  • 22. Kod, który warto oglądać • Nie każda zmiana jest tak samo ważna
  • 23. Kod, który warto oglądać • Nie każda zmiana jest tak samo ważna • Nie każdy musi oglądać Twój kod
  • 24. Kod, który warto oglądać • Nie każda zmiana jest tak samo ważna • Nie każdy musi oglądać Twój kod • Każdy powinien oglądać kod
  • 25. Odwieczne problemy • Post- czy pre- commit?
  • 26. Odwieczne problemy • Post- czy pre- commit? • Z toolem czy bez?
  • 27. Odwieczne problemy • Post- czy pre- commit? • Z toolem czy bez? • Kiedy poprawiać?
  • 28. Pułapki i problemy • Komentarze, a niezrozumienie kodu
  • 29. Pułapki i problemy • Komentarze, a niezrozumienie kodu • Cross-team review i pair programming
  • 30. Pułapki i problemy • Komentarze, a niezrozumienie kodu • Cross-team review i pair programming • Kwestia sporne i arbiter