Quando si tratta di licenze per software open-source, esistono due ampie categorie. Alcune licenze rientrano nella categoria delle licenze copyleft, mentre altre sono licenze open source permissive.
In questo articolo, spiegherò cos’è il licensing del Software Open Source e i tipi.
Introduzione
Una Licenza Open Source è un tipo di licenza che consente agli utenti di visualizzare, modificare e condividere liberamente il codice sorgente del software. In questo modo, gli utenti possono aggiornare frequentemente il codice sorgente e costruire sul prodotto originale.
A seconda del tipo di Licenza Open Source scelto, gli utenti possono o meno essere in grado di svolgere determinate attività con il codice, come venderlo o utilizzarlo commercialmente. Inoltre, esistono molti diversi tipi di Licenze Open Source, ciascuna che offre termini e condizioni diverse a seconda di come si vuole utilizzare il materiale sorgente.
Pertanto, è importante comprendere appieno un tipo di Licenza Open Source prima di sfruttarne i vantaggi, quindi assicurati di informarti ulteriormente qui sotto prima di prendere qualsiasi decisione.
Tipi di Licenze Open Source
Licenze Permissive
Una licenza permissiva, a volte chiamata licenza non-copyleft, concede agli utenti il permesso di utilizzare, modificare e condividere il codice sorgente, ma gli utenti hanno anche la possibilità di modificare alcuni di quei termini e condizioni per la ridistribuzione, incluso il lavoro derivato. Nel contesto del software, un’opera derivata è un software basato su un programma esistente. Se l’originale è stato rilasciato con una licenza permissiva, un creatore può scegliere di condividere la propria opera derivata con termini diversi da quelli che la licenza dell’opera originale potrebbe aver richiesto.
Licenze Copyleft
Le licenze copyleft nell’open source forniscono all’utente del software open-source la libertà dell’autore di modificare, utilizzare e ridistribuire il software. Tuttavia, richiede agli utenti di trasmettere specifici diritti ad altri utenti a valle concedendo loro gli stessi diritti che erano stati originariamente concessi a loro.
Le licenze copyleft definiscono come sono consentite la ridistribuzione e le modifiche al codice, vietando qualsiasi tentativo di renderlo proprietario o non open. Ciò garantisce che gli sviluppatori che modificano il software abbiano accesso al codice sorgente per aggiornarlo o persino incorporare le proprie modifiche. Ovviamente, qualsiasi modifica deve essere resa disponibile affinché altri possano beneficiare della sua disponibilità open source. Questo non è un problema per usi accademici o di ricerca, ma è spesso un ostacolo quando si costruisce software commerciale.
Perché includere una Licenza Software Open-Source?
Includere una licenza software open-source è cruciale quando pubblichi o condividi il tuo software con altri come open source. Una licenza serve a diversi scopi importanti:
- Per promuovere la collaborazione e l’innovazione
Le licenze open source permettono a chiunque di visualizzare, modificare e distribuire il codice sorgente del tuo software. Questo incoraggia altri sviluppatori a contribuire al tuo progetto, correggere bug e aggiungere nuove funzionalità. Ciò può portare a un prodotto software più robusto e innovativo.
- Per dare agli utenti più controllo e flessibilità
Le licenze open source tipicamente consentono agli utenti di utilizzare, modificare e distribuire il software per qualsiasi scopo, incluso l’uso commerciale. Questo dà agli utenti più controllo sulla loro esperienza software e riduce la loro dipendenza dai fornitori di software proprietari.
- Per costruire una comunità intorno al tuo software
Una licenza open source può aiutarti a costruire una comunità di utenti e sviluppatori appassionati del tuo software. Questa comunità può fornire supporto, feedback e nuove idee per il tuo progetto.
- Per rendere il tuo software più accessibile e inclusivo
Il software open source è tipicamente gratuito da scaricare e utilizzare, ed è spesso disponibile in più lingue. Questo lo rende più accessibile alle persone di tutto il mondo, indipendentemente dal loro reddito o background.
Oltre a questi benefici, le licenze open source possono anche aiutarti a:
- Evitare violazioni di copyright**
Se distribuisci il tuo software senza una licenza, ti esponi potenzialmente al rischio di cause per violazione del copyright. Una licenza open source concede esplicitamente agli utenti il permesso di utilizzare, modificare e distribuire il tuo software, proteggendoti da responsabilità legali.
- Attirare e trattenere i migliori talenti
Molti sviluppatori di software di talento sono attratti dai progetti open source. Rilasciando il tuo software con una licenza open source, puoi rendere la tua azienda più attraente per potenziali dipendenti.
- Migliorare la reputazione del tuo marchio
Il software open source è ampiamente rispettato dalla comunità tecnologica. Rilasciando il tuo software con una licenza open source, puoi dimostrare il tuo impegno per la collaborazione e l’innovazione.
Popolari licenze software permissive
Le licenze software permissive sono tra le più popolari. In sostanza, queste licenze consentono agli utenti di modificare e ridistribuire il software come desiderano, con restrizioni minime. Tre delle versioni più popolari di licenze software permissive sono:
Licenza MIT
La Licenza MIT è la licenza software open source più popolare e permissiva. Fornisce agli utenti notevoli libertà, tra cui consentire loro di condividere, modificare, utilizzare e commercializzare liberamente il materiale se rispettano tutte le condizioni stabilite nella licenza.
Licenza Apache 2.0
La Licenza Apache 2.0 è una popolare licenza software permissiva che consente agli utenti di modificare e ridistribuire liberamente il software, garantendo al contempo che le dichiarazioni e gli avvisi di copyright risultanti siano mantenuti nella forma originale. Questa licenza open source consente modifiche e ridistribuzioni proprietarie e fornisce termini di licenza chiari in modo che chiunque possa comprendere i propri diritti quando utilizza il software.
Licenza BSD (Berkeley Software Distribution)
GitHub ti permette di scegliere tra due licenze BSD, la Licenza BSD 2-Clause “Semplificata”, talvolta denominata licenza “FreeBSD”; e la Licenza BSD 3-Clause “Nuova” o “Rivista”. La principale differenza tra queste due licenze è nella terza clausola. Questa clausola limita gli utenti del software dall’utilizzare il nome dell’autore, degli autori o dei contributori per approvare prodotti o servizi.
Licenza Software Boost
La Licenza Software Boost, proviene dalle Librerie Boost di C++ ed è stata approvata dall’OSI nel 2008. Questa licenza è simile alle licenze MIT e BSD, tranne per il fatto che non richiede l’attribuzione quando viene ridistribuita in forma binaria.
Licenze Software Open-Source Copyleft
Le licenze copyleft concedono agli utenti del software il permesso di utilizzare, modificare e condividere il codice sorgente, ma proteggono anche contro la riconcessione in licenza attraverso specifiche restrizioni e termini e condizioni. Questo rappresenta la caratteristica reciproca di questa licenza che richiede che il lavoro degli utenti aderisca ai diritti originali delineati nella licenza.
Licenze GNU Quando si tratta di licenze software copyleft, la GPL (General Public License) è una delle più popolari e ampiamente utilizzate. Questa licenza open-source concede agli utenti la libertà di distribuire copie e versioni modificate di un programma purché mantengano determinate condizioni, come gli avvisi di copyright, le esclusioni di garanzia o qualsiasi altra licenza che sia stata aggiunta al Programma non modificato.
Rendendo disponibile il software con questo tipo di licenza, gli sviluppatori si assicurano che altri abbiano accesso al loro codice sorgente, permettendo loro di apportare miglioramenti e adattamenti a beneficio della comunità. Inoltre, questo concetto di “copyleft” assicura che chiunque possa condividere collaborativamente le stesse libertà quando lavora con software libero.
Licenza Pubblica Mozilla
La Licenza Pubblica Mozilla, o MPL, proviene dalla Mozilla Foundation ed è considerata anche una licenza copyleft debole. La differenza con questa licenza (rispetto alla Eclipse Public License) è che si tratta di un copyleft basato sui file, il che significa che il codice può essere combinato con codice open-source o proprietario.
Eclipse Public License
La Eclipse Public License, proviene dalla Eclipse Foundation ed è considerata una licenza copyleft debole. Una licenza copyleft debole richiede agli utenti del software di condividere eventuali modifiche apportate al codice. Questa licenza ha scelto di implementare un copyleft più debole come modo per ridurre i requisiti più rigorosi che gli utenti incontravano con le Licenze Pubbliche Generali di GNU.
Come Puoi Scegliere La Licenza Corretta Per Il Tuo Progetto?
-
Se stai rilasciando il tuo progetto con una licenza open source, scegli una licenza compatibile con i progetti che stai utilizzando.
-
Se vuoi permettere ad altri di utilizzare il tuo progetto per scopi commerciali, scegli una licenza che lo permetta.
-
Se vuoi permettere ad altri di modificare e distribuire il tuo progetto, scegli una licenza che lo permetta.
-
Se vuoi assicurarti che il tuo progetto rimanga gratuito e open source, scegli una licenza copyleft.
-
Se non sei sicuro di quale licenza scegliere, l’Open Source Initiative ha un elenco di licenze popolari che puoi confrontare.
Scegliere la licenza corretta per il tuo progetto open source è una decisione importante. Considerando attentamente le tue esigenze e i tuoi obiettivi, puoi scegliere una licenza che ti aiuterà a raggiungere i risultati desiderati.
Nuova licenza di Capgo
Come posso realizzare tutto ciò? Cambiando la mia licenza.
Capgo ha ora cambiato la licenza da MIT a un nuovo schema di licenza chiamato GNU Affero General Public License V3 (AGPLv3) o qualsiasi versione successiva. La versione di Capgo può essere trovata qui
Capacitor-updater (il plugin) ha ora cambiato la licenza da LGPLv3 a un nuovo schema di licenza chiamato Mozilla Public License Version 2.0 (MPLv2) o qualsiasi versione successiva. La versione di Capacitor-updater può essere trovata qui
Questa modifica non fa alcuna differenza per nessuno di voi che si abbona a Capgo Cloud o che ospita autonomamente Capgo, ma potrebbe infastidire alcune aziende che hanno cercato di utilizzare il mio software per competere direttamente con me senza contribuire in cambio.
AGPL è una licenza con cui Google ha un problema, poiché non sono disposti a divulgare il loro codice sorgente chiuso. Google è contraria all’AGPL e afferma: “Il codice concesso in licenza sotto la GNU Affero General Public License (AGPL) NON DEVE essere utilizzato in Google”.
L’obiettivo dell’AGPL è massimizzare la libertà degli utenti e incoraggiare le aziende a contribuire all’open-source. Sono un’applicazione autonoma rivolta agli utenti. Non sono una libreria o parte di un progetto più grande. Non sto cercando donazioni da Google, quindi siamo felici di avere una licenza AGPL. È la licenza giusta per Capgo.
Conclusione
Ci sono molti fattori da considerare quando si sceglie una licenza per software open-source. Tuttavia, ci sono certamente scelte popolari tra la comunità degli sviluppatori. Le licenze permissive comuni includono la Licenza MIT, la Licenza Apache e la Licenza BSD. Alcune licenze copyleft comuni includono la GNU General Public License e la Mozilla Public License.