Code Review c.d.

Code review, czyli przeglądanie kodu innego programisty w zespole, uważam za jedną z najlepszych technik tworzenia dobrego kodu i osobistego rozwoju – niezależnie od tego, czy ktoś przegląda moją pracę, czy ja jego.

Pamiętam jak dziś swoje pierwsze code review. Ukończyłem pisanie jednego dosyć sporego modułu. Przyzwyczajony do tego, że zawsze po prostu commitowałem swój kod, który działał, myślałem, że jestem prawdziwym artystą, a mój kod jest perfekcyjny. Och, jakże byłem głupi. Review zakończyło się zwrotką moich bazgrołów wraz z 42 review itemami do poprawy. Tak – 42. Do końca życia będę pamiętał tę przeklętą liczbę.

Było mi strasznie wstyd. Myślałem, że zapadnę się pod ziemię. Otóż uważałem, że programiście aspirującemu w tamtym czasie do miana mid developera coś takiego nie przystoi. Cały czas biłem się z myślami – „Co powiedzą inni, kiedy zobaczą to review?”. Moja duma została urażona. I bardzo dobrze!

Oczywiście, po przełknięciu tej gorzkiej pigułki wziąłem się do roboty. Podczas reworku pojawiło się mnóstwo pytań, a z tych pytań wywiązywała się dyskusja. Dowiedziałem się wtedy wielu rzeczy, dlaczego warto „to” zrobić inaczej, jakie konsekwencje niesie kod, który wcześniej napisałem. Udało mi się też wybronić chyba z 3 itemów.

Po jakimś czasie dostałem swoje pierwsze review do zrobienia. Było to przeglądanie kodu seniora, w tamtym czasie swego rodzaju „guru”. Zastanawiałem się na co mogę zwrócić mu uwagę. Starałem się ze wszystkich sił, kiedy coś wydawało mi się bez sensu – szukałem w Internecie odpowiedzi na moje pytania. Po całym procesie okazało się, że znalazłem 5 rzeczy do poprawy – po dyskusjach wybroniłem również 3.

Zauważyłem wtedy bardzo ważną rzecz – przyswajałem ogromną ilość wiedzy – czy jako reviewer, czy jako reviewed. Dyskusje, pytania, odpowiedzi – co, jak i dlaczego. Wszystko to prowadziło do poprawiania jakości mojego kodu i wiedzy.

Patrząc z perspektywy czasu, jestem niesamowicie zadowolony z tego, że prawie w każdym zespole, w którym dane mi było później pracować, praktycznie 90% było przeglądanego. Prowadzi to do bardzo szybkiego rozwoju, ponieważ człowiek spotyka się nie tylko ze swoimi problemami, ale też problemami innych. I musi je rozwiązać, żeby być w stanie skomentować kod drugiej osoby. To znowu prowadzi do dyskusji, która poszerza nasze horyzonty.

Przy code review bardzo ważnym jest to, żeby potrafić przyznać się do błędu i przede wszystkim akceptować krytykę – nieważne czy jesteś junior/middle/senior developerem, architektem, czy team leaderem. Są to kluczowe aspekty, bez których cały proces nie będzie mieć najmniejszego sensu.

Więc do boju! Nie bójcie się! 🙂

5 uwag do wpisu “Code Review c.d.

Zostaw komentarz

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Google+

Komentujesz korzystając z konta Google+. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Connecting to %s