Come diventare un committer e ne hai davvero bisogno?

Ciao! Mi chiamo Dmitrij Pavlov, lavoro in GridGain, e sono anche un committer e membro del PMC in Apache Ignite e contributore in Apache Training. Recentemente ho tenuto una presentazione sul lavoro di un committer al meetup di Sberbank dedicato all'open source. Con lo sviluppo della comunità open source, molti hanno iniziato a chiedere: come diventare un committer, quali compiti assumere e quante righe di codice è necessario scrivere per ottenere questo ruolo. Quando pensiamo ai committer, ci vengono subito in mente persone onnipotenti e onniscienti con una corona in testa e un volume di 'Codice Pulito' al posto dello scettro. È davvero così? Nel mio post cercherò di rispondere a tutte le domande importanti sui committer, in modo che tu possa capire se ne hai realmente bisogno.

Come diventare un committer e ne hai davvero bisogno?

Tutti i neofiti della comunità open source hanno pensieri di non poter mai diventare committer. Per molti, questo è un ruolo prestigioso che si può ottenere solo per meriti speciali, scrivendo tonnellate di codice. Ma non è così semplice. Diamo uno sguardo al committer dal punto di vista della comunità.

Chi è un committer e a cosa serve?

Quando si crea un nuovo prodotto open source, autorizziamo sempre gli utenti a utilizzarlo ed esplorarlo, nonché a modificarlo e distribuire copie modificate. Tuttavia, quando si verifica una diffusione incontrollata di copie del software con modifiche, non riceviamo contributi nel codice sorgente principale e il progetto non si sviluppa. Qui entra in gioco l'importanza del committer, che ha il diritto di raccogliere i contributi degli utenti nel progetto.

Perché diventare un committer?

Iniziamo col dire che essere un committer è un valore aggiunto al proprio curriculum, e per i neofiti nel campo della programmazione è un ulteriore vantaggio, poiché spesso quando ci si candida per un lavoro si richiedono esempi di codice.

Un altro indubbio vantaggio del committer è la possibilità di interagire con specialisti di alto livello e di incorporare idee interessanti dall'open source nel proprio progetto. Inoltre, se si conosce bene un prodotto open source, si può trovare lavoro in un'azienda che lo supporta o lo utilizza. Si dice persino che se non si partecipa all'open source, non si può accedere a posizioni di carriera elevate.

Oltre ai vantaggi per la carriera e l'occupazione, il committers è una soddisfazione in sé. La comunità professionale ti riconosce, puoi vedere chiaramente i risultati del tuo lavoro. Non è come nello sviluppo aziendale, dove a volte non capisci nemmeno perché stai spostando campi avanti e indietro in XML.

Nelle comunità open source puoi incontrare specialisti di alto livello come Linus Torvalds. Ma se non sei uno di loro, non pensare che non ci sia nulla per te — ci sono compiti di vario livello.

Inoltre, ci sono bonus extra: i committer di Apache, ad esempio, ricevono gratuitamente la licenza di IntelliJ Idea Ultimate (sebbene con alcune limitazioni).

Cosa fare per diventare un committer?

È semplice: bisogna fare commit.

Come diventare un committer e ne hai davvero bisogno?

Se pensi che nei progetti non ci siano compiti per te, ti sbagli. Unisciti alla comunità che ti interessa e fai ciò che è necessario per essa. In Apache Software Foundation ci sono requisiti specifici guida per i committer.

Quali compiti dovrai affrontare?

Varie attività, dalla programmazione alla scrittura di test e documentazione. Sì, il contributo dei tester e dei documentatori è apprezzato nella comunità tanto quanto quello degli sviluppatori. Ci sono compiti non convenzionali, come gestire un canale YouTube e raccontare agli altri utenti come si utilizza un prodotto open source. Ad esempio, nella Apache Software Foundation c'è un apposito la pagina, dove è indicato quale aiuto è richiesto.  

È necessario scrivere una grande funzionalità per diventare un committer?

No. Non è affatto obbligatorio. Un committer non deve scrivere tonnellate di codice. Ma se hai scritto una grande funzionalità, sarà più facile per il comitato di gestione del progetto valutarti. Contribuire alla comunità non riguarda solo le funzionalità, la programmazione e i test. Se scrivi una lettera spiegando un problema e proponi una soluzione argomentata, anche questo è un contributo.

