Hogyan lehetünk elkötelezettek, és valóban szüksége van rá?

Helló! A nevem Dmitrij Pavlov, itt dolgozom GridGain, emellett elkötelezett és PMC résztvevő vagyok az Apache Ignite programban, valamint közreműködő az Apache Trainingben. Nemrég a Sberbank nyílt forráskódú találkozóján tartottam egy prezentációt egy committer munkájáról. Az opensource közösség fejlődésével sokakban egyre gyakrabban merültek fel kérdések: hogyan lehet committerré válni, milyen feladatokat kell vállalni, és hány sornyi kódot kell megírni ahhoz, hogy megkapjuk ezt a szerepet. Ha az elkövetőkre gondolunk, rögtön mindenható és mindentudó embereket képzelünk el, fejükön koronával, jogar helyett „Tiszta kóddal” kötettel. így van? Hozzászólásomban megpróbálok válaszolni minden fontos kérdésre az committerekkel kapcsolatban, hogy megértsd, valóban szükséged van-e rá.

Hogyan lehetünk elkötelezettek, és valóban szüksége van rá?

Az opensource közösségben minden újoncnak van olyan gondolata, hogy soha nem lesz elkötelezett. Hiszen sokak számára ez egy rangos szerep, amit csak egy tonna kód megírásával lehet külön érdemekért megszerezni. De ez nem ilyen egyszerű. Vessünk egy pillantást az elkötelezettre a közösség szemszögéből.

Ki az elkötelezett és miért van rá szükség?

Amikor új nyílt forráskódú terméket hozunk létre, mindig lehetővé tesszük a felhasználók számára, hogy azt használhassák és felfedezhessék, valamint módosítsák és terjeszthessék a módosított példányokat. De ha a szoftverpéldányok ellenőrizetlen terjesztése történik változásokkal, nem kapunk hozzájárulást a fő kódbázishoz, és a projekt nem fejlődik. Itt van szükség a committerre, akinek joga van beszedni a felhasználói hozzájárulásokat a projekthez.

Miért legyél elkötelezett?

Kezdjük azzal, hogy az elköteleződés plusz az önéletrajzhoz, a programozás terén kezdőknek pedig még nagyobb plusz, mert sokszor egy állásra jelentkezéskor kérnek kódpéldákat.

Az elköteleződés második kétségtelen előnye, hogy kiváló szakemberekkel kommunikálhat, és néhány remek ötletet nyílt forráskódból vonhat be projektjébe. Ráadásul, ha jól ismersz egy bizonyos nyílt forráskódú terméket, akkor elhelyezkedhetsz egy azt támogató vagy használó cégnél. Még az a vélemény is létezik, hogy ha nem vesz részt a nyílt forráskódban, akkor nem jut el magas karrierpozíciókhoz.

A karrier és munkavállalás előnyei mellett az elköteleződés önmagában is kellemes. A szakmai közösség elismert, tisztán látod munkád eredményét. Nem úgy, mint egyes vállalati fejlesztéseknél, ahol néha nem is érted, miért mozgatod össze-vissza a mezőket XML-ben.

A nyílt forráskódú közösségekben olyan kiváló szakemberekkel találkozhat, mint Linus Torvalds. De ha nem vagy ilyen, akkor ne gondold, hogy ott nincs mit csinálnod – vannak különböző szintű feladatok.

Nos, vannak további bónuszok is: az Apache elkötelezettjei például ingyenes IntelliJ Idea Ultimate licencet kapnak (bár bizonyos korlátozásokkal).

Mit kell tenni, hogy elkötelezett legyen?

Egyszerű – csak el kell köteleznie magát.

Hogyan lehetünk elkötelezettek, és valóban szüksége van rá?

Ha azt gondolja, hogy a projektekben nincs feladat az Ön számára, akkor téved. Csak csatlakozzon az Önt érdeklő közösséghez, és tegye azt, amire szüksége van. Az Apache Software Foundation különálló Hyde kötelezõkre vonatkozó követelményekkel.

Milyen problémákat kell majd megoldania?

A legváltozatosabb - a fejlesztéstől a tesztek és a dokumentáció írásáig. Igen, igen, a közösségben a tesztelők és a dokumentálók hozzájárulását a fejlesztők hozzájárulásával egyenlő alapon értékelik. Vannak nem szabványos feladatok – például egy YouTube-csatorna működtetése, és a többi felhasználónak elmondhatod, hogyan használsz egy nyílt forráskódú terméket. Például az Apache Software Foundationnek van egy külön oldal, ahol fel van tüntetve, hogy milyen segítségre van szükség.  

Kell írnom egy nagy szolgáltatást, hogy elkötelezett legyek?

Nem. Ez egyáltalán nem szükséges. A committernek nem kell rengeteg kódot írnia. De ha írtál egy nagy jellemzőt, akkor a projektmenedzsment bizottság könnyebben értékeli majd. A közösséghez való hozzájárulás nem csak a funkciókról, a programozásról és a tesztelésről szól. Ha levelet ír és beszél egy problémáról, kínáljon indokolt megoldást – ez is hozzájárulás.

