Harjoittajan opas: Contributor Sustainability

Ensisijaiset mittarit:

Jos et ole jo lukenut Ammatinharjoittajan opas: Johdanto – Asioita, joita kannattaa miettiä mittareita tulkittaessa, keskeytä nyt ja lue tämä opas.

Osallistujien kestävyys on tärkeä osa arvioitaessa, onko avoimen lähdekoodin hankkeella ja yhteisöllä tarpeeksi osallistujia, jotta hanke jatkuu pitkällä aikavälillä, joten avustajien kestävyydellä on suuri vaikutus projektin yleiseen kestävyyteen. On paljon projekteja, joissa on yksi ylläpitäjä (katso xkcd riippuvuus), ja monet projektit kamppailevat löytääkseen tarpeeksi ihmisiä osallistumaan aktiivisesti projekteihinsa ja jatkamaan niiden ylläpitämistä pitkällä aikavälillä (Egbahl 2016). Avelino et ai. (2019) havaitsivat, että jopa suositut projektit saattavat hylätä pysyvästi eivätkä toipua liian monen avainavustajan menettämisestä.

Tosiasia on, että avoimen lähdekoodin projekteja on paljon, mutta tekijöitä ei ole tarpeeksi, joten ylläpitäjät tarvitsevat kipeästi apua erityyppisissä osissa, joita tarvitaan onnistuneen ja kestävän avoimen lähdekoodin projektiin. On kuitenkin tärkeää pohtia, kuinka jokainen uusi lahjoitus lisää ylläpitäjille lisätyötä sen tarkistamiseen ja hyväksymiseen. Tätä voidaan vähentää käyttämällä asianmukaista automaatiota, prosesseja ja dokumentaatiota, jotka auttavat avustajia menestymään, mutta lopulta jotkut näistä avustajista on ryhdyttävä ylläpitäjiksi voidakseen hoitaa uusien avustajien aiheuttaman lisätyökuorman (Eghbal 2020).

Jos rahoittajia ja ylläpitäjiä ei ole tarpeeksi ylläpitämään hanketta, se lisää riskiä projektin epäonnistumisesta, mikä luo erilaisia ​​usein merkittäviä haasteita käyttäjille ja muille siitä riippuvaisille projekteille.

Vaihe 1: Tunnista trendit

On monia asioita, jotka voivat vaikuttaa lahjoittajan kestävyyteen. Aloittamalla Osallistujan poissaolokerroin, voit arvioida projektiin kohdistuvan riskin, jos avainavustajat/ylläpitäjät päättävät lähteä, mutta on myös tärkeää tarkastella muita trendejä, jotka liittyvät Osallistujat yhdessä Lahjoitustyypit joita ihmiset tekevät tunnistaakseen mahdolliset osallistujariskit, jotka voivat vaikuttaa hankkeesi yleiseen kestävyyteen.

Osallistujan poissaolokerroin

Contributor Absence Factor on tärkeä osallistujien kestävyyden ymmärtämiseksi, koska se visualisoi kysymyksen "kuinka monta osallistujaa voimme menettää ennen kuin projekti pysähtyy?" Se auttaa tunnistamaan, kuinka laajasti projektin työ on jakautunut osallistujien kesken, ja tunnistaa projektin avainhenkilöt, jotka tekevät suurimman osan työstä. Jos suurimman osan työstä tekee yksi henkilö tai pieni määrä ihmisiä, se lisää riskiä, ​​että projekti voi muuttua kestämättömäksi, jos kyseinen henkilö tai henkilöt eivät enää työskentele projektin parissa (Avelino ym. 2019).

Osallistujan poissaolokerroin pylväskaavio, jossa tasapainoiset panokset vaihtelevat 16 %:sta sitoumuksista 6 %:iin sitoumuksista

Osallistujat

