20.05.20224 min

Justyna SzatanRedakcja Bulldogjob

Jak wygląda pair programming online

Czy pair programming online różni się od tradycyjnej metody? Sprawdź, jakie są jego wady i zalety.

Jak wygląda pair programming online

Pair programming to metoda pracy w IT znana już od lat 50. ubiegłego wieku. Historię tego modelu zalety i wady oraz zastosowanie w rekrutacji znajdziesz w naszym tekście tutaj. Natomiast jak to wygląda aktualnie w praktyce, możesz sprawdzić tutaj


W tym artykule poczujesz pewny powiew świeżości, ponieważ skupię się na wspólnym programowaniu online — na miarę XXI wieku. Wszakże ze względu na pandemię, przymus pracy zdalnej, digitalizację wszelkich procesów, ale także postępującego nomadyzmu cyfrowego również to zagadnienie musiało zmienić formę.


Zalety pair programmingu online

Przede wszystkim to rozwiązanie umożliwia prace praktycznie z każdego zakątka świata, pod warunkiem dobrego łącza internetowego, dzięki czemu możesz programować tam, gdzie Ci wygodnie. 

Poza zwiększoną produktywnością, dzięki współdzielonych ekranach macie większą kontrolę nad jakością kodu i łatwiej uniknąć błędów. 

Pracując w modelu online, przyczyniasz się do rozwijania środowiska programistycznego opartego o chmurę oraz łączenia się z nim np. z GitHub Codespaces.

Jednocześnie powstało wiele różnych narzędzi, które ułatwiają Twoją pracę i programowanie w parach, jak np.:

  • udostępnianie konsoli partnerowi lub całemu zespołowi,
  • okno kamerek i sprawny voice chat,
  • możliwość kopiowania tekstu z okna drugiej osoby do siebie,
  • interakcja z oknem kompana za pomocą „zdalnego pilota”,
  • obsługa IDE do IDE bez absorbowania nadmiernego procesora,
  • wsparcie AI w inteligentnej asyście dzięki „hostom” czy „IntelliSense” itd.
  • niektóre narzędzia oferują bezpośredni dostęp do API,
  • zestawy testowe, dzięki którym sprawnie będziecie mogli programować w modelu TDD.


Wady wspólnego programowania online

Poza klasyką jak inny rytm pracy i niedopasowanie itp. wersja online niesie ze sobą nieco inne ograniczenia. Przede wszystkim dobre łącze internetowe — które lubi płatać figla. Obecnie bez internetu człowiek czuje się jak bez ręki — a przynajmniej ja się na tym łapię.

Jakoś neta wiąże się też z synchronizacją — zależnie od wybranego narzędzie możecie mieć nieznaczne opóźnienie — idzie się przyzwyczaić, ale z początku może być upierdliwe.

Poza dobrym netem warto zainwestować w wygodne słuchawki z dobrym mikrofonem lub zaaranżować sobie w przestrzeń do komfortowej pracy, byś dobrze słyszał/słyszała swoją „parę”.

Skoro możecie pracować np. z domu, to możecie mieć sporo rozpraszaczy, które mogą Wam przeszkadzać — nawet jeśli nie Tobie, ponieważ jesteś przyzwyczajony, to Twojej parze.


Style programowania w parze zdalnie

Poniżej kilka modeli współpracy, które sprawdzają się w ramach pair programming online.


Bez struktury

Sprawdza się u specjalistów na podobnym poziomie, do wykonania jakiegoś zadania ad hoc. Nie trzymają się ustalonej struktury, co wiąże się z tym, że nie wiedzą jeszcze jak podejść do tematu. Z czasem powinniście płynnie przejść do jednego z poniższych modeli.


Kierowca + nawigator

Mamy z tym modelem do czynienia, gdy jedna osoba zajmuje się pisaniem i szukaniem rozwiązań mechanicznych, natomiast druga (nawigator) sprawdza jakość, architekturę i praktyczne zastosowanie stworzonego kodu.

Też powinno działać przy wdrożeniu nowej osoby, gdzie wejdzie w buty kierowcy, który będzie samodzielnie działał, a ekspert będzie nawigował wszystkie etapy i procesy.

Ten styl pracy odnosi się również do mentoringu (także wstecznego), gdy dzielicie się swoją wiedzą i pomagacie w rozwijaniu skrzydeł partnera.


Ping-Pong

To alternatywa dla stylu kierowcy i nawigatora. Tutaj gracie w ping-ponga, czyli najpierw programuje jedna osoba, testuje swoje dzieło i jak się wykrzaczy — przekazuje inicjatywę swojej parze. Taka regularna zmiana roli pozwala uniknąć znudzenia, które czasem się zdarza w pracy w parze.  Obie strony będą równomiernie zaangażowane, a efekt tej pracy jest wysokiej jakości kodem.

To model preferowany przez doświadczonych specjalistów IT, ponieważ reprezentują zbliżony poziom umiejętności i mogą się uzupełniać.

Również jest zalecany dla dwóch nowicjuszy, ponieważ będą mogli uczyć się wzajemnie, bez spiny kto powinien dawać z siebie więcej niż w relacji np. kierowcy i nawigatora.


Podsumowanie

Zdania, jak praktycznie w każdej dziedzinie są podzielone, ponieważ ta metoda ma zarówno swoich zwolenników, jak i przeciwników. Również pair programming online znalazł zastosowanie w rekrutacji, by sprawdzać na bieżąco umiejętności kandydatów.

Niektórzy przyrównują pracę w parach do swojego rodzaju ubezpieczenia dla zespołu, ponieważ specjaliści współpracują ze sobą, tworzą relację, synchronizują się z czasem i trudniej im podjąć decyzję o odejściu z teamu.

Z drugiej strony praca w parze pozwala stworzyć wysokiej jakości kod, to początki mogą być trudne i cały proces może zajmować więcej czasu. Tutaj mam na myśli model ping-ponga, gdzie każdy specjalista osobno jest w stanie wygenerować więcej kodu — ale wtedy nie ma gwarancji tak wysokiej jakości.

Ostatecznie praca w parach, podobnie jak testy automatyczne, jest jak polisa ubezpieczeniowa: obniża w sposób przewidywalny zyski dzisiaj na rzecz uniknięcia dużych i nagłych kosztów w przyszłości.

Czy miałaś / miałeś okazję pracować w parze online? Podziel się swoimi spostrzeżeniami i opinią o takiej współpracy.

<p>Loading...</p>