Hoe word je een committer en heb je dat echt nodig?

Hallo! Mijn naam is Dmitry Pavlov, ik werk bij RasterVersterking, en ben ook een committer en PMC-deelnemer in Apache Ignite en een bijdrager aan Apache Training. Onlangs gaf ik een presentatie over het werk van een committer op de open source meetup van Sberbank. Met de ontwikkeling van de open source-gemeenschap begonnen veel mensen steeds meer vragen te krijgen: hoe kun je een committer worden, welke taken moeten ze op zich nemen en hoeveel regels code moeten er worden geschreven om deze rol te vervullen. Als we aan committers denken, stellen we ons onmiddellijk almachtige en alwetende mensen voor met een kroon op hun hoofd en een boekdeel met “Clean Code” in plaats van een scepter. Is dat zo? In mijn post zal ik proberen alle belangrijke vragen over committers te beantwoorden, zodat je kunt begrijpen of je het echt nodig hebt.

Hoe word je een committer en heb je dat echt nodig?

Alle nieuwkomers in de opensource-gemeenschap denken dat ze nooit committers zullen worden. Voor velen is dit tenslotte een prestigieuze rol die alleen kan worden verkregen voor speciale verdiensten door een hoop code te schrijven. Maar zo eenvoudig is het niet. Laten we de committer eens bekijken vanuit het perspectief van de gemeenschap.

Wie is een committer en waarom is er een nodig?

Wanneer we een nieuw open source-product maken, staan ​​we gebruikers altijd toe dit te gebruiken en te verkennen, en aangepaste exemplaren aan te passen en te distribueren. Maar wanneer ongecontroleerde distributie van softwarekopieën met wijzigingen plaatsvindt, ontvangen we geen bijdragen aan de hoofdcodebasis en ontwikkelt het project zich niet. Dit is waar de committer nodig is, die het recht heeft om gebruikersbijdragen aan het project te verzamelen.

Waarom een ​​committer worden?

Laten we beginnen met het feit dat committeren een pluspunt is voor een cv, en voor beginners op het gebied van programmeren is het een nog groter pluspunt, omdat ze bij het solliciteren vaak om codevoorbeelden vragen.

Het tweede onbetwiste voordeel van committeren is de mogelijkheid om met topspecialisten te communiceren en een aantal coole ideeën uit open source in uw project te betrekken. Als je een bepaald open source product goed kent, kun je bovendien aan de slag bij een bedrijf dat het ondersteunt of gebruikt. Er is zelfs een mening dat als je niet deelneemt aan open source, je geen hoge carrièreposities zult bereiken.

Naast de voordelen op het gebied van carrière en werkgelegenheid, is het binden op zich ook prettig. Je wordt erkend door de professionele gemeenschap, je ziet duidelijk het resultaat van je werk. Niet zoals bij sommige bedrijfsontwikkelingen, waarbij je soms niet eens begrijpt waarom je velden heen en weer verplaatst in XML.

In opensourcecommunity's kun je topspecialisten als Linus Torvalds ontmoeten. Maar als je niet zo bent, moet je niet denken dat je daar niets te doen hebt - er zijn taken van verschillende niveaus.

Welnu, er zijn ook extra bonussen: Apache-committers ontvangen bijvoorbeeld een gratis IntelliJ Idea Ultimate-licentie (zij het met enkele beperkingen).

Wat moet je doen om committer te worden?

Het is eenvoudig: u hoeft zich alleen maar te binden.

Hoe word je een committer en heb je dat echt nodig?

Als u denkt dat er geen taken voor u zijn op projecten, vergist u zich. Sluit u gewoon aan bij de gemeenschap die u interesseert en doe wat zij nodig heeft. De Apache Software Foundation heeft een aparte Hyde met vereisten voor committers.

Welke problemen zul je moeten oplossen?

De meest uiteenlopende - van ontwikkeling tot het schrijven van tests en documentatie. Ja, ja, de bijdrage van testers en documenteerders in de gemeenschap wordt op gelijke voet gewaardeerd als de bijdrage van ontwikkelaars. Er zijn niet-standaardtaken, bijvoorbeeld het runnen van een YouTube-kanaal en het vertellen aan andere gebruikers hoe je een opensource-product gebruikt. De Apache Software Foundation heeft bijvoorbeeld een aparte страница, waarbij wordt aangegeven welke hulp nodig is.  

Moet ik een grote feature schrijven om committer te worden?

Nee. Dit is helemaal niet nodig. De committer hoeft geen tonnen code te schrijven. Maar als je een groot artikel hebt geschreven, zal het voor de projectmanagementcommissie gemakkelijker zijn om je te beoordelen. Bijdragen aan de community gaat niet alleen over functies, programmeren en testen. Als je een brief schrijft en over een probleem praat, bied dan een beredeneerde oplossing aan - dit is ook een bijdrage.

