Wątek przeniesiony 2014-10-28 14:59 z Społeczność przez dzek69.

Programowanie w parach

0

Witam,

Co myslicie o zastosowania metody programowanie w dwie osoby?

Na jednym komputerze z 2-3 monitorami, programuje para programistow o

zblizonej wiedzy. Moga sie nauczyc czegos od siebie? Wymienia sie wiedza?

Czy po tygodniu zjedza sie wzajemnie? :) Jestem mega ciekaw waszych opienii.

4

W jaki sposób na jednym komputerze? Zjedzą się, walcząc o klawiaturę.

0

Doslownie dwoch gosci dostaje te same zadanie i walcza z nim na jednym komputerze. U mnie w pracy, gdzie pracuje tak jest. I zastanawiam sie czy to dobre rozwiazanie? To nie moj pomysl. Ja jestem za programowaniem w parach jak ktos kogos uczy, albo w jedna osobe nie idzie rozwiazac problemu i potrzebujesz pomocy kogos doswiadczonego, ale tak, zeby siedziec kilka godzin dziennie razem przez kilka tygdoni, wrecz miesiecy to dla mnie osobiscie bzdura, ale nie wiem... nie moj pomysl. Ogolnie dla mnie zla...

0

@ShookTea nie odpowiadaj w tematach o których nie masz pojęcia. O tym świadczy Twój post.
Jeśli natomiast próbowałeś być zabawny to Ci się nie udało, próbuj dalej.

Co do autora, to programowanie w parach brzmi fajnie, ale w praktyce jaka firma się na to godzi? To jest narzut dwóch programistów na jedną pracę. I wcale nie wykonuje się jej dużo szybciej. Oznacza to, większa koszta produkcji, przy prawie tej samej wydajności.
Jakość zaś jest zależna od innych czynników:

  • Poziomu wiedzy tych programistów. Jeśli są beznadziejni to nic im nie da, że razem programują - wręcz sobie zaszkodzą.
  • Narzutu czasowego na dane zadanie

Programowanie w parach to według mnie wyidealizowany model, który nigdzie nie jest stosowany. Na dodatek jego zalety według mnie są mocno niejasne i zbyt często pomijane są inne ważniejsze kwestie.

Poza tym - zawsze gdy jest taka potrzeba można poprosić kolegę, by pomógł nam w czymś, ale nie musimy od razu tego nazywać metodyką lub też stosować do wszystkiego co robimy, gdyż to marnotrastwo.

0

@ZimnyB Pracuje w uk, najwidoczniej ich stac, ale przyznam, ze tez mnie to zastanawia. Doslownie traca kase. Programisci sa tam poziomie middle, od 1 do 3 lat doswiadczenia, moze od 2-3lat, ale dla mnie zal. Nie kumam idei. A powoli pracodawca zaczyna mnie zachecac do takiej pracy, co mnie nie samowicie irytuje. I nie wiem czy wypada wspomniec, ze taka opcja dla mnie jest mega nie przyswajalna. Nie godze sie i wuj :) Tak byc nie moze... :) prawda Panowie ?

0

Pracodawcy nie dziwię się, jak się godzą. Starczy kupić 2x mniej sprzętu :D

0

@ubuntuser: ale przecież "oszczędność" na sprzęcie po miesiącu będzie stratą (bo druga wypłata "zje" po miesiącu cenę sprzętu), bo roboty 2x szybciej mieć nie będziesz

1

Programowanie w parach jest słabe, bo musiałbym oglądać z gościem te same śmieszne koty :/

1

Ja programowalem tak 3 miesiace...
Nie polecam. Niektore zalozenia sie zgadzaja, ale sadze ze programisci sie wypalaja duzo szybciej. Ja osobiscie mialem dosc i juz nie moglem wiecej

8

Trochę was nieogarniam. Przeciez pair-programming to jest dość znana sprawa a wy tutaj piszecie jakby to był jakis wybryk natury. Teoretyczne plusy takiego podejścia:

  • Szybkie rozwiązywanie problemów. Często zdarza się że trafiamy na "ścianę" wynikającą z tego że za mocno się "wczuliśmy" i nie widzimy oczywistego rozwiązania problemu. Drugi koder, który aktualnie nie klepie w klawiaturę, ma lepszą pozycję do ogarnięcia całości rozwiązania. Poza tym co dwie głowy to nie jedna.
  • Wyższa jakość kodu. Raz, bo wstyd nam pisać brzydko jak ktoś patrzy. Dwa, bo mamy code-review już w trakcie pisania.
  • Możliwość zamiany miejscami kiedy sie zmęczymy. Zamiast iść na herbatę i grać pół godziny na play station ;)
  • Mniejsza szansa na głupie bugi, bo łatwiej takie wypatrzeć w 2 osoby niż samemu
  • Ciągła wymiana wiedzy. Jest spora szansa że jeden koder czegoś nie zna / nie wie / nie używał a drugi juz tak. Zamiast siedzieć pół godziny z tutorialem i dokumentacją następuje zamiana miejsc. Jednocześnie taka wymiana wiedzy jest szybsza i efektywniejsza niż czytanie randomowego tutoriala.

Teoretycznie bo nikt chyba nie zrobił jeszcze żadnych powszechnych badań na dużej próbie, żeby sprawdzić czy to faktycznie działa.

1

A jak to wygląda od strony praktycznej. Siedzi się przy jednym kompie? A nie lepiej by było, żeby jednak programiści siedzieli przy swoich stanowiskach na zasadzie udostępniania pulpitu? Mam takie doświadczenie z kolegą przy pracy nad projektem magisterskim. Kolega patrzył jak piszę i wychwycił parę błędów w locie. Nie czułem przy tym żadnego dyskomfortu pracy