Osallistujat-mittarissa tarkastellaan laajasti sitä, kuka osallistuu projektiin, ja se voidaan visualisoida monin eri tavoin. Vaikka voit tarkastella tätä yksittäisenä tekijänä ajan mittaan, se voi auttaa erittelemään tämän, jotta voit ymmärtää, kuinka moni osallistuja on aktiivinen ja kuinka moni on lisääntynyt tai laskenut ajan myötä. Vaikka osallistujien poissaolokerroin on hyvä tunnistamaan avaintekijät, sinun tulee myös yrittää ymmärtää osallistujien kestävyyttä laajemmin, jotta voit tarkastella yleistrendejä kaikkien osallistujien välillä ja nähdä, onko osallistujien kasvu vai lasku.

Aktiiviset osallistujat ajan mittaan ja kasvuanalyysi, joka osoittaa positiivisen ja negatiivisen osallistujasaldon

Lahjoitustyypit

Useat, erilaiset panokset vaikuttavat avoimen lähdekoodin projektin terveyteen ja kestävyyteen, ja niihin voi kuulua koodin kirjoittaminen, yhteisön hallinta, virheiden testaus, projektin evankeliointi, käyttäjien tukeminen tai muu auttaminen. Eri panostyypit voivat osoittaa, että projekti on kypsä ja monipuolinen, ja siinä on riittävästi aktiivisuutta, jotta se ylläpitää kaikkia projektin osa-alueita, ja mahdollistaa polkuja johtajuuteen, joka tukee erilaisia ​​panostyyppejä ja ihmisiä, joilla on vaihtelevaa asiantuntemusta koodaamisen lisäksi.

Tietolähteet eri lähteistä ajan mittaan, mukaan lukien GitHub, Twitter, pipermail, Slack

Vaihe 2: Diagnoosi

Kuten Practitioner Guide Introductionissa mainittiin, sinun tulee aloittaa keskustelemalla muutaman henkilön kanssa, jotka ovat tiiviisti mukana projektissa, jotta voit tarkastella trendejä yhdessä ja tulkita niitä projektin kannalta järkevällä tavalla. Esimerkiksi alla olevasta kuvasta näkyy, että yli 60 % tämän projektin sitoumuksista kuluneen vuoden aikana on yhden henkilön tekemiä, mikä useimmissa tapauksissa lisää riskiä, ​​että projekti voi muuttua kestämättömäksi, jos kyseinen henkilö tai ihmiset eivät enää työskenteli. hankkeessa. On kuitenkin tärkeää pohtia tätä myös hankkeen muiden näkökohtien valossa. Esimerkiksi, jos tämä projekti on enimmäkseen dokumentaatiota, jota monilla on päivitettäväksi, tai jos se on melko yksinkertaista ja muiden helposti ymmärrettävää koodia tai jos projektia käyttää enimmäkseen yksittäinen henkilö, riski on suhteellisen pieni. Toisaalta, jos projekti on monimutkainen, suuri ja/tai laajalti käytetty, riski on suuri ja hankkeessa tulisi keskittyä rekrytoimaan lisää avustajia ja ylläpitäjiä, jotta tekijöiden kestävyys lisääntyisi.

Bus Factorin ympyräkaavio, joka osoittaa, että yksi osallistuja on tehnyt 61.8 % sitoumuksista ja seuraavaksi suurimmat osallistujat 10.8 % ja 9.77 %

On myös tärkeää tarkastella muita avustajiin liittyviä trendejä. Esimerkiksi alla oleva kaavio osoittaa, että aktiiviset osallistujat saavuttivat tämän projektin huippunsa ja sitten kieltäytyivät, joten olisi tärkeää selvittää, miksi näin voi olla. Jos projekti oli jotain ajallisesti rajoitettua (esim. konferenssiin tai työpajaan liittyvää), joka on saatu päätökseen, tai projekti, jossa suurin osa työstä on saatu päätökseen eikä sitä ole kevyesti ylläpidetty, tämä olisi normaali malli. Jos tämä on kuitenkin tyypillinen avoimen lähdekoodin projekti, tämä voi viitata siihen, että osallistujien säilyttämiseen vaikuttaa vakavia ongelmia, jotka tulisi diagnosoida ja ratkaista.

Contributor Growth by Engagement, mikä osoittaa, että aktiiviset kirjoittajat olivat huipussaan huhtikuussa 2023 ja vähentyneet lokakuuhun 2023 mennessä

Vaihe 3: Kerää tarvittaessa lisätietoja

CHAOSSilla on muita osallistujien kestävyyteen liittyviä mittareita, jotka voivat auttaa diagnosoimaan tiettyjä ongelmia yhteisössäsi.

Lisätiedot:

Vaihe 4: Tee parannuksia

Uusien ylläpitäjien rekrytointi on ratkaisevan tärkeää sellaisten projektien onnistumiselle, joissa avustajien kestävyys on huolenaihe, ja on jopa mahdollista, että jotkin projektit toipuvat ensisijaisten kehittäjiensa hylkäämisestä rekrytoimalla uusia ylläpitäjiä (Avelino ym. 2019). Keskitymällä uusien avustajien rekrytointiin ennen kuin menetät avainkehittäjäsi, sinulla on aikaa ottaa mukaan avustajat ja ennaltaehkäistä kriisiä myöhemmin.

Contributor Absence Factor voi kertoa sinulle pari asiaa, joita voidaan käyttää edistämään osallistujien parannuksia, jotka tekevät projektistasi kestävämmän. Ensinnäkin se auttaa sinua päättämään, kuinka kestävä nykyinen avustajatilanteesi on. Jos yksi henkilö tekee suurimman osan panoksesta ja projekti on suuri tai monimutkainen, sinun tulee keskittyä tapoihin jakaa taakka ja saada enemmän ihmisiä mukaan projektiin. Toiseksi Osallistujan poissaolokerroin -mittari voi auttaa sinua löytämään ihmisiä, jotka saattavat osallistua enemmän kuin arvasit, mikä voi auttaa sinua miettimään, ketä voit kannustaa antamaan enemmän tai ehkä löytää jonkun, joka voisi siirtyä johtajarooliin (esim. ylläpitäjä). Johtotehtävien osalta voit katsoa jonkun, joka tekee kymmenen prosenttia lahjoituksista, ja päättää, että hän on valmis ryhtymään ylläpitäjäksi. Yksi tapa tehdä tämä on vähentää uusien ylläpitäjien mahdollisuuksia. Jos he eivät ole valmiita koko projektin ylläpitäjäksi, he voivat ehkä ylläpitää aliprojektia tai tiettyä osaa projektista samalla kun he rakentavat asiantuntemustaan ​​muilla aloilla. Yksi tapa tehdä tämä on käyttää OWNERS tai CODEOWNERS-tiedostot antaa ihmisille vastuu arkiston eri alueista, mukaan lukien dokumentit tai yhteisön osiot. Ihmiset, jotka antavat vähemmän mutta säännöllisiä lahjoituksia, voivat olla hyviä ehdokkaita mentoriksi tai arvioijiksi, jotta heistä tulisi ylläpitäjiä, kun he ovat saaneet hieman enemmän kokemusta.

On myös tärkeää tarkastella osallistumisoppaitasi tai muita perehdyttämisasiakirjoja varmistaaksesi, että uudet osallistujat voivat helposti aloittaa projektisi (katso linkit Lisälukemista-osiosta). Hyvä dokumentointi on sitä, kuinka skaalaamme asioita, jotka vievät kallisarvoista aikaa jo ylikuormituneilta ylläpitäjiltä ja vapauttavat heidän aikaa muiden asioiden tekemiseen. Vähintään uuden osallistujan on ymmärrettävä, miten luodaan ympäristö, jossa hän voi tehdä kehitystyötä, mitkä odotukset testausta ja testien suorittamista koskevat, mitkä prosessit tai odotukset, joita sinulla on vetopyyntöjen suhteen, sekä ohjeet muihin vaatimuksiin. Jos tämä on hyvin dokumentoitu, uudet avustajat voivat päästä alkuun pienellä määrällä olemassa olevien ylläpitäjien apua, mikä voi säästää paljon aikaa pitkällä aikavälillä (Eghbal 2020). Kun projektilla ei ole hyviä perehdytysdokumentteja, ylläpitäjät voivat turhautua uusiin osallistujakysymyksiin käyttämänsä ajan määrästä, mikä voi vaikeuttaa uusien osallistujien tuntemista tervetulleeksi ja kestää kauan ennen kuin he alkavat olla tuottavia. Näin ihmiset masentuvat ja ajautuvat pois projektistasi. Tämä ei tarkoita, että sinun täytyy viettää päiviä ja viikkoja täydellisten perehdytysasiakirjojen kirjoittamiseen. Kaikki on parempi kuin ei mitään, ja jos aloitat muutamista asioista, jotka auttavat ihmisiä pääsemään alkuun nopeasti, uudet kirjoittajat voivat itse asiassa auttaa parantamaan perehdytysasiakirjoja lisäämällä lisätietoja ja lisäohjeita asioille, jotka he kokivat hämmentäväksi tai joiden kanssa he kamppailivat. .

