blog.testowka.pl

Jak uczyć się szybciej?

opublikowany przez 20, Lis, 2012, w kategoriach Inne

Na naszych szkoleniach z automatyzacji testów zaczęliśmy ostatnio stosować programowanie w parach. Zrobiliśmy tak, gdyż, stanęliśmy w pewnym momencie przed wyzwaniem w jaki sposób możemy obniżyć cenę szkolenia tak, by było ono dostępne dla większej ilości osób. Pierwsza myśl (w tym przypadku jak do tej pory najlepsza) obniżamy koszty! Jak więc obniżyć koszty czterodniowego szkolenia? Najlepiej skrócić je do 3 dni… Ale jak to?

Podstawowym celem naszych warsztatów było i jest przekazanie testerom, którzy najczęściej nigdy wcześniej nie mieli do czynienia z automatyzacją testów i programowaniem wiedzy, która wystarczy im do tego, by zaraz po szkoleniu rozpocząć automatyzację. Przeprowadziliśmy wcześniej już kilka szkoleń czterodniowych dla różnych grup i zauważyliśmy, że materiał który mamy jest przeważnie w sam raz na te cztery dni intensywnych warsztatów.
Pierwsze co zrobiliśmy to rewizja tego, czy to co jest w programie szkolenia na pewno jest tym, co tam musi się znaleźć. Udało nam się kilka rzeczy ze sobą połączyć. Podczas następnego czterodniowego szkolenia podstawowy materiał skończył się jakieś 2 godziny przed planowanym zakończeniem warsztatów. To już nieźle ale nadal za mało. Szukaliśmy kolejnych sposobów na to by przyspieszyć przyswajanie wiedzy i przypomnieliśmy sobie o programowaniu w parach.

Następne szkolenie było już zaplanowane jako trzydniowe dlatego też staliśmy trochę pod ścianą i Pair programming okazał się być naszą ostatnią szansą i nadzieja. I… udało się! Skończyliśmy cały materiał w niecałe 3 dni.

Jak to wyglądało? Po krótkim wstępie teoretycznym podzieliliśmy kilkunastoosobową grupę na pary – a w zasadzie poprosiliśmy ich żeby się sami podzielili. Jako, że było tam kilka osób, które wcześniej już ze sobą pracowały a ponadto wcześniej poprosiliśmy, by wszyscy opowiedzieli o swoich doświadczeniach w programowaniu i automatyzacji jednym z kryteriów doboru w pary był poziom umiejętności. Zgodnie z naszymi wcześniejszymi doświadczeniami i tym co na temat programowania w parach czytaliśmy i słyszeliśmy najbardziej efektywne są pary w których developerzy są na mniej więcej tym samym poziomie.

Pracowaliśmy w dwie osoby przy jednym komputerze. Co 15 minut odliczanych na timerze, który robił „Beep!” zmieniała się osoba przy klawiaturze.

Efekty były zaskakujące. Już od pierwszych minut zaskoczył nas gwar dyskusji i zapał z jakim do wykonywania ćwiczeń przystąpili uczestnicy szkolenia. Pod koniec pierwszego dnia już wiedzieliśmy, że jest dobrze – przerobiliśmy część materiału, którą zazwyczaj kończyliśmy pod koniec drugiego dnia!

Mniej więcej po obiedzie trzeciego dnia warsztatów zostało nam jeszcze sporo czasu na powtórki i dodatkowe pytania, oraz wspólne rozwiązywanie konkretnych problemów uczestników szkolenia.

Kilka uwag odnośnie Pair Programming:

  1. Odpowiedni dobór par jest kluczowy – osoby na podobnym poziomie uczą się najszybciej. W sytuacji gdy mamy jedną znacznie lepszą osobę nudzi się ona i frustruje, gdy ta druga jest przy klawiaturze. Gdy zaś ta mocniejsza osoba programuje słabsza nie nadąża i nie rozumie niektórych rzeczy. Dwie osoby na podobnym poziomie wspólnie odkrywają nowe rzeczy i obydwu przynosi to satysfakcje, a jednocześnie zawsze są pewne drobne różnice w umiejętnościach którymi się wymieniają.
  2. Stałe interwały czasowe pozwalały nadać rytm pracy. Częste zmiany przy klawiaturze sprawiały, że osoba siedząca z boku musiała cały czas aktywnie uczestniczyć w programowaniu jako nawigator, gdyż gdyby choć na chwilę straciła uwagę wdrożenie się gdy przyjdzie jej kolej trwało by zbyt długo.
  3. Praca w parach jest bardzo męcząca! Co 45 minut robiliśmy 10-15 minutową przerwę a mimo to po 6 godzinach wszyscy byliśmy już wykończeni.
  4. Pair Programming skutecznie blokuje wszelkie rozpraszacze. Każde sprawdzanie maili, przeglądanie facebook czy inne bzdury były bardzo skutecznie zwalczane wewnątrz par. Nie było po prostu na to czasu tym bardziej, że naokoło inne pary szły do przodu z materiałem.
  5. Dużo mniej problemów. Tak jak na początku przypuszczaliśmy dzięki wspólnemu programowaniu było znacznie mniej pytań niż zwykle – większość „podstawowych” problemów była szybko rozwiązywana w parze przy użyciu google lub manuali.

Podsumowując – polecam programowanie w parach i nie tylko programowanie wszędzie tam, gdzie potrzebujecie przyspieszyć proces uczenia.


1 Trackback or Pingback for this entry

Skomentuj