3

Czy po tygodniu zjedza sie wzajemnie?
Jak znam siebie to bym się nie „zjadał” tylko siedział i się gapił wymądrzając się od czasu do czasu, by po tygodniu być oskarżonym o to że nic nie robię ;-)

0

Pair programing polega na tym, że masz pilota (guide) i kierowcę (driver).
Pilot mówi co i jak ma być zrobione, a kierowca wklepuje to na klawiaturze, jeśli rozumie co do niego mówi pilot.
Jeśli przezwycięży się wewnętrzne opory to efekty są całkiem dobre, ale dłużej niż 2h nie da się wytrzymać. Dobra metoda by wdrażać kogoś w projekt.
Często praktykuje się to na coding dojo.

Z własnej praktyki, mogę powiedzieć, że praca idzie szybciej niż można się spodziewać, bo trudniej rozproszyć uwagę przez inne bodźce.

0

Ja widzę tego plusy, oczywiście z pewnymi zastrzeżeniami. Obecnie pracuje z gościem po 8h dziennie już z 2 mc. I powoli mam gość. Może nie tyle co się wypalam, bo mam jeszcze większą ochotę do programowania... tyle, że nie mam jak dość do tego kodu. Hiszpan z którym programuje, jak wypuszczę tylko na chwilę klawiaturę do zabiera ją w swoją stronę. Z grzeczności nie robię tego samego. Uważam, że to nie kulturalne. Tylko wyrażam swoją opinie. Tutaj jest dobrze, ale tutaj trzeba zmienić etc. Ale zeszło się dwa mc, a ja mało co sam klikam... wkurza mnie to niesamowicie. A najgorsza sprawa jest taka, że to wyszło to kierownika. A z nim się nie zadziera, gość nie lubi jak się mu zwraca uwagę i mówi, ze to jest źle. Innego rozwiązania nie widzę. Trzeba zagadać z kierownikiem i donieść, że jego teoria jest denna. Pair programming jest spoko, ale 2-3 h raz albo dwa w tyg. To jest moje zdanie :)

2

Beznadziejne. Nie wyobrażam sobie pracy w ten sposób. Spędzać z jednym gościem 8h. dziennie? Czyli więcej niż z dziewczyną? Oj nie... to chyba tylko dla ludzi bardzo lubiących pracę w grupie. Ja bym na to nie poszedł (oczywiście gdybym miał wybór ;P)

0

Jestem JUNIOREM i mniej więcej 2x w tygodniu ktoś ze mną siedzi ze 2h i mówi, co pisać, lub odwrotnie - ja mówię jak to widzę i dlaczego a druga osoba pisze. Druga osoba to zawsze senior i ja się przy tym bardzo dużo uczę, bo zawsze mi coś pokażą. Ale to pewnie pair programming nie jest :P

0

@Adam Boduch nie podoba mi sie to w pyte. I cos czuje, ze jutro jest juz ten dzien kiedy musze dogadac sie z kierownikiem, tylko, ze to bylo zalozenie od samego poczatku. Kierownik ma takie zalozenie, ze kazdy pracyje w parach :D smieszne w pyte, ale jak gosc mi placi (trzyma mnie za jajca), to troche glupio sie przeciwstawiac :D nie ? :D Ponoc dobra bajera moze wszystko. I dlatego tez tu pisze, zeby nazbierac liste argumentow, z ktora moge wyskoczyc do kierownika.

0

Raz firma zorganizowała "Coding Dojo", na którym losowa para odstawiała pair programing.
Presja jaka wywołuje obserwacja przez grupę paraliżowała większość ludzi, więc szybko z tego zrezygnowali.
Ale jak pisałem, bez publiczki sprawdza się to lepiej niż można się spodziewać, trzeba tylko przezwyciężyć niechęć.

0

W PP powinno sie pisac maks 6h dziennie (podobno dluzej sie nie da wydajnie), do tego co wazne powinno sie zmieniac osoby, czyli powiedzmy codziennie z kims innym. Z moich obserwacji, to dziala przy skomplikowanych zadaniach, gdzie nie ma sie razem kompletu potrzebnej wiedzy, albo bardzo odmienne umiejetnosci. Mozna sie tez wtedy duzo nauczyc. Ja osobiscie lubie, ale z drobna modyfikacja - w dowolnym momencie kazdy z nas moze "odskoczyc" i zaczac samemu cos badac cyz probowac (z zalozeniem ze po chwili sie wraca do pracy razem). Przez cala ostatnia iteracje pracowalem wlasnie z doskoku jako ktos do PP i jako czesc zespolu gdzie pracowalismy razem, zrobilismy 40% punktow agilowych wiecej niz zwykle (ze wzgledu na urodziny dziecka nie wiedzialem keidy znikne, a nie chcialem zostawic duzego, trudnego rozgrzebanego zadania).

0

W, dajmy na to, pięcioosobowym zespole, programowanie w parach może się sprawdzić, jeśli codziennie robi to inna para. Wtedy po pierwsze można lepiej poznać styl (a także słabe i mocne strony) wszystkich kolegów, po drugie nie znudzić się sobą wzajemnie.

0
somekind napisał(a):

lepiej poznać styl wszystkich kolegów, po drugie nie znudzić się sobą wzajemnie.

Jak Ci się jakiś kolega znudzi to zawsze możesz sobie znaleźć kolejnego :*

1 użytkowników online, w tym zalogowanych: 0, gości: 1