Nasza strona używa cookies. Dowiedz się więcej o celu ich używania i zmianie ustawień w przeglądarce. Korzystając ze strony, wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki. Rozumiem

Lament programisty kodującego w parze

Chris Cooney Principal Software Engineer / Sainsbury's
Poznaj bolączki programisty, który ubolewa nad wadami programowania w parach.
Lament programisty kodującego w parze

Pair programming bez wątpienia poprawił średnią jakość kodu w branży. To świetna praktyka, którą stosuję codziennie. Ledwo pamiętam, jak programuje się samodzielnie. Kiedy zaczynam się przy czymś wahać, gdy mój umysł zaczyna zwalniać, mój partner podnosi mnie na duchu i wspólnie dostarczamy na czas kod, który jest dobrze przetestowany, dokładnie omówiony i poprawnie napisany.


A później spoglądam na zakurzone słuchawki...

...i czuję nostalgię. Poczucie jakiegoś braku, jak tęsknota za przyjacielem. Odzywa się we mnie wyczerpany introwertyk, któremu brakuje pracy samemu ze sobą.

Brakuje mi czasów, gdy biuro grało mi w rytmie The Prodigy, Jacka Johnsona lub Gladys Knight. Zamiast tego wysłuchuję przemyśleń kolegów, które po jakimś czasie brzmią jak jednostajny szum. Poprawiła się jakość mojego kodu, nie ma co do tego wątpliwości. Jest to ogromna korzyść. Cena, którą zapłaciłem “zdjęciem słuchawek”. Wracam więc do zer i jedynek, aby uśmierzyć ból.


To działa. Przez pewien czas

Sprawdzam dokładnie każdą funkcję. Piszę kod, który można przekształcić w sztukę Szekspira i mówić do serc pokolenia wykluczonych. Jednak to nie ja napisałem ten kod. Ani ja ani mój partner. To MY. Kod powstał z połączenia naszych myśli. Tworzył się w przestrzeni między nami i klarował się krok po kroku.

To wszystko zaczyna mnie przytłaczać. Z punktu widzenia logiki nie ma się do czego przyczepić. Uderzam pięściami w ściany, ale nie powstaje ani jedna szczelina. Kiedy w końcu poddaję się wyczerpany, mam tylko jedną rzecz do wyszeptania:

Tęsknię za własnymi błędami


To nie jest logiczne

Tęsknię za tym pobieżnym sprawdzaniem, zanim wpiszę git commit -m "did some stuff". Programując samodzielnie, widzisz swoje błędy, odnotowujesz niepowodzenia. Na początku to horror, potem ulga, i… zaczynasz sprawną pracę.

Już słyszę głosy w stylu: Co jeśli nie zauważysz buga, a kod trafi na produkcję? Hmm, naprawdę nie wiem. Prawdopodobnie kosztowałoby to firmę trochę pieniędzy. Ale teraz rozchodzi się o moje osobiste odczucia, a nie o dobru ogółu. To mój lament, a nie “Principia Mathematica”.


Na Boga, kodowanie w samotności to przyjemność

Głośność na maksa, otwarte 35 zakładek w Chromie, wentylator na laptopie zaraz ma odlecieć. Piszesz kod od trzech godzin, a w głowie masz tylko jedną wielką plątaninę myśli. Są nieprzyzwoite i przytłaczające, przesuwają się i tykają jak wskazówka zegara. Wszystko to jest nieefektywne, a jednak nie do opisania piękne.

Szkielet myśli, pospiesznie połączonych i zawieszonych w naelektryzowanej galaretce znajdującej się za dwojgiem zmęczonych i poszukujących oczu. Masz świadomość, czym ryzykujesz. Jesteś o krok od przepaści, ale jesteś programistą… wiesz, co robisz. Słuchasz “Also sprach Zarathustra” Straussa i właśnie zaczęło się crescendo.


To zaczyna działać

To nie moment na zbijanie piątki, bo nikogo nie ma obok Ciebie. Nie śmiejesz się, nawet się nie uśmiechasz. Po prostu się gapisz. To faktycznie działa. Nic nie mówisz i jedynie, co rozbrzmiewa w pokoju, to cisza ziejąca z pustej paczki po chipsach. Powtarzasz tylko, że TO DZIAŁA.

Ten cichy, ciepły blask, który bije z Twojego wnętrza i przyprawia Cię o ciarki. Twój mózg prawie warkocze i wycisza się spowrotem do powolnego, łagodnego buczenia. Robisz wydech.

Z partnerem już robiłbyś commita, patrzyłbyś na scrum board, szukając następnego zadania, opracowując kolejny scenariusz BDD… ale jesteś sam. I przez podniosłą minutę wyobrażasz sobie, że jesteś Zaratustrą, schodzącym po zdobyciu szczytu, niosąc kod, który oświeci tych, którzy go przeczytają.


Wracasz do rzeczywistości

Patrzę na to kod jeszcze raz, kiedy emocje opadają i iskry gasną. Powoli uświadamiam sobie okrutną prawdę. Wiem, że kod nie jest tak dobry, jak mógłby być. Dostrzegam znamiona moich starych błędów. Niejasne nazwy zmiennych, długie funkcje, powtarzalny kod. Pozdrawiają mnie jak starzy przyjaciele.


Co robić dalej?

Jeśli chcemy napisać dobry kod, musimy zmierzyć się z trudnymi prawdami. Pisanie w parze z innym dobrym inżynierem prawdopodobnie poprawi Twój kod. Połączenie z mniej doświadczonym inżynierem sprawi, że oni będą lepsi. Połączenie ze świetnym inżynierem sprawi, że będziesz lepszym specjalistą. Tak to działa i musisz mieć tego świadomość.

Ale jeśli chcesz się trochę zabawić, wypróbuj ten sposób. Wybierz playlistę z dobrą muzą. Odtwarzaj ją na głośnikach lub w słuchawkach. Nie za głośno i nie za cicho. Może weź piwo, wino, soczek… cokolwiek na Ciebie działa.

I wgryź się w naprawdę duży problem. Poprzeklinaj sobie trochę, wierć się i zanurkuj w głąb swoich myśli. Zapytaj Google o to samo na milion sposobów i przewertuj zaułki GitHuba. A kiedy w końcu odniesiesz sukces, gdy kod po uruchomieniu zadziała, przypomnij sobie, że samotny czas, tylko z kodem, jest dla programistów cudowną medytacją.


Oryginał tekstu w języku angielskim przeczytasz tutaj.

Lubisz dzielić się wiedzą i chcesz zostać autorem?

Podziel się wiedzą z 120 tysiącami naszych czytelników

Dowiedz się więcej