Het is belangrijk om te begrijpen dat commitment draait om vertrouwen. Of ze u wel of niet tot committer maken, wordt bepaald door mensen zoals u, op basis van hun mening over u als persoon die voordeel oplevert voor het product. Daarom moet u, door uw acties en daden in de gemeenschap, juist dit vertrouwen winnen.

Hoe te gedragen?

Wees constructief, positief, beleefd en geduldig. Bedenk dat bij open source iedereen vrijwilliger is en dat niemand iemand iets verschuldigd is. Ze geven geen antwoord. Wacht en herinner u binnen 3-4 dagen aan uw vraag. Ze geven je niet altijd antwoord - nou ja, open source is vrijwillig.

Hoe word je een committer en heb je dat echt nodig?

Vraag niet iemand om iets voor jou of voor jou te doen. Ervaren leden van de gemeenschap hebben een instinct voor zulke ‘bedelaars’ en worden onmiddellijk allergisch voor degenen die hen hun werk willen opdringen.

Als je hulp krijgt, is dat geweldig, maar maak er geen misbruik van. Je moet niet schrijven: “Jongens, los dit op, anders verlies ik mijn jaarlijkse bonus.” Het is beter om te vragen waar u heen moet en ons te vertellen wat u al heeft ontdekt over deze bug. En als je belooft de wiki bij te werken op basis van de resultaten van het oplossen van het probleem, dan zal de kans dat ze je zullen antwoorden aanzienlijk toenemen.

Eindelijk, lees Gedragscode en leren vragen stellen.

Hoe kunt u bijdragen als u geen committer bent?

Projecten maken vaak gebruik van een RTC-schema, waarbij eerst alles door een beoordeling gaat en vervolgens de wijzigingen worden samengevoegd in de master. Met dit schema wordt absoluut iedereen beoordeeld, zelfs committers. Daarom kunt u succesvol bijdragen aan een project zonder dat u een committer bent. En om het makkelijker te maken om geselecteerd te worden als nieuwe deelnemers, kun je nieuwe deelnemers begeleiden, kennis delen en nieuw materiaal creëren.

Diversiteit: voordeel of schade?

Diversiteit - volgens de Apache Software Foundation is dit onder andere de aansluiting van deelnemers aan een opensource-project door verschillende bedrijven. Als iedereen bij slechts één organisatie is aangesloten, lopen alle deelnemers er snel van weg als de interesse in het project verloren gaat. Diversiteit zorgt voor een stabiel project op lange termijn, diverse ervaringen en een breed scala aan meningen van deelnemers.

Uit liefde of uit gemak?

In opensourceprojecten zijn er twee soorten mensen: degenen die in een organisatie werken die aan dit product bijdraagt, en degenen die hier uit liefde werken, dat wil zeggen vrijwilligers. Welke is productiever? Meestal deelnemers die het product ondersteunen van de bijdragende organisatie. Ze hebben simpelweg meer tijd en een duidelijke motivatie om de waarheid tot op de bodem uit te zoeken, ze zijn gefocust op de taak en staan ​​dichter bij de gebruiker.

Degenen die het ‘uit liefde’ doen, zijn ook gemotiveerd, maar op een andere manier: ze willen het project graag bestuderen, om de wereld een betere plek te maken. En juist zulke deelnemers zijn stabieler en gerichter op de lange termijn, omdat het onwaarschijnlijk is dat degenen die op eigen initiatief naar de gemeenschap zijn gekomen, deze op één dag zullen verlaten.

Hoe vind je een balans tussen productiviteit en stabiliteit? Er zijn twee opties. De eerste optie: wanneer de deelnemer werkt in een bedrijf dat officieel betrokken is bij dit opensourceproject, en daarin iets extra's doet, uit eigen belang - bijvoorbeeld het ondersteunen van nieuwkomers. De tweede optie is een bedrijf dat een opensource-transformatie heeft ondergaan. Wanneer medewerkers bijvoorbeeld vier dagen per week aan het hoofdbedrijfsproject werken en de rest van de tijd aan open source werken.

Committer - zijn of niet zijn?

Hoe word je een committer en heb je dat echt nodig?

Committeren is een goed en nuttig onderwerp, maar je moet er niet specifiek naar streven om committer te worden. Deze rol is geen codegebaseerde rol en getuigt niet van jouw kennis. Het enige dat telt is expertise, dat wil zeggen de kennis en ervaring die je opdoet door het project te bestuderen, je erin te verdiepen en anderen te helpen problemen op te lossen.

Bron: www.habr.com

Voeg een reactie