Fontos megérteni, hogy az elkötelezettség a bizalomról szól. Azt, hogy elköteleződjenek-e vagy sem, a hozzád hasonló emberek döntik el, az alapján, ahogyan a termék hasznát hozó személynek tekintik. Ezért neked a közösségben tett cselekedeteiddel és tetteiddel éppen ezt a bizalmat kell megnyerned.

Hogyan kell viselkedni?

Légy konstruktív, pozitív, udvarias és türelmes. Ne feledje, hogy a nyílt forráskódban mindenki önkéntes, és senki sem tartozik senkinek semmivel. Nem válaszolnak Önnek – várjon, és 3-4 napon belül emlékeztesse a kérdésére. Nem mindig válaszolnak neked – nos, a nyílt forráskód önkéntes.

Hogyan lehetünk elkötelezettek, és valóban szüksége van rá?

Ne kérj senkit, hogy tegyen valamit érted vagy érted. A tapasztalt közösség tagjai megérzik az ilyen „koldusokat”, és azonnal allergiásak lesznek azokra, akik rájuk akarják tolni a munkájukat.

Ha kapsz segítséget, az nagyszerű, de ne élj vissza vele. Nem szabad ezt írni: "Srácok, javítsátok ki, különben elveszítem az éves bónuszt." Jobb, ha megkérdezi, merre menjen tovább, és mondja el, mit ásott már ki ezzel a hibával kapcsolatban. És ha megígéri, hogy frissíti a wikit a probléma megoldásának eredményei alapján, akkor annak valószínűsége, hogy válaszolni fognak, jelentősen megnő.

Végül olvass Magatartási kódex és tanulni kérdezni.

Hogyan járulj hozzá, ha nem vagy elkötelezett?

A projektek gyakran RTC sémát használnak, ahol először minden átmegy egy felülvizsgálaton, majd a változtatásokat egyesítik a masterbe. Ezzel a rendszerrel abszolút mindenkit felülvizsgálnak, még az elkövetőket is. Ezért sikeresen hozzájárulhat egy projekthez anélkül, hogy elkötelezett lenne. És annak érdekében, hogy könnyebben kiválasszon új elkötelezettséget, új résztvevőket mentorálhat, megoszthatja tudását és új anyagokat készíthet.

Sokszínűség – haszon vagy kár?

Sokszínűség – az Apache Software Foundation felfogása szerint ez többek között a több vállalat nyílt forráskódú projektjének résztvevőinek hovatartozása. Ha mindenki csak egy szervezethez kapcsolódik, akkor a projekt iránti érdeklődés elvesztésével minden résztvevő gyorsan elmenekül tőle. A sokszínűség hosszú távú, stabil projektet, sokrétű tapasztalatot és a résztvevők véleményének széles körét biztosítja.

Szerelemből vagy kényelemből?

A nyílt forráskódú projektekben kétféle ember létezik: akik egy ehhez a termékhez hozzájáruló szervezetben dolgoznak, és akik itt a szeretetért dolgoznak, vagyis önkéntesek. Melyik a produktívabb? Általában azok a résztvevők, akik támogatják a terméket a közreműködő szervezettől. Egyszerűen több idejük és egyértelmű motivációjuk van arra, hogy rájöjjenek az igazság mélyére, a feladatra koncentrálnak és közelebb vannak a felhasználóhoz.

Azok is motiváltak, akik „szeretetből” csinálják, de más módon – szívesen tanulmányozzák a projektet, hogy jobb hellyé tegyék a világot. És pontosan az ilyen résztvevők stabilabbak és hosszú távúak, mert akik saját kezdeményezésükből jöttek a közösségbe, nem valószínű, hogy egy nap alatt elhagyják azt.

Hogyan lehet megtalálni az egyensúlyt a termelékenység és a stabilitás között? Két lehetőség van. Az első lehetőség: amikor a résztvevő egy olyan cégnél dolgozik, amely hivatalosan is részt vesz ebben a nyílt forráskódú projektben, és saját érdekéből valami pluszt tesz benne - például újoncokat támogat. A második lehetőség egy nyílt forráskódú átalakuláson átesett vállalat. Például amikor az alkalmazottak a fő üzleti projekten dolgoznak heti négy napon, a fennmaradó időben pedig nyílt forráskóddal dolgoznak.

Elkötelezett – lenni vagy nem lenni?

Hogyan lehetünk elkötelezettek, és valóban szüksége van rá?

Az elköteleződés jó és hasznos téma, de nem szabad kifejezetten arra törekedni, hogy elköteleződj. Ez a szerepkör nem kódalapú szerepkör, és nem bizonyítja az Ön tudását. Az egyetlen dolog, ami számít, a szakértelem, vagyis az a tudás és tapasztalat, amelyet a projekt tanulmányozása, elmélyülése és mások problémamegoldásában szerzett tapasztalatok révén szerez.

Forrás: will.com

Hozzászólás