Vaikka perehdytysdokumentaatio on loistava tapa saada ihmiset alkuun mittakaavassa, mentoroinnin on osoitettu olevan tehokas tapa saada uusia osallistujia auttamaan heitä olemaan tuottavampia projektissasi nopeammin (Fagerholm ym. 2014). Mentorointi vie kuitenkin ylläpitäjältä lyhyellä aikavälillä aikaa, jotta projektista tulisi kestävämpi pitkällä aikavälillä, joten on tärkeää pohtia, mitkä toistuvista osallistujista voisivat olla hyviä mentorointiehdokkaita (Egbahl 2020).

Hyvät ensimmäiset numerot tai halutut tarrat ovat erinomaisia ​​aloituspaikkoja, koska ne auttavat ihmisiä löytämään jotain, jonka parissa he voivat työskennellä, kun he oppivat lisää projektista, mutta sinun on harkittava, miten voit muokata näistä aiheista jotain, jossa on tarpeeksi tietoa uusille. avustajien käyttöön. Hyvät ensimmäiset numerot tulisi kohdistaa yksinkertaisiin asioihin, jotka upouusi kirjoittaja voi poimia ja täyttää lyhyessä ajassa, jotta hän oppii lisää lahjoitusprosessistasi. Apua halutut tunnisteet voivat olla aiheita, jotka liittyvät hieman enemmän, jotta ihmiset, jotka ovat jo alkaneet osallistua, voivat löytää jotain muuta työstettävää. Hyvät ensimmäiset numerot ja avuksi halutut tarrat sekä hyvät osallistumisoppaat auttavat sinua rakentamaan projektiisi kestävän avustajaputken.

Hyvät ensimmäiset ongelmat ja avun halutut tarrat ovat kuitenkin passiivisia avunpyyntöjä, joten kannustan myös ylläpitäjiä olemaan aktiivisia ja täsmällisiä tapoja, joilla ihmiset voivat auttaa. Tietyn henkilön pyytäminen tarkistamaan PR-julkaisu tai vastaamaan käyttäjän kysymykseen osoittaa, että tunnistat hänen ainutlaatuisen asiantuntemuksensa ja haluat hänen apuaan. Tieto siitä, että meitä halutaan ja arvostetaan, saa meidät hyvälle tuulelle, mikä voi olla vahva motivaattori osallistua avoimen lähdekoodin projektiin tai jatkaa osallistumista. Yhteyden ottaminen ja heidän työnsä tunnustaminen sekä heidän kannustaminen tekemään enemmän voi auttaa sinua rekrytoimaan ihmisiä, jotka voisivat ottaa kasvavaa vastuuta (esim. arvioija tai ylläpitäjä) projektissasi. Älä pelkää ottaa yhteyttä tehokäyttäjiisi avustajien lisäksi, ja jos työskentelet yrityksessä, voit käyttää yrityssuhteitasi muihin organisaatioihin löytääksesi ihmisiä, jotka saattavat olla kiinnostuneita osallistumaan.

Osallistujien, arvioijien ja ylläpitäjien roolien ja vastuiden määrittäminen voi auttaa rekrytoimaan uusia ihmisiä näihin rooleihin. Se voi auttaa ajattelemaan tätä a avustaja tikkaat jossa kirjoittajat voivat nousta arvostelijoiksi ja arvioijista ylläpitäjiä. Tärkeää on dokumentoida tämä ja varmistaa, että ihmiset ymmärtävät, kuinka he voivat kiivetä tikkaita ja saada lisää vastuuta projektin sisällä. Enemmän ihmisten siirtäminen johtaviin rooleihin, kuten arvioijiin ja ylläpitäjiin, voi auttaa vähentämään väylätekijää ja tekemään projektistasi kestävämmän ajan myötä.

