di Andrea Pollastri, Backend Developer in Excellence Innovation
Cosa si intende per soluzione Open Source?
Per Open Source (o OSS) si intende un modello di sviluppo software in cui il codice sorgente è pubblico, accessibile e modificabile liberamente da chiunque tramite specifiche licenze che regolamentano l’utilizzo e la distribuzione del codice.
È sicuro il codice Open Source?
Contrariamente a quanto si potrebbe pensare, l’Open Source non è sinonimo di vulnerabilità. Anzi, spesso garantisce un livello di sicurezza superiore rispetto ai sistemi proprietari, grazie al contributo di migliaia di sviluppatori che revisionano e mantengono il codice pubblicamente, identificando e risolvendo rapidamente le eventuali vulnerabilità.
Perché l’Open Source è vantaggioso per le soluzioni Enterprise?
Il valore di un prodotto informatico si basa sempre più sulla conoscenza e la creatività del team di sviluppo, non sul “riscrivere la ruota” progetto per progetto come accadeva in passato.
Grazie all’utilizzo di framework Open Source (che non sono altro che dei software “vuoti” che contengono numerose funzionalità utili a costruire software su misura), un team di sviluppo può focalizzarsi sulle esigenze specifiche del progetto integrando in esso algoritmi e customizzazioni.
Parlando di “numeri” ad esempio, l’utilizzo di Laravel (uno dei framework più stabili e diffusi), permette di ridurre i tempi di sviluppo di un CRM aziendale su misura del 40-50% rispetto a uno sviluppo che parte da zero, senza framework. Questo approccio comporta vantaggi oggettivi, tra i quali minori costi e maggiore agilità nel rispondere alle esigenze del mercato.
Bisogna considerare inoltre che l’adozione di tecnologie Open Source, grazie al fatto che nella maggior parte dei casi sono degli standard tecnologici, permette di attrarre talenti di ogni seniority e da ogni parte del mondo riducendo nel frattempo il tempo di formazione interna del team.
L’adozione dell’Open Source nelle multinazionali IT
Numerosi colossi tecnologici hanno recentemente sostituito soluzioni proprietarie con soluzioni Open Source per lo sviluppo dei loro prodotti Enterprise. Ecco alcuni esempi:
- IBM ha abbandonato le sue piattaforme proprietarie come AIX e attualmente il 95% dei suoi mainframe utilizzano Linux.
- Microsoft è passata dal kernel NT e strumenti closed (come .NET Classico) a .NET Core, Linux kernel e strumenti OSS come Git e Kubernetes, riducendo i tempi di sviluppo dei suoi prodotti commerciali del 40-50%. Microsoft ha anche contribuito attivamente al mantenimento di Linux, scrivendo oltre 20.000 righe di codice libero, e nel 2018 ha acquisito GitHub, il principale player su scala globale per la distribuzione di Open Source.
- Oracle ha acquisito MySQL da Sun e ha iniziato a distribuirlo in doppia licenza, commerciale e community, quest’ultima è supportata e mantenuta da migliaia di contributori Open Source che partecipano al progetto assicurandone affidabilità, sicurezza e scalabilità.
- SAP, un tempo focalizzata su soluzioni proprietarie, ha integrato OSS come Spring Framework e Kubernetes per lo sviluppo di app enterprise. Recentemente ha dichiarato che tra il 2015 e il 2020 ha visto una riduzione dei costi interni pari al 30%, e oggi oltre il 60% delle estensioni enterprise offerte da SAP si basano su soluzioni Open Source.
- Facebook ha sviluppato internamente tecnologie come Hack (per il backend) e React (per il frontend), rendendole successivamente Open Source. React, utilizzato in tutte le soluzioni Meta, è oggi uno dei framework più popolari e potenti al mondo, utilizzato in migliaia di siti web e software e mantenuto da una community attiva e responsiva che assicura la sua sicurezza e stabilità.
Conclusione
L’utilizzo di soluzioni Open Source nel mondo enterprise è diventata una leva strategica per migliorare l’efficienza, accelerare i tempi di consegna e ridurre i costi di licenza garantendo sicurezza, stabilità e scalabilità. Le componenti O.S. permettono agli sviluppatori di concentrarsi sulle funzionalità specifiche, utilizzando standard di settore condivisi, documentati e mantenuti, senza doversi occupare delle “basi” del software. Le esperienze di grandi aziende dimostrano e confermano che l’adozione di OSS è una carta vincente in un mercato sempre più veloce, esigente e competitivo.
LEGGI ANCHE – L’importanza dell’autoformazione nello sviluppo: un parallelo con l’AI