Hvordan man bliver en committer, og om det virkelig er nødvendigt for dig

Hej! Jeg hedder Dmitrij Pavlov, og jeg arbejder hos GridGain, jeg er også committer og medlem af PMC i Apache Ignite samt bidragsyder til Apache Training. For nylig præsenterede jeg et foredrag om arbejdet som committer ved et meetup hos Sberbank om open source. I takt med udviklingen af open source-samfundet er der flere, der har begyndt at spørge, hvordan man bliver committer, hvilke opgaver man skal påtage sig, og hvor mange linjer kode man skal skrive for at få denne rolle. Når vi tænker på committers, forestiller vi os straks almægtige og vidende personer med en krone på hovedet og en bog med titlen "Ren kode" i stedet for et scepter. Er det virkelig sådan? I mit indlæg vil jeg forsøge at besvare alle de vigtige spørgsmål om committers, så du kan forstå, om det virkelig er noget for dig.

Hvordan man bliver en committer, og om det virkelig er nødvendigt for dig

Alle nybegyndere i open source-samfundet har tanker om, at de aldrig vil kunne blive committers. For mange er det en prestigefyldt rolle, der kun kan opnås gennem særlige bedrifter og ved at skrive tonsvis af kode. Men det er ikke så simpelt. Lad os se på committers fra samfundets perspektiv.

Hvem er en committer, og hvad er deres rolle?

Når vi skaber et nyt open source-produkt, tillader vi altid brugerne at bruge og udforske det samt at modificere og distribuere modificerede kopier. Men når der sker ukontrolleret spredning af ændrede kopier af softwaren, får vi ikke bidrag til den primære kodebase, og projektet udvikler sig ikke. Her træder den såkaldte committer ind, som har ret til at samle brugernes bidrag til projektet.

Hvorfor blive committer?

Lad os starte med, at det at være committer er et plus i CV'et, og for nybegyndere inden for programmering er det en endnu større fordel, da der ofte kræves eksempler på kode, når man søger job.

En anden ubestridelig fordel ved at være committer er muligheden for at kommunikere med top-specialister og trække nogle fantastiske idéer fra open source ind i sit eget projekt. Desuden, hvis du er godt bekendt med et open source-produkt, kan du få arbejde i en virksomhed, der støtter eller bruger det. Der findes endda den opfattelse, at hvis man ikke deltager i open source, så har man ikke mulighed for at nå høje karrierestillinger.

Udover karrieremulighederne og beskæftigelsen er det en fornøjelse i sig selv at være kommitter. Det professionelle fællesskab anerkender dig, og du kan tydeligt se resultatet af dit arbejde. Ikke som i en eller anden corporate udvikling, hvor man nogle gange slet ikke forstår, hvorfor man flytter felter frem og tilbage i XML.

I open source-samfund kan man møde top-specialister som Linus Torvalds. Men hvis du ikke er sådan en, skal du ikke tro, at du ikke har noget at lave der — der er opgaver på forskellige niveauer.

Der er også ekstra fordele: for eksempel får kommittere i Apache en gratis licens til IntelliJ Idea Ultimate (dog med nogle begrænsninger).

Hvad skal man gøre for at blive kommitter?

Det er enkelt — man skal kommittere.

Hvordan man bliver en committer, og om det virkelig er nødvendigt for dig

Hvis du mener, at der ikke er opgaver til dig i projekterne — tager du fejl. Bare tilslut dig det fællesskab, der interesserer dig, og gør hvad der er nødvendigt for dem. I Apache Software Foundation findes der en separat guide med kravene til kommittere.

Hvilke opgaver skal løses?

De kan være meget forskellige — fra udvikling til at skrive tests og dokumentation. Ja, bidrag fra testere og dokumentarister værdsættes lige så højt som udvikleres bidrag. Der findes også usædvanlige opgaver — for eksempel at drive en YouTube-kanal og fortælle andre brugere, hvordan du bruger et open source-produkt. For eksempel i Apache Software Foundation er der en særskilt siden, der angiver, hvilken hjælp der er nødvendig.  

Skal man skrive en stor funktion for at blive kommitter?

Nej. Det er slet ikke nødvendigt. En kommitter skal ikke skrive tonsvis af kode. Men hvis du har skrevet en stor funktion, vil projektledelsesudvalget lettere kunne vurdere dig. Bidrag til fællesskabet handler ikke kun om funktioner, programmering og test. Hvis du skriver et brev og fortæller om et problem og foreslår en velargumenteret løsning — er det også et bidrag.

