2. Tłumaczenie code-review
• Nie ma dobrego
odpowiednika code-review w
języku polskim,
• możliwe tłumaczenia to
dozór kodu, przegląd kodu,
• code-review jest znane także
jako peer-review.
9. Co to jest przegląd kodu?
• Jeden programista piszę kod, a
drugi jest proszony o jego
przegląd,
10. Co to jest przegląd kodu?
• Jeden programista piszę kod, a
drugi jest proszony o jego
przegląd,
• “delikatna” krytyka linijka po
linijce,
11. Co to jest przegląd kodu?
• Jeden programista piszę kod, a
drugi jest proszony o jego
przegląd,
• “delikatna” krytyka linijka po
linijce,
• celem jest kooperacja, a nie usilne
szukanie błędów.
13. Po co code-review jeśli
robię testy jednostkowe?
• Obie rzeczy są po to, aby minimalizować
liczbę błędów,
14. Po co code-review jeśli
robię testy jednostkowe?
• Obie rzeczy są po to, aby minimalizować
liczbę błędów,
• nie wszystko da się prztestować,
15. Po co code-review jeśli
robię testy jednostkowe?
• Obie rzeczy są po to, aby minimalizować
liczbę błędów,
• nie wszystko da się prztestować,
• architektura, zaprojektowanie aplikacji,
16. Po co code-review jeśli
robię testy jednostkowe?
• Obie rzeczy są po to, aby minimalizować
liczbę błędów,
• nie wszystko da się prztestować,
• architektura, zaprojektowanie aplikacji,
• wszyscy w zespole znają lepiej kod aplikacji.
18. Zalety code-review (1)
• Dwie pary oczu znajdują więcej błędów niż
jedna,
uchowanie przed
godzinami debuggowania
senior developer - junior
developer (czarna praca)
19. Zalety code-review (1)
• Dwie pary oczu znajdują więcej błędów niż
jedna,
• znajdowane błędów we wstępnych cyklach pisania aplikacji,
uchowanie przed
godzinami debuggowania
senior developer - junior
developer (czarna praca)
20. Zalety code-review (1)
• Dwie pary oczu znajdują więcej błędów niż
jedna,
• znajdowane błędów we wstępnych cyklach pisania aplikacji,
• zwiększenie pewności, że stworzony kod jest
lepiej zaprojektowany,
uchowanie przed
godzinami debuggowania
senior developer - junior
developer (czarna praca)
21. Zalety code-review (1)
• Dwie pary oczu znajdują więcej błędów niż
jedna,
• znajdowane błędów we wstępnych cyklach pisania aplikacji,
• zwiększenie pewności, że stworzony kod jest
lepiej zaprojektowany,
• utrzymanie czytelności i wysokiej jakości kodu, uchowanie przed
godzinami debuggowania
senior developer - junior
developer (czarna praca)
22. Zalety code-review (1)
• Dwie pary oczu znajdują więcej błędów niż
jedna,
• znajdowane błędów we wstępnych cyklach pisania aplikacji,
• zwiększenie pewności, że stworzony kod jest
lepiej zaprojektowany,
• utrzymanie czytelności i wysokiej jakości kodu,
• zachęca programistów do wzajemnej
uchowanie przed
godzinami debuggowania
senior developer - junior
komunikacji. developer (czarna praca)
23. Zalety code-review (2)
subtelne i niepisane
zasady
wiedza o tym, kto jest w
czym dobry, a gdzie
trzeba się jeszcze komus
przygladac
24. Zalety code-review (2)
• Nauczanie świeżych programistów,
subtelne i niepisane
zasady
wiedza o tym, kto jest w
czym dobry, a gdzie
trzeba się jeszcze komus
przygladac
25. Zalety code-review (2)
• Nauczanie świeżych programistów,
• dzielenie się wiedzą i doświadczeniem,
subtelne i niepisane
zasady
wiedza o tym, kto jest w
czym dobry, a gdzie
trzeba się jeszcze komus
przygladac
26. Zalety code-review (2)
• Nauczanie świeżych programistów,
• dzielenie się wiedzą i doświadczeniem,
• uczenie się z błędów bez psucia niczego,
subtelne i niepisane
zasady
wiedza o tym, kto jest w
czym dobry, a gdzie
trzeba się jeszcze komus
przygladac
27. Zalety code-review (2)
• Nauczanie świeżych programistów,
• dzielenie się wiedzą i doświadczeniem,
• uczenie się z błędów bez psucia niczego,
• stworzenie zaufania,
subtelne i niepisane
zasady
wiedza o tym, kto jest w
czym dobry, a gdzie
trzeba się jeszcze komus
przygladac
28. Zalety code-review (2)
• Nauczanie świeżych programistów,
• dzielenie się wiedzą i doświadczeniem,
• uczenie się z błędów bez psucia niczego,
• stworzenie zaufania,
• alternatywa dla kodowania w parach. subtelne i niepisane
zasady
wiedza o tym, kto jest w
czym dobry, a gdzie
trzeba się jeszcze komus
przygladac
33. Rzeczywistość code-review
• Trudny do wprowadzenia,
• większość programistów nie lubi
krytyki,
• korzyści nie są zauważalne od
razu,
• publiczne przeglądy kodu zabierają
za dużo czasu,
34. Rzeczywistość code-review
• Trudny do wprowadzenia,
• większość programistów nie lubi
krytyki,
• korzyści nie są zauważalne od
razu,
• publiczne przeglądy kodu zabierają
za dużo czasu,
• niezależne przeglądy kodu
duplikują pracę.
35. Fakty o code-review
Kiedy ser wlet otrzymuje
więcej niż 20 requestów
na sekundę to pojawia
się deadlock pomiędzy
A.java:128 a B.java:56
36. Fakty o code-review
• Przeglądy kodu nie ujawniają krytycznych
błędów,
Kiedy ser wlet otrzymuje
więcej niż 20 requestów
na sekundę to pojawia
się deadlock pomiędzy
A.java:128 a B.java:56
37. Fakty o code-review
• Przeglądy kodu nie ujawniają krytycznych
błędów,
• programiści stają się bardziej uczciwi,
Kiedy ser wlet otrzymuje
więcej niż 20 requestów
na sekundę to pojawia
się deadlock pomiędzy
A.java:128 a B.java:56
38. Fakty o code-review
• Przeglądy kodu nie ujawniają krytycznych
błędów,
• programiści stają się bardziej uczciwi,
• trzeba spędzić więcej czasu, żeby
uczynić kod bardziej czytelnym.
Kiedy ser wlet otrzymuje
więcej niż 20 requestów
na sekundę to pojawia
się deadlock pomiędzy
A.java:128 a B.java:56
41. 3 podejścia do code-
review
• Brak przeglądu kodu,
• nieblokujące przeglądy kodu,
42. 3 podejścia do code-
review
• Brak przeglądu kodu,
• nieblokujące przeglądy kodu,
• sprawdzenie następuje zazwyczaj po wprowadzeniu kodu do
repozytorium,
43. 3 podejścia do code-
review
• Brak przeglądu kodu,
• nieblokujące przeglądy kodu,
• sprawdzenie następuje zazwyczaj po wprowadzeniu kodu do
repozytorium,
• takie właśnie lubimy :),
44. 3 podejścia do code-
review
• Brak przeglądu kodu,
• nieblokujące przeglądy kodu,
• sprawdzenie następuje zazwyczaj po wprowadzeniu kodu do
repozytorium,
• takie właśnie lubimy :),
• blokujące przeglądy kodu,
45. 3 podejścia do code-
review
• Brak przeglądu kodu,
• nieblokujące przeglądy kodu,
• sprawdzenie następuje zazwyczaj po wprowadzeniu kodu do
repozytorium,
• takie właśnie lubimy :),
• blokujące przeglądy kodu,
• nic nie jest wprowadzanie do repozytorium dopóki nie jest
sprawdzone,
46. 3 podejścia do code-
review
• Brak przeglądu kodu,
• nieblokujące przeglądy kodu,
• sprawdzenie następuje zazwyczaj po wprowadzeniu kodu do
repozytorium,
• takie właśnie lubimy :),
• blokujące przeglądy kodu,
• nic nie jest wprowadzanie do repozytorium dopóki nie jest
sprawdzone,
• takich nie lubimy :(.
47. 3 podejścia do code-
review
• Brak przeglądu kodu,ogóle nie lubimy
tego w
• nieblokujące przeglądy kodu,
• sprawdzenie następuje zazwyczaj po wprowadzeniu kodu do
repozytorium,
• takie właśnie lubimy :),
• blokujące przeglądy kodu,
• nic nie jest wprowadzanie do repozytorium dopóki nie jest
sprawdzone,
• takich nie lubimy :(.
50. Nieblokujące przeglądy
kodu
• Brak blokady repozytorium,
• nie trzeba siedzieć i czekać na przegląd,
51. Nieblokujące przeglądy
kodu
• Brak blokady repozytorium,
• nie trzeba siedzieć i czekać na przegląd,
• programista dokonuje przeglądu wtedy, kiedy ma
na to czas,
52. Nieblokujące przeglądy
kodu
• Brak blokady repozytorium,
• nie trzeba siedzieć i czekać na przegląd,
• programista dokonuje przeglądu wtedy, kiedy ma
na to czas,
• wejdzie mu to w nawyk tak, jak pisanie testów,
53. Nieblokujące przeglądy
kodu
• Brak blokady repozytorium,
• nie trzeba siedzieć i czekać na przegląd,
• programista dokonuje przeglądu wtedy, kiedy ma
na to czas,
• wejdzie mu to w nawyk tak, jak pisanie testów,
• 10 sekund poświęcone pisaniu komentarza
ułatwia znacząco jego czytanie,
54. Nieblokujące przeglądy
kodu
• Brak blokady repozytorium,
• nie trzeba siedzieć i czekać na przegląd,
• programista dokonuje przeglądu wtedy, kiedy ma
na to czas,
• wejdzie mu to w nawyk tak, jak pisanie testów,
• 10 sekund poświęcone pisaniu komentarza
ułatwia znacząco jego czytanie,
• zdrowy nawyk, ćwiczenie umysłowe,
55. Nieblokujące przeglądy
kodu
• Brak blokady repozytorium,
• nie trzeba siedzieć i czekać na przegląd,
• programista dokonuje przeglądu wtedy, kiedy ma
na to czas,
• wejdzie mu to w nawyk tak, jak pisanie testów,
• 10 sekund poświęcone pisaniu komentarza
ułatwia znacząco jego czytanie,
• zdrowy nawyk, ćwiczenie umysłowe,
• poznawanie innych stylów/idiomów kodowania.
56. Prostsza forma code-
review Pomysł na współdzielone
pliki, workspace’y
działające w czasie
rzeczywistym.
57. Prostsza forma code-
review Pomysł na współdzielone
pliki, workspace’y
działające w czasie
rzeczywistym.
• Wirutalne przeglądy kodu,
58. Prostsza forma code-
review Pomysł na współdzielone
pliki, workspace’y
działające w czasie
rzeczywistym.
• Wirutalne przeglądy kodu,
• wiadomości przesyłane pomiędzy
programistami są zorientowane na kod,
59. Prostsza forma code-
review Pomysł na współdzielone
pliki, workspace’y
działające w czasie
rzeczywistym.
• Wirutalne przeglądy kodu,
• wiadomości przesyłane pomiędzy
programistami są zorientowane na kod,
• wprowadzenie komunikacji dające poczucie
jakby inni programiści byli obok siebie.
60. O czym jest ta
magisterka?
Jest to system wspomagający dokonywanie wirtualnych
przeglądów kodu.
82. Dlaczego warto to
zrobić?
• Nieoceniony dla rozproszonych zespołów
programistycznych,
83. Dlaczego warto to
zrobić?
• Nieoceniony dla rozproszonych zespołów
programistycznych,
• przeglądy online zamiast czytania gazeta.pl,
84. Dlaczego warto to
zrobić?
• Nieoceniony dla rozproszonych zespołów
programistycznych,
• przeglądy online zamiast czytania gazeta.pl,
• szybkie przygotowanie kodu do przeglądu,
85. Dlaczego warto to
zrobić?
• Nieoceniony dla rozproszonych zespołów
programistycznych,
• przeglądy online zamiast czytania gazeta.pl,
• szybkie przygotowanie kodu do przeglądu,
• komentowanie inline,
86. Dlaczego warto to
zrobić?
• Nieoceniony dla rozproszonych zespołów
programistycznych,
• przeglądy online zamiast czytania gazeta.pl,
• szybkie przygotowanie kodu do przeglądu,
• komentowanie inline,
• metryka, możliwość odpowiedzi.
93. Harmonogram
do końca listopada:
zebranie wymagań i opracowanie
koncepcji
do końca pierwszego semestru:
implementacja
do końca kwietnia:
papierkowa robota