A páros programozás több, mint manapság a technológiai cégekben elterjedt divatszó. A páros programozási módszerek jelentős előnyökkel járhatnak a fejlesztők számára a mindennapi munkájuk során! Bár minden történetnek mindig két oldala van, ezt a cikket azért írtam, hogy enyhítsem a páros programozással kapcsolatos gondjaidat.

A páros programozás során két fejlesztő dolgozik együtt egy számítógépen, hogy kódot írjon. A leggyakoribb, hogy az egyik személy kódot ír, míg a másik személy irányítja és segíti az áramlási és logikai döntéseket – mintegy légiforgalmi irányítóként, aki kommunikál a pilótával, miközben repül a gépen.

Ha személyesen dolgozik, rendkívül egyszerű találkozni egy másik fejlesztővel a program párosításához. A mai távoli világban azonban számos határ akadályozhatja a zökkenőmentes páros programozási munkafolyamatot. Szerencsére számos eszköz létezik, amelyek segítenek ebben.

Egyszerű megoldások:

A távoli páros programozás legalapvetőbb megoldása bármely olyan konferencia-alkalmazás használata, amely lehetővé teszi a képernyő megosztását. Amikor az egyik személy kódot ír, ez megkönnyíti a másik személy számára, hogy vizuálisan kövesse.

  • Az olyan alkalmazások, mint a Microsoft Teams, a Zoom vagy a Google Hangouts remek kiindulópontot jelentenek.

További együttműködési megoldások:

Alternatív megoldásként egyes alkalmazások lehetővé teszik mindkét felhasználó számára a kód szerkesztését, ami a legjobb távoli páros programozási élményt nyújtja. Nyugodtan tekintse meg az alábbi linkeket, ha többet szeretne megtudni az indulásról.

  • Visual Studio Live Share (a VS Code-dal működik)
  • Floobits (Atom & Sublime szöveggel működik)
  • "CodeTogether.com" (az IntelliJ-vel és az Eclipse-szel működik)

Valószínűleg egyszerűbb, ha mindent egyedül kódolok? Igaz?

Sok fejlesztő időigényes, unalmasnak vagy csak egy újabb találkozónak tekintette a páros programozást. Gyakran előfordulnak olyan fejlesztők is, akik egyszerűen öntudatosak a kódjukkal kapcsolatban, és szívesebben dolgoznának egyedül. A konvenciók elhitetik velünk, hogy ha két ember végez egy feladatot, az sokkal kevésbé időigényes, mint amikor megosztunk és győzünk. Úgy értem, szó szerint létezik egy hatékonyságon alapuló algoritmus, amelyet az oszd meg és uralkodj technika köré terveztek. Szóval meg tudom érteni ezt a nézőpontot…

Tegyünk azonban egy lépést hátra. A páros programozás nem olyan egyszerű, mint két agy segítségével meghatározni, melyik szám nagyobb. A hatékony és olvasható „SZÁRAZ” működő kód fejlesztéséhez szükséges gondolkodási folyamat nagy kihívást jelenthet! Személyes véleményem szerint a páros programozás legalább sokféle gondolkodást kínál. Egy probléma megoldásának végtelen módja lehet, és minden embernek más a megközelítése és a kódolási stílusa. Íme, a páros programozás néhány előnye:

  • Javítja a kód minőségét – ha egy második szemcsoport ugyanazon a kódon dolgozik, az hamarabb észleli a hibákat, és csökkenti a szükséges szerkesztési időt. Ez nemcsak időt takarít meg, de segít megelőzni, hogy a kellemetlen hibák eltömítsék a munkafolyamatot.
  • Kerüli a tudástárolókat – ha két különböző hátterű ember találkozik egy probléma megoldása érdekében, mindenki más-más készségeket hoz az asztalra. Ez lehetőséget ad a tudásmegosztásra is olyan fejlesztők között, akik jellemzően különböző alkalmazásfunkciókon dolgoznak.
  • Javítja a csapat kohézióját – a páros programozás kiváló módja annak, hogy felgyorsítson új munkaerőt, megismerje a vállalaton belüli más csapatok fejlesztőit, valamint saját hálózati és kommunikációs készségeit építse ki! Hú, beszéljünk a többfeladatos működésről?

Szóval akkor mindig csak párosítsam a programot?

Nos, az egyszerű válasz: nem. Legyen stratégiai, amikor úgy dönt, hogy párba áll, és dolgozik egy problémán. Tedd ezt szokássá vagy heti alkalommá, és tarts észben néhány tippet az alábbiak közül:

Párosítás, amikor…

  • előnyös két különböző készségkészletet kihasználni a problémára
  • új fejlesztőt mentorál, vagy rendszerváltást hajt végre
  • van ideje újra felkeresni egy régi problémát, vagy javítani egy korábbi megoldáson
  • csak próbálsz megszabadulni!

NE párosítson, ha…

  • a probléma nagyon időérzékeny, és nem ad elegendő időt az együttműködésre
  • a tapasztalati szintenlényeges eltérés van
  • egy személy nem ismeri a szükséges nyelvet vagy keretrendszert
  • jelentős fennakadások lesznek, amelyek megszakítják a munkafolyamatot

Új fejlesztőként, aki megtanulja a köteleket, én személy szerint élveztem a páros programozási élményt. Könnyű elakadni a megszokott gondolati sémákban, mert azt gondolja, hogy csak egy helyesmódja van a dolgoknak. A páros programozás kibővítette kreativitásomat, és lehetőséget adott arra, hogy minden alkalommal bővítsem tudásomat.

A nap végén a páros programozás mindkét fél elkötelezettségét követeli meg. Minden embernek hajlandónak kell lennie a hozzájárulásra, és érdemi hozzájárulást nyújtani, függetlenül a tapasztalati szinttől. Amikor egy ember egyszerűen megcsinálja az egészet, akkor ismét visszatérünk a kezdetekhez, nem igaz? Boldog kódolást!