Det er vigtigt at forstå, at kommitter-skab er tillid. Om du bliver kommitter eller ej, afgøres af de samme mennesker som dig selv, baseret på deres opfattelse af dig som en person, der bidrager til produktet. Derfor skal du, gennem dine handlinger og opførsel i fællesskabet, opnå denne tillid.

Hvordan skal man opføre sig?

Vær konstruktiv, positiv, høflig og tålmodig. Husk, at alle i open source er frivillige, og ingen skylder nogen noget. Hvis du ikke får svar, så vent og mind dem om dit spørgsmål efter 3-4 dage. Hvis du konstant ikke får svar, tja, open source er frivilligt.

Hvordan man bliver en committer, og om det virkelig er nødvendigt for dig

Bed ikke om, at nogen gør noget for dig eller for din skyld. Erfarne medlemmer af fællesskabet har en intuition for sådanne "tiggere", og der opstår straks allergi over for dem, der ønsker at skubbe deres arbejde over på andre.

Hvis du får hjælp, er det fantastisk, men misbrug det ikke. Det er ikke en god idé at skrive: "Folk, fix dette, ellers mister jeg min årlige bonus." Bed hellere om vejledning til, hvad du skal gøre næste gang, og fortæl, hvad du allerede har opdaget om denne fejl. Hvis du lover at opdatere wiki’en efter løsningen på problemet, vil chancerne for svar stige markant.

Endelig, læs Code of Conduct og lær at stille spørgsmål.

Hvordan bidrager man, hvis man ikke er committer?

I projekter anvendes ofte RTC-ordningen, hvor alle først skal gennemgå en review, og derefter slås ændringerne sammen i master. Under denne ordning gennemgår absolut alle en review, selv committers. Derfor kan man bidrage effektivt til et projekt uden at være committer. For at gøre det lettere at blive valgt som ny committer, kan man tage mentorrollen overfor nye deltagere, dele viden og skabe nyt materiale.

Diversity — en fordel eller en ulempe?

Diversity — i forståelsen af Apache Software Foundation inkluderer det også tilknytning af deltagere i et open source-projekt til flere virksomheder. Hvis alle kun er tilknyttet én organisation, vil alle deltagere hurtigt forlade projektet, når organisationens interesse for projektet falder. Diversity sikrer langvarighed, stabilitet i projektet, bred erfaring og et variation af deltagernes meninger.

Af kærlighed eller af beregning?

I open source-projekter findes der to typer mennesker: dem, der arbejder i organisationer, som bidrager til dette produkt, og dem, der arbejder her af kærlighed, altså frivillige. Hvem er mere produktiv? Som regel er de deltagere, der støtter produktet fra bidragerorganisationens side, mere produktive. De har bare mere tid og har en klar motivation for at finde sandheden; de er fokuseret på opgaven og tættere på brugeren.

De, som gør det "af kærlighed", er også motiveret, men på en anden måde - de er ivrige efter at udforske projektet og forbedre verden. Og netop sådanne deltagere er mere stabile og fokuserede på langsigtede perspektiver, fordi den, der er kommet til fællesskabet af egen fri vilje, næppe vil forlade det natten over.

Hvordan finder man balancen mellem produktivitet og stabilitet? Der er to muligheder. Den første mulighed: når en deltager arbejder i en virksomhed, der officielt beskæftiger sig med dette open source-projekt, og laver noget ekstra ud af egen interesse - for eksempel at støtte nybegyndere. Den anden mulighed er en virksomhed, der har gennemgået en open source-transformation. For eksempel, når medarbejderne arbejder fire dage om ugen på hovedforretningsprojektet, og bruger den øvrige tid på open source.

Skal man være commit-ter eller ej?

Hvordan man bliver en committer, og om det virkelig er nødvendigt for dig

At være commit-ter er et godt og nyttigt emne, men man skal ikke stræbe efter at blive en commit-ter i sig selv. Denne rolle kan opnås uden at kode, og den beviser ikke nødvendigvis din viden. Det vigtigste er ekspertisen, altså de viden og erfaringer, du opnår ved at studere projektet, grave i det og hjælpe andre med at løse problemer.

Kilde: habr.com

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster