Cos'è OSS (open source software)?

OSS (Open source software) è un modello di sviluppo decentralizzato che distribuisce pubblicamente il codice sorgente per consentire una collaborazione aperta e la peer production, il cosiddetto modello "The open source way."

Uomo che lavora a un computer desktop

OSS (open source software) e CSS (closed source software) a confronto

'The open source way' è un modo di pensare e collaborare all'interno della community open source. Questa filosofia si basa sulla libertà intellettuale e su alcuni principi fondamentali: trasparenza, collaborazione, distribuzione, inclusione e community. Lo scambio di idee e di software sviluppato dalle community ha promosso il progresso tecnologico, scientifico e creativo in settori quali: istruzione, Pubblica amministrazione, legale, sanitario e manifatturiero. Questo movimento ha creato un sistema che consente a una community globale di collaborare, condividere e assistere  sia gli obiettivi individuali che quelli di gruppo attraverso il codice sorgente.

L'OSS (open source software) viene definito collaborativo in quanto si basa sulla produzione della community e sulla revisione paritaria (peer review) per utilizzare, modificare e condividere reciprocamente il codice sorgente. Gli sviluppatori condividono insight, idee e codice per creare soluzioni software più innovative sia a livello collettivo che individuale. Questo software scalabile e flessibile garantisce a chiunque disponga del codice sorgente di poterlo modificare, migliorare e ridistribuire per un riutilizzo e un'accessibilità migliori. L'OSS (open source software) opera con i principi fondamentali della produzione paritaria (peer production) e della collaborazione di massa, creando un sistema di sviluppo software più sostenibile per gli utenti finali.  

Il CSS (closed source software) è software proprietario che non è distribuito al pubblico. Il software è crittografato, quindi solamente gli autori originali che hanno creato il codice hanno il diritto esclusivo di copiare, cambiare, aggiornare e modificare il codice sorgente. Il CSS impone delle limitazioni su ciò che l'utente finale può fare con l'applicazione, impedendogli di modificare, condividere, copiare o ripubblicare il codice sorgente.

Oltre al CSS e all'OSS, l'FOSS (Free/Open Source Software) consente agli utenti di accedere al software da un punto di vista più filosofico. All'interno di FOSS, troviamo FSF (Free Software Foundation) per tutelare le libertà degli utenti e OSI (Open Source Initiative), per garantire i valori tecnici di un software affidabile. Esiste un'ampia varietà di licenze software gratuite che possono essere utilizzate, modificate e immesse sul mercato, tra cui: licenze GPL, LGPL e BSD.

Tra le licenze OSS (open source software) più diffuse troviamo:

  • MIT License©: MIT License è una licenza software gratuita che consente agli utenti di modificare il codice originale con pochissime limitazioni. 
  • GNU General Public© (GPL): la GNU è una serie di licenze software gratuite che garantisce agli utenti finali la capacità di eseguire, studiare, condividere e modificare il software. 
  • Apache®: la Apache License 2.0 è una licenza software gratuita che consente agli utenti di utilizzare, modificare e distribuire il software per qualsiasi scopo. 
  • BSD: questa licenza ha meno limitazioni per gli sviluppatori e consente agli utenti di utilizzare e modificare il codice senza dover condividere le modifiche.
  • MySQL™: MySQL è un sistema di gestione del database open-source con due licenze separate - MySQL Standard Edition e MySQL Enterprise Edition.
  • SUSE: SUSE Linux è sviluppato sulla base del kernel Linux open source e viene distribuito con software applicativi e di sistema.
  • Ubuntu®: Ubuntu è una distribuzione Linux che comprende software open source e gratuito, rilasciato in modalità desktop, cloud e IoT.

La storia di Unix® e Linux

Lo sviluppo di Unix è iniziato nel 1969 presso gli AT&T® Bell Labs come prodotto proprietario ma concedibile in licenza.  Per i dieci anni successivi, lo sviluppo di Unix ha avuto più versioni tra cui la V6, che è diventata la prima versione disponibile al di fuori di Bell Labs.

Data la natura del nuovo linguaggio, questo codice ha ben presto attirato l'attenzione della community accademica. La University of California a Berkley ha iniziato così a sviluppare la sua versione di Unix e ha ben presto sviluppato una versione accademica chiamata Berkley Software Distribution (licenza BSD). Nel frattempo, AT&T ha lavorato all'evoluzione della sua versione di Unix in System V. Queste due versioni poi si sono fuse tra loro per creare la settima edizione unificata di Unix, che poi si è ulteriormente evoluta in programmi come: Sun Solaris, FreeBSD, NetBSD e OpenBSD.