È importante capire che il committment è una questione di fiducia. La decisione di farvi diventare committer spetta a persone come voi, sulla base della loro percezione di voi come individui che apportano valore al prodotto. Pertanto, dovete conquistare questa fiducia attraverso le vostre azioni e comportamenti all'interno della comunità.

Come ci si deve comportare?

Essere costruttivi, positivi, educati e pazienti. Ricordate che nel mondo dell'open source tutti sono volontari e nessuno deve nulla a nessuno. Se non ricevete risposta, aspettate e ricordate il vostro quesito dopo 3-4 giorni. Se continuate a non ricevere risposte, beh, l'open source è un'attività volontaria.

Come diventare un committer e ne hai davvero bisogno?

Non chiedete a qualcuno di fare qualcosa per voi o al vostro posto. I membri esperti della comunità hanno un certo fiuto per tali «richieste» e subito sviluppano un'allergia per chi vuole scaricare il proprio lavoro sugli altri.

Se ricevete aiuto, è fantastico, ma non abusatene. Non scrivete: «Ragazzi, correggete questo, altrimenti perdo il premio annuale». È meglio chiedere quale sia il passo successivo e spiegare cosa avete già scoperto riguardo a questo bug. Promettere di aggiornare il wiki a seguito della risoluzione del problema aumenterà notevolmente le probabilità di ricevere una risposta.

Infine, leggete il Codice di Condotta e imparate a fare domande.

Come contribuire, se non sei un committer?

Nei progetti si utilizza spesso uno schema RTC, in cui tutti passano prima per la revisione e poi le modifiche vengono unite nel master. Con questo schema, tutti devono necessariamente passare per la revisione, anche i committers. Pertanto, è possibile contribuire con successo a un progetto senza essere un committer. E per essere più facilmente scelti come nuovi committers, si può dedicarsi al mentoreaggio di nuovi membri, condividere conoscenze e creare nuovi materiali.

Diversità: un vantaggio o uno svantaggio?

La diversità, secondo la comprensione dell'Apache Software Foundation, include anche il fatto che i partecipanti a un progetto open source siano affiliati a più aziende. Se tutti sono affiliati a un'unica organizzazione, quando questa perde interesse per il progetto, tutti i partecipanti scappano. La diversità garantisce la longevità, la stabilità del progetto, un'esperienza variegata e un'ampia gamma di opinioni dei partecipanti.

Per amore o per calcolo?

Nei progetti open source ci sono due tipi di persone: quelle che lavorano in un'organizzazione che contribuisce a questo prodotto e quelle che qui lavorano per passione, cioè i volontari. Chi di loro è più produttivo? Di solito, i partecipanti che supportano il prodotto dall'organizzazione contribuita. Hanno semplicemente più tempo e una motivazione evidente per arrivare alla verità, sono concentrati sul compito e più vicini all'utente.

Coloro che lo fanno "per amore", sono motivati in un modo diverso: desiderano esplorare il progetto, rendere il mondo un posto migliore. Ed è proprio questo tipo di partecipanti che è più stabile e orientato al lungo termine, perché chi è entrato nella comunità per iniziativa personale difficilmente la abbandonerà da un giorno all'altro.

Come trovare un equilibrio tra produttività e stabilità? Ci sono due opzioni. La prima opzione: quando un membro lavora in un'azienda che si occupa ufficialmente di questo progetto open source e contribuisce ulteriormente, ad esempio supportando i nuovi arrivati. La seconda opzione è quella di un'azienda che ha vissuto una trasformazione open source. Ad esempio, quando i dipendenti dedicano quattro giorni alla settimana al progetto principale dell'azienda e il resto del tempo si occupano di open source.

Essere o non essere un committer?

Come diventare un committer e ne hai davvero bisogno?

Essere un committer è un'idea interessante e utile, ma non bisogna per forza ambire a diventarlo. Questo ruolo può essere ottenuto anche senza scrivere codice, e non dimostra necessariamente le vostre competenze. Ciò che conta è l'expertise, ovvero le conoscenze e l'esperienza che acquisirete esplorando il progetto, approfondendolo e aiutando gli altri a risolvere problemi.

Fonte: habr.com

Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster