Il contributo open source è una delle competenze più ricercate oggi nella tecnologia. Le persone hanno realizzato i vantaggi dell'utilizzo di tecnologie open source e i vantaggi di far parte di questi progetti.

Lo sviluppo open source è un approccio basato sulla condivisione del codice sorgente e sul miglioramento collaborativo.

Ci sono migliaia di progetti open source su Internet. I progetti open source possono essere applicazioni di social media, software di gestione dei progetti e documentazione tecnica. Allora come scegli quello giusto?

Cosa cercare in un progetto open source

Un malinteso sui progetti open source è che devi contribuire con il codice. Sebbene il codice sia essenziale, altre aree come la documentazione, la gestione dei progetti e la difesa della comunità possono essere significative contributi open source.

Chiunque abbia lavorato a progetti open source ti parlerà del potere di tali progetti. I vantaggi includono innovazione, miglioramento delle competenze e relazioni produttive che incidono sulla tua carriera.

instagram viewer

Considera le seguenti caratteristiche per determinare se un open source vale il tuo tempo.

1. Ha una licenza?

Ogni progetto open source ha una licenza, in genere una licenza permissiva o una licenza copyleft. Una licenza permissiva è comune nei progetti open source. Non impedisce a nessuno di utilizzare, distribuire o vendere una versione modificata del software.

La maggior parte dei progetti open source ha una licenza permissiva, come MIT, BSD o Apache 2.0. La licenza MIT condivide e distribuisce software gratuitamente ed è priva di garanzia:

Le licenze copyleft come General Public License, Mozilla Public License e Affero General Public License sono soggette a ulteriori restrizioni.

Una licenza permissiva consente ai contributori di modificare e distribuire software open source. Ciò significa che gli sviluppatori possono modificare il codice sorgente per produrre nuovo software e utilizzarlo o distribuirlo senza restrizioni. La versione modificata avrà la stessa licenza del software originale.

Tuttavia, le versioni modificate non avranno lo stesso nome della versione originale per una facile identificazione tra le due. La licenza dovrebbe includere anche tutte le persone e non discriminare nessuno.

Chiunque riceva il software ridistribuito dovrebbe avere gli stessi diritti sulla licenza dei proprietari del codice originale.

Una licenza gratuita non limita il software a un particolare canale di distribuzione o tecnologia. Il software e le dipendenze distribuiti insieme al software open source non devono necessariamente essere open source. Le tecnologie closed-source e altre tecnologie a pagamento utilizzano software open-source senza restrizioni.

2. Il codice sorgente è condiviso?

Tutti i progetti open-source hanno una licenza che consente la condivisione gratuita del codice sorgente. I diritti si estendono anche al codice compilato dai contributi. Il progetto dovrebbe rendere il suo codice sorgente disponibile a tutte le parti senza restrizioni.

Quando il codice sorgente non è disponibile su piattaforme pubbliche, dovrebbe essere disponibile su richiesta. Qualsiasi progetto che non condivide il suo codice sorgente non è un progetto open source.

Tuttavia, la licenza può limitare la ridistribuzione del codice sorgente e consentire solo la ridistribuzione della sua forma modificata. Il codice modificato può avere un nome o una versione diversa per differenziarlo dal progetto originale.

3. Il progetto ha linee guida per i contributori?

Ogni progetto open source dovrebbe avere una guida per i contributori. Probabilmente lo troverai nella cartella principale del progetto, spesso chiamato CONTRIBUTORS o CONTRIBUTORS.md. Una guida per i contributori contiene semplici istruzioni su come contribuire al progetto.

La guida mostra ai nuovi contributori come eseguire il fork, sollevare un problema e inviare i loro contributi al repository upstream. Le guide per i collaboratori aiutano a mostrare ai collaboratori come funziona il progetto per ridurre i conflitti tra rami durante l'unione.

Ecco un esempio di linee guida per i contributori dal progetto open source AsyncAPI in poi Git Hub:

4. Ha una comunità attiva?

L'innovazione è uno dei motivi per cui i progetti open source sono diventati così popolari. L'open source riunisce comunità di talento ed entusiaste per generare idee che promuovano l'innovazione.

Una comunità forte garantisce comunicazioni, collaborazione e marketing chiari per il prodotto. Le comunità open source attive producono risultati migliori e scalano le innovazioni più rapidamente rispetto ai singoli progetti.

Per determinare se una community è attiva, guarda i suoi canali social. Inizia monitorando le loro attività sui social media, su Discord o sugli account Slack. Lavorare in una comunità attiva con un libero flusso di informazioni e risorse è meglio.

Le comunità attive nell'open source accelerano l'innovazione in tre modi. Le comunità rispondono alle attuali tendenze tecnologiche, hanno frequenti cicli di rilascio e hanno un'ampia ridistribuzione del software.

Un esempio di progetto open source con una community fantastica è il framework Javascript di Facebook, React.

React è cresciuto fino alla versione 18 in nove anni, mentre un framework simile Vue.js è ancora alla versione 3. Entrambi i framework hanno meno di dieci anni. La vivace comunità di React mette in ombra altri popolari framework JavaScript, come Angular.

È divertente lavorare su progetti open source con comunità attive. Inoltre, non rimarrai mai indietro rispetto alle tendenze e agli aggiornamenti tecnologici. Trovare il migliori community tecnologiche Discord è un'eccellente aggiunta al tuo portafoglio open source.

5. I Maintainer sono attivi e attenti?

In un progetto open source, i manutentori sono contributori con il permesso di modificare i file nel repository di un progetto. I manutentori sono responsabili del progetto e assicurano che i contributi forniti al progetto siano in linea con i suoi obiettivi.

In un buon progetto open source, i manutentori sono i più attivi. Saranno responsabili dei canali della community, guideranno le discussioni e risponderanno alle domande dei contributori. I manutentori forniscono aggiornamenti e incoraggiano la collaborazione nella comunità.

Per determinare se un progetto ha manutentori attivi, guarda i suoi repository remoti, come GitHub. I manutentori attivi comunicano bene. Rispondono alle richieste pull, impostano i problemi e rispondono alle domande dei contributori.

Identifica i manutentori attivi controllando la frequenza con cui rispondono alle domande pubblicate sui canali social. Qualsiasi repository con tre mesi di interruzione della comunicazione non è un progetto adatto.

Caratteristiche di un buon progetto open-source

Mentre molte altre caratteristiche definiscono un progetto open source adatto, quelle importanti sono il tipo di licenza, la natura delle comunità, il codice sorgente e i manutentori attivi.

I progetti open source con le caratteristiche di cui sopra ispirano innovazione, scalabilità e progetti di marketing di livello mondiale. Inoltre, le grandi comunità open source tengono il passo con le tendenze tecnologiche e incoraggiano la collaborazione e la diversità.

È probabile che tu abbia utilizzato almeno un prodotto software aperto nella tua vita. Perché non iniziare da lì? Usa le caratteristiche menzionate in questo articolo per assicurarti di ottenere il miglior progetto che integri le tue capacità e necessità.