Tässä ja monissa mittareissa saalis on se, että emme halua ajatella vain ihmisiä, jotka antavat koodia. Tämä on hyvä alku, mutta sinun tulee myös miettiä, kuinka voit siirtää ihmisiä johtaviin asemiin, jotta he ovat vastuussa asioista, jotka eivät välttämättä näy GitHubissa tai GitLabissa, kuten dokumentaatio, yhteisön hallinta, markkinointi ja muut tärkeät roolit. Tästä syystä on niin tärkeää tarkastella myös lahjoitustyypit -mittaria. On tavallista, että ylläpitäjät aliarvioivat joihinkin näistä tehtävistä käytettyä aikaa, ja useampien ihmisten rekrytointi muihin rooleihin voi jakaa työtaakkaa entisestään ja lisätä avustajan kestävyyttä.

Projektin ylläpitäjillä, joiden osallistujien poissaolokerroin on alhainen, varsinkin jos he ovat ainoa ylläpitäjä, tulisi olla jonkinlainen seuraajasuunnitelma. Vähintään jollain muulla tulee olla järjestelmänvalvojan käyttöoikeudet kaikkeen, mitä ohjelmiston päivittämiseen ja julkaisujen julkaisemiseen tarvitaan (mukaan lukien julkaisu asiaankuuluville paketinhaltijoille) sekä dokumentaatio tämän tekemiseen. Ihannetapauksessa projektissa on toinen ylläpitäjä, joka voi jakaa vastuut tasapuolisesti ja jolla on jo valmiudet, taidot ja tiedot suorittaa kaikki projektitehtävät, mikä on yksi syy siihen, että yllä olevat keskustelut avustajakunnan rakentamisesta ja ylläpitäjien rekrytoinnista ovat niin tärkeitä. . Vaikka se ei olekaan ihanteellista, yhden ylläpitäjän projektien seuraajasuunnitteluun voisi kuulua pääsyn ja dokumentaation tarjoaminen luotettavalle kollegalle tai ystävälle. Perimyssuunnittelun avain on ottaa se käyttöön nyt, ennen kuin luulet tarvitsevasi sitä.

Vaihe 5: Seuraa tuloksia

Se, miten seuraat tuloksia, riippuu siitä, mitä parannuksia päätit tehdä. Näiden kolmen mittarin seuraamisen jatkaminen on hyvä alku. Jos käytit muita vaiheen 3 tietoja, sinun tulee myös seurata näitä mittareita.

Jos olet rekrytoimassa uusia avustajia, hyväksyjiä ja ylläpitäjiä, näiden ponnistelujen tulosten näkeminen voi kestää hetken, joten et ehkä näe merkittäviä parannuksia 3–6 kuukauteen, joten sinun on seurattava tätä pidemmän ajan. ajasta.

Varoitukset ja huomiot

  • On erittäin tärkeää ajatella inhimillistä dynamiikkaa, joka voi vaikuttaa osallistujan kestävyyteen, ja kohdella ihmisiä ystävällisesti ja kunnioittavasti, kun teet parannuksia.

Lisälukeminen

Palaute

Haluaisimme mielellämme palautetta saadaksesi lisätietoja siitä, kuinka ihmiset käyttävät CHAOSS Practitioner -oppaita ja kuinka voimme parantaa niitä ajan myötä. Ole hyvä ja täytä tämä lyhyt kysely antaaksesi palautetta.

Osallistujat

Seuraavat ihmiset osallistuivat tähän oppaaseen:

  • Dawn Foster
  • Chan Voong
  • Jeffrey Osier-Mixon
  • Luis Cañas Díaz

Viitteet

CHAOSS Practitioner Guides -oppaat ovat MIT:n lisensoituja, eläviä asiakirjoja, ja otamme mielellämme palautteen ja palautteen. Voit ehdottaa muutoksia tähän asiakirjaan osoitteessa https://github.com/chaoss/wg-data-science/blob/main/practitioner-guides/contributor-sustainability.md