Cum să devii committer și chiar ai nevoie de el?

Buna ziua! Numele meu este Dmitry Pavlov, lucrez la GridGainși sunt, de asemenea, un committer și un participant PMC la Apache Ignite și un colaborator la Apache Training. Am susținut recent o prezentare despre munca unui committer la întâlnirea Sberbank cu sursă deschisă. Odată cu dezvoltarea comunității opensource, mulți oameni au început să aibă din ce în ce mai multe întrebări: cum să devină committer, ce sarcini să asume și câte linii de cod trebuie scrise pentru a obține acest rol. Când ne gândim la comisori, ne imaginăm imediat oameni omnipotenți și omniscient cu o coroană pe cap și un volum de „Cod curat” în loc de sceptru. E chiar asa? În postarea mea, voi încerca să răspund la toate întrebările importante despre committers, astfel încât să puteți înțelege dacă aveți într-adevăr nevoie de el.

Cum să devii committer și chiar ai nevoie de el?

Toți nou-veniți în comunitatea opensource au gânduri că nu vor deveni niciodată committers. La urma urmei, pentru mulți, acesta este un rol prestigios care poate fi obținut doar pentru merite deosebite scriind o tonă de cod. Dar nu este atât de simplu. Să aruncăm o privire la committer din perspectiva comunității.

Cine este un committer și de ce este nevoie de unul?

Când creăm un nou produs open source, le permitem întotdeauna utilizatorilor să-l folosească și să-l exploreze, precum și să modifice și să distribuie copii modificate. Dar când are loc distribuția necontrolată a copiilor software cu modificări, nu primim contribuții la baza de cod principal și proiectul nu se dezvoltă. Aici este nevoie de committer, care are dreptul de a colecta contribuțiile utilizatorilor la proiect.

De ce să devii committer?

Să începem cu faptul că angajarea este un plus pentru un CV, iar pentru începătorii în domeniul programării este un plus și mai mare, pentru că de multe ori atunci când aplică pentru un loc de muncă cer exemple de cod.

Al doilea avantaj indubitabil al angajării este oportunitatea de a comunica cu specialiști de top și de a atrage câteva idei interesante din sursa deschisă în proiectul tău. În plus, dacă cunoașteți bine un anumit produs open source, puteți obține un loc de muncă la o companie care îl susține sau îl folosește. Există chiar și o părere că, dacă nu participi la open source, nu vei ajunge la poziții înalte în carieră.

Pe lângă beneficiile în materie de carieră și angajare, angajarea în sine este plăcută. Ești recunoscut de comunitatea profesională, vezi clar rezultatul muncii tale. Nu ca în unele dezvoltări corporative, unde uneori nici măcar nu înțelegeți de ce mutați câmpurile înainte și înapoi în XML.

În comunitățile opensource puteți întâlni specialiști de top precum Linus Torvalds. Dar dacă nu ești așa, nu ar trebui să te gândești că nu ai nimic de făcut acolo - există sarcini de diferite niveluri.

Ei bine, există și bonusuri suplimentare: committers Apache, de exemplu, primesc o licență IntelliJ Idea Ultimate gratuită (deși cu unele restricții).

Ce trebuie să faci pentru a deveni committer?

Este simplu - trebuie doar să te angajezi.

Cum să devii committer și chiar ai nevoie de el?

Dacă crezi că nu există sarcini pentru tine pe proiecte, te înșeli. Doar alăturați-vă comunității care vă interesează și faceți ceea ce are nevoie. Apache Software Foundation are un separat гайд cu cerinţele pentru comitetori.

Ce probleme va trebui să rezolvi?

Cele mai variate - de la dezvoltare la teste de scriere și documentare. Da, da, contribuția testerilor și documentatorilor în comunitate este evaluată în mod egal cu contribuția dezvoltatorilor. Există sarcini non-standard - de exemplu, rularea unui canal YouTube și spunerea altor utilizatori cum utilizați un produs opensource. De exemplu, Apache Software Foundation are un separat pagină, unde se indica ce asistenta este necesara.  

Trebuie să scriu o caracteristică mare pentru a deveni committer?

Nu. Acest lucru nu este deloc necesar. Committerul nu trebuie să scrie tone de cod. Dar dacă ai scris o caracteristică mare, va fi mai ușor pentru comitetul de management al proiectului să te evalueze. Contribuția la comunitate nu se referă doar la funcții, programare și testare. Dacă scrieți o scrisoare și vorbiți despre o problemă, oferiți o soluție argumentată - aceasta este și o contribuție.

Este important să înțelegeți că angajarea înseamnă încredere. Dacă să vă faceți un committer sau nu este decis de oameni la fel ca dvs. pe baza părerilor lor despre dvs. ca persoană care aduce beneficii produsului. Prin urmare, tu, prin acțiunile și faptele tale în comunitate, trebuie să câștigi tocmai această încredere.

Cum să se comporte?

Fii constructiv, pozitiv, politicos și răbdător. Amintiți-vă că în open source toată lumea este voluntar și nimeni nu datorează nimic nimănui. Ei nu vă răspund - așteptați și vă reamintesc despre întrebarea dvs. în 3-4 zile. Ei nu vă răspund întotdeauna - ei bine, sursa deschisă este voluntară.

Cum să devii committer și chiar ai nevoie de el?

Nu cere cuiva să facă ceva pentru tine sau pentru tine. Membrii comunității cu experiență au un instinct pentru astfel de „cerșetori” și devin imediat alergici la cei care doresc să-și împingă munca la ei.

Dacă primești ajutor, e grozav, dar nu abuza de el. Nu ar trebui să scrieți: „Băieți, remediați asta, altfel îmi pierd bonusul anual.” Este mai bine să întrebați unde ar trebui să mergeți în continuare și să ne spuneți ce ați dezgropat deja cu privire la acest bug. Și dacă promiți că vei actualiza wiki-ul pe baza rezultatelor rezolvării problemei, atunci probabilitatea ca ei să-ți răspundă va crește semnificativ.

În sfârșit, citește Codul de conduită si invata a pune intrebari.

Cum să contribui dacă nu ești un committer?

Proiectele folosesc adesea o schemă RTC, în care mai întâi totul trece printr-o revizuire, iar apoi modificările sunt îmbinate în master. Cu această schemă, absolut toată lumea este supusă unei revizuiri, chiar și comisierii. Prin urmare, puteți contribui cu succes la un proiect fără a fi un committer. Și pentru a fi mai ușor să fiți selectați ca noi comitetari, puteți îndruma noi participanți, puteți împărtăși cunoștințe și puteți crea materiale noi.

Diversitatea - beneficiu sau rău?

Diversitate - în înțelegerea Apache Software Foundation, aceasta este, printre altele, afilierea participanților la un proiect opensource de către mai multe companii. Dacă toată lumea este afiliată unei singure organizații, atunci odată cu pierderea interesului față de proiect, toți participanții fug rapid de el. Diversitatea oferă un proiect stabil, pe termen lung, experiență diversă și o gamă largă de opinii ale participanților.

Pentru dragoste sau pentru comoditate?

În proiectele opensource există două tipuri de oameni: cei care lucrează într-o organizație care contribuie la acest produs și cei care lucrează aici din dragoste, adică voluntari. Care dintre ele este mai productivă? De obicei, participanții care susțin produsul de la organizația care contribuie. Pur și simplu au mai mult timp și o motivație clară pentru a ajunge la fundul adevărului, sunt concentrați pe sarcină și mai aproape de utilizator.

Cei care o fac „din dragoste” sunt și ei motivați, dar într-un mod diferit - sunt dornici să studieze proiectul, să facă din lume un loc mai bun. Și tocmai acești participanți sunt cei mai stabili și mai orientați pe termen lung, deoarece cei care au venit în comunitate din proprie inițiativă este puțin probabil să o părăsească într-o singură zi.

Cum să găsim un echilibru între productivitate și stabilitate? Există două opțiuni. Prima opțiune: atunci când participantul lucrează într-o companie care este implicată oficial în acest proiect opensource și face ceva suplimentar în el, din propriul său interes - de exemplu, sprijinirea noilor veniți. A doua opțiune este o companie care a suferit o transformare opensource. De exemplu, atunci când angajații lucrează la proiectul principal de afaceri patru zile pe săptămână, iar în restul timpului lucrează pe open source.

Committer - a fi sau a nu fi?

Cum să devii committer și chiar ai nevoie de el?

Angajarea este un subiect bun și util, dar nu ar trebui să te străduiești în mod special să devii un committer. Acest rol nu este un rol bazat pe cod și nu demonstrează cunoștințele dvs. Singurul lucru care contează este expertiza, adică cunoștințele și experiența pe care le dobândești studiind proiectul, aprofundând în el și ajutându-i pe alții să rezolve probleme.

Sursa: www.habr.com

Adauga un comentariu