Panoramica
Originariamente, il termine open source si riferiva al software open source (OSS, Open Source Software). Il software open source è un codice progettato per essere accessibile pubblicamente. Chiunque può vederlo, modificarlo e distribuirlo secondo le proprie necessità.
Viene sviluppato tramite un approccio decentralizzato e collaborativo, che si basa sulla "peer review", ovvero le revisioni condotte dai colleghi e professionisti IT, e sul lavoro della community. Poiché sviluppato dalle community e non da una singola azienda o individuo, il software open source risulta essere una soluzione più economica, flessibile e longeva rispetto ai software proprietari.
Non più solo riferito alla produzione di software, l'open source è diventato il nuovo modello organizzativo basato su modalità di lavoro innovative. Facendo leva su un modello di produzione decentralizzato e valori aperti, il movimento open source è alla costante ricerca di nuove formule che superino le sfide affrontate dalle community e dai settori in cui operano.
Come funziona un modello di sviluppo open source?
Con modello di sviluppo open source si intendono le procedure utilizzate in un progetto della community open source per sviluppare software open source. Il software viene poi rilasciato con una licenza open source che consente a tutti di visualizzare o modificare il codice sorgente.
Molti progetti open source sono ospitati su GitHub, un servizio di hosting da cui è possibile accedere ai repository o essere coinvolti nei progetti della community. Linux®, Ansible e Kubernetes sono esempi di progetti open source di grande diffusione.
Noi di Red Hat utilizziamo un modello di sviluppo di software open source per creare i nostri prodotti e le nostre soluzioni open source per le aziende. Gli sviluppatori di Red Hat partecipano attivamente a centinaia di progetti open source di ogni tipo.
Tutto inizia con un software open source realizzato dalla community che soddisfa le esigenze dei nostri clienti, in toto o parzialmente. Partendo da questi progetti open source di base, Red Hat ne rafforza la sicurezza, corregge le vulnerabilità e aggiunge nuove funzionalità enterprise.
Quindi apportiamo queste migliorie al progetto originale affinché possa beneficiarne l'intera community.
Mentre i clienti usano il nostro software, ci offrono feedback, segnalano bug e chiedono funzioni aggiuntive che rispondano alle loro mutevoli esigenze. È l'input dei clienti a rendere sostenibile il modello di sviluppo di Red Hat.
Risorse da Red Hat
Linux è open source
Linux è un sistema operativo open source gratuito, rilasciato ai sensi della Licenza Pubblica Generica (GPL) GNU, che è diventato il più importante progetto software open source al mondo.
Il sistema operativo Linux nasce come versione open source alternativa e gratuita del sistema operativo MINIX, a sua volta basato sui principi e sul design di Unix.
La presenza di una licenza open source impedisce l'introduzione di limiti sull'utilizzo del software: chiunque può eseguire, studiare, modificare e ridistribuire il codice sorgente e persino vendere copie del codice modificato, purché restino nell'ambito della stessa licenza.
Qual è la differenza tra software libero, chiuso e open source?
Per molto tempo, il software open source è stato etichettato come "software libero". Il movimento del software libero ha avuto origine nel 1983 quando Richard Stallman, il suo fondatore ufficiale, ha dato avvio al progetto GNU. Il movimento del software libero ruotava attorno all'idea di libertà dell'utente: libertà di vedere il codice sorgente, modificarlo, distribuirlo e renderlo disponibile all'utente a seconda delle sue necessità.
Il software libero è la controparte del software proprietario o "a sorgente chiuso". Quest'ultimo, essendo altamente protetto, è accessibile solo dai proprietari del codice sorgente, che dispongono dei diritti legali esclusivi. Il codice sorgente chiuso, a livello legale, non è modificabile o riproducibile e l'utente paga per utilizzare il software "così com'è", senza poterlo alterare per nuovi utilizzi o condividerlo con le community.
Qual è il significato di open source?
Il termine "software libero", tuttavia, ha dato adito ad ambiguità d'interpretazione. "Software libero" non implica necessariamente libertà di possesso, ma libertà di utilizzo a seconda delle proprie necessità. La community ha provato a chiarire l'equivoco definendo "Free as in freedom, not as in beer" (libertà di parola, non birra gratis) rimarcando il contrasto di significato tra "libero" e "gratuito". Christine Peterson, che ha coniato il termine "open source", ha cercato di risolvere il problema sostituendo "software libero" con "open source": "il problema con il termine "software libero" non risiedeva tanto nella connotazione politica, quanto nel fatto che soprattutto i meno esperti si focalizzassero sulla questione del prezzo. Era quindi emersa la necessità di trovare un nuovo nome che spostasse l'attenzione sul codice sorgente e che non fosse ambiguo".
Peterson aveva proposto di sostituire "software libero" con "open source" a un gruppo di lavoro che, in parte, si dedicava a introdurre le pratiche del software open source nel mercato. Il gruppo voleva far capire al mondo che un software condiviso, quindi collaborativo, aperto e modificabile era migliore perché poteva essere utilizzato in modo diverso a seconda delle proprie necessità. Sottraendosi al monopolio dei fornitori, era più flessibile, economico e longevo.
Nel 1997 Eric Raymond, membro autorevole di questo gruppo di lavoro, ha introdotto queste tematiche nel suo saggio "La cattedrale e il bazaar". Parzialmente in risposta a questo saggio, nel 1998 Netscape Communications Corporation rilascia il codice sorgente come software libero, rendendo open source il suo progetto Mozilla. Nel suo modulo open source, quel codice è diventato poi la base di Mozilla Firefox e Thunderbird.
L'appoggio di Netscape al software open source ha costretto la community a pensare a come sottolineare gli aspetti pratici legati alle aziende del movimento del software libero. Così si è delineata la spaccatura tra open source e software libero: "open source" sarebbe stato il termine usato per indicare gli aspetti legali alla metodologia, alla produzione e al modo di condurre le attività lavorative. "Software libero", d'altra parte, sarebbe stato usato per enfatizzare l'aspetto filosofico delle stesse tematiche, puntando sul concetto della libertà dell'utente.
All'inizio del 1998 è stata fondata la Open Source Initiative, o OSI, formalizzando così la locuzione open source e stabilendo una definizione comune e condivisa in tutto il settore. Sebbene si guardasse ancora al movimento open source con diffidenza, dalla fine degli anni '90 all'inizio del 2000, da movimento marginale della produzione di software è diventato lo standard di settore di oggi.
Quali sono i vantaggi del software open source?
I motivi che fanno prediligere l'open source ai software proprietari sono svariati, ma i più comuni sono:
- Revisione paritaria: dato che il codice sorgente è accessibile liberamente e la community è impegnata in numerose iniziative, il codice open source viene revisionato in modo proattivo e migliorato dai programmatori. È come se si trattasse di un codice vivo e non chiuso o e statico.
- Trasparenza: se hai bisogno di sapere come e dove vengono spostati i dati e le modifiche che vengono apportate al codice, l'open source ti consente di verificare e tracciare tutti gli spostamenti in autonomia, senza doverti affidare a fornitori esterni.
- Affidabilità: un codice proprietario è vincolato a un'unica azienda o vendor che lo controlla, lo tiene aggiornato, si occupa delle patch e del suo funzionamento. Un codice open source, al contrario, fa affidamento sul contributo delle community open source che lo aggiornano continuamente, oltre che sugli autori che l'hanno creato. Gli standard aperti e la peer review garantiscono che il codice open source venga revisionato in modo appropriato e con regolare frequenza.
- Flessibilità: grazie alla sua natura, puoi modificare il codice open source per risolvere problematiche specifiche della tua azienda o della tua community. Non essendo usato in modo univoco, il codice ti permette di adottare nuove soluzioni contando sul supporto della community e sfruttando i benefici delle revisioni paritarie.
- Convenienza economica: società quali Red Hat offrono il supporto, il potenziamento della sicurezza e la gestione dell'interoperabilità. Questi sono i servizi a pagamento, il codice open source in sé è gratuito.
- Nessun vendor lock-in: libertà per l'utente significa che puoi utilizzare il tuo codice open source ovunque, per qualsiasi attività e senza restrizioni di tempo.
- Collaborazione aperta: le community open source offrono supporto, risorse e nuovi spunti che, esulando gli interessi di un singolo gruppo o azienda, sono sfruttabili da chiunque.
Perché scegliere l'open source di Red Hat?
Red Hat è la più grande azienda open source al mondo. Creiamo e supportiamo prodotti open source partendo da progetti open source. Restituiamo valore ai progetti e alle community di cui ci avvaliamo. Difendiamo le licenze open source e con l'open source, diamo ai nostri clienti gli strumenti per raggiungere il successo. Prendiamo il codice scritto dalla community e aggiungiamo funzionalità, rendendolo più sicuro, scalabile e a immediata disposizione delle aziende. Quindi apportiamo queste migliorie al progetto originale affinché possa beneficiarne l'intera community.
Il blog ufficiale di Red Hat
Leggi gli articoli del blog di Red Hat per scoprire novità e consigli utili sulle nostre tecnologie, e avere aggiornamenti sul nostro ecosistema di clienti, partner e community.