Nel 1984, Richard Stallman ha creato un clone di Unix gratuito chiamato GNU (GNU's Not Unix). Questa versione era aperta e poteva essere liberamente utilizzata, modificata e ridistribuita a seconda delle necessità. Nel 1991, Linus Torvalds ha creato il kernel del sistema operativo noto come "Linux" o kernel Linux. Combinato con i componenti FSF e BSD, Linux è diventato un sistema operativo completo; ora può essere eseguito su diverse architetture ed è stato adottato o supportato dai vendor storici di Unix.


Open source nelle aziende

L'open source aziendale è più di un semplice open source; è un'integrazione di una singola libreria open source concessa in licenza permissiva che viene eseguita sull'open source. Un prodotto, per essere definito open source aziendale, deve essere testato, adattato ed esaminato per individuare eventuali difetti di sicurezza da un team di sicurezza in grado di rispondere ai problemi di sicurezza. L'open source aziendale presenta anche funzionalità utili, come l'SSO (single sign-on) e l'integrazione con piattaforme SSO e la gestione delle directory.

Gli ambienti IT aziendali richiedono molti investimenti e tanta pianificazione, rendendo spesso il software già obsoleto quando le applicazioni vengono installate. Queste applicazioni inoltre richiedono spesso formazione e certificazioni aggiuntive che vengono indicate negli accordi di servizio. Tuttavia, l'open source aziendale ha un ciclo di vita prevedibile, con informazioni e componenti che si spostano a velocità differenti. Il software ha una lunga durata con applicazioni importanti; ad esempio, Red Hat® Enterprise Linux ha un ciclo di vita di 10 anni.   

Molte aziende e molti utenti preferiscono utilizzare l'OSS (open source software) invece del software proprietario o commerciale per la sua versatilità, sicurezza, evoluzione, community, formazione e stabilità.  Alcuni dei vantaggi derivanti dall'utilizzo dell'open source sono: costi e risparmi, flessibilità di personalizzazione del codice e libertà di avvalersi di un'intera community invece che di un singolo vendor. Ci sono anche degli svantaggi riguardo all'open source, tra cui: supporto e documentazione scarsi, eccessiva complessità, pubblicità intrusiva e vulnerabilità.

Per coloro che necessitano ancora di un software proprietario, ci sono degli svantaggi in termini di software obsoleto, prodotti in serie, costi più elevati o imprevisti, accordi di licenza poco chiari e dipendenza da un unico vendor.  Tuttavia, alcune aziende sono attratte dall'idea di un singolo vendor per avere un unico punto di riferimento per tutti gli acquisti, dei prodotti di livello aziendale scalabili, un'interfaccia professionale, degli aggiornamenti di routine, nessuna programmazione richiesta e l'integrazione con applicazioni e prodotti. 


Storia ed evoluzione

Impegno verso l'open source

Molte società come IBM si sono impegnate nell'open source, nello specifico supportando le community emergenti, contribuendo allo sviluppo di licenze e promuovendo la governance e gli standard.

Framework della blockchain flessibili

Scopri di più su Hyperledger Fabric, il framework della blockchain che sta aiutando gli innovatori con una trasformazione del business globale.


Soluzioni

Soluzioni dei server Linux

Integra Linux nella tua infrastruttura IT on-premise e nel cloud per flessibilità e controllo migliori.


Linux su IBM Z

Il sistema operativo Linux sulla piattaforma mainframe IBM Z consente privacy dei dati e sicurezza informatica in un ambiente di multicloud ibrido.


IBM LinuxONE

Scopri il server OSS (open source software) sicuro con scalabilità e sicurezza ottimali per le applicazioni critiche.


Enterprise Linux on Power Systems™

Gestisci enormi quantità di dati per i carichi di lavoro moderni tramite i server operativi e le infrastrutture aperte.


Sistema operativo IBM AIX

Trai vantaggio da un sistema operativo scalabile basato su standard, con impostazioni di sicurezza attendibili, tempi di attività senza eguali e protezione degli investimenti garantita.


Applicazioni Red Hat su IBM cloud

Con Red Hat è possibile creare e sviluppare applicazioni da distribuire su cloud pubblico o privato IBM.