20 anni di open source: 9 ragioni per il codice sorgente libero
Quest'anno segna il 20° anniversario della Open Source Initiative, OSI in breve. Bruce Perens e Eric S. Raymond hanno fondato l'organizzazione nel febbraio 1998, e le loro idee sono diventate popolari. Il CTO/COO e co-fondatore di Wire, Alan Duric, ha un'alta opinione dell'open source e spiega perché il codice sorgente libero è il vantaggio competitivo del futuro.
Innovazione aperta invece di sviluppo di software chiuso - questo sarà il motto in futuro. Un'iniziativa dell'UE Studiare ha confermato che il software open source è un motore di innovazione e promette successo economico. Anche Microsoft, Facebook, Google e Amazon hanno riconosciuto la tendenza e hanno rilasciato parti del loro codice sorgente. Storie di successo come Firefox o OpenOffice.org hanno già dimostrato in passato che i progetti open source possono prevalere.
Nove ragioni per l'open source
I decisori dovrebbero conoscere le seguenti nove ragioni per il codice sorgente libero:
- Motivazione e produttivitàCon l'open source, il contatto diretto con la comunità è particolarmente motivante. Gli sviluppatori ricevono un feedback diretto da altri sviluppatori. Questo a sua volta aumenta la motivazione a progettare e sviluppare un prodotto ottimale alla fine.
- QualitàPoiché le linee di codice sono visibili a tutti, gli sviluppatori open source devono soddisfare elevati standard di qualità. Prima che la comunità possa vedere il codice, deve passare attraverso lunghi processi di revisione, specialmente per aggiornamenti o correzioni di bug. In questo modo, il codice è più pulito e più facile da capire. Inoltre, la documentazione dei progetti open source è un grande vantaggio. Per l'ulteriore sviluppo di un software, questa gerarchia di cambiamento recuperabile aiuta a mantenere lo standard di qualità.
- Sicurezza: Non appena il codice sorgente è stato rilasciato, gli sviluppatori esterni hanno la possibilità di fidarsi del codice. Spesso, i professionisti IT si concentrano sulla questione della protezione e della sicurezza dei dati. Per esempio, se vengono identificate backdoor nel codice sorgente e altre potenziali vulnerabilità di sicurezza, queste possono essere notate e risolte. Inoltre, il software può essere reso rapidamente e facilmente disponibile per audit indipendenti, il che a sua volta aumenta la fiducia nel software.
- TrasparenzaUn punto su cui la comunità dovrebbe essere sempre consapevole è il trattamento dei dati. Nei progetti open source, sono informati su ciò che accade ai propri dati trasmessi - se, per esempio, sono state deliberatamente implementate interfacce per terze parti. D'altra parte, gli utenti possono vedere se i propri dati sensibili sono protetti da meccanismi di crittografia. Questo aumenta anche significativamente la fiducia nel software.
- Flessibilità: Le aree di Big Data, Internet of Things e Co. sono caratterizzate da cambiamenti continui e forniscono nuovi impulsi nell'IT. Sulla base degli attuali sviluppi della scena tecnologica e del feedback della comunità, i produttori di software possono reagire di conseguenza e apportare modifiche al codice. Il vantaggio è che gli aggiornamenti continui migliorano il software e tengono conto degli interessi degli utenti.
- Democratizzazione: Il codice open source è deliberatamente destinato ad essere una base di discussione in modo che le funzionalità esistenti siano messe in discussione o gli aggiornamenti del prodotto siano incoraggiati. Questo perché il software può essere ottimizzato sulla base delle funzioni aggiuntive richieste o dei commenti sui linguaggi di programmazione utilizzati. I professionisti IT sono liberi di commentare, condividere e modificare il codice sorgente. La democratizzazione del codice sorgente significa condividere la conoscenza da un lato e discutere le tecnologie dall'altro. Le esperienze e i feedback hanno molta più influenza sulla scena digitale che per un singolo progetto software.
- Efficienza dei costi: Il software open source è più potente e scalabile della sua controparte proprietaria. Un altro vantaggio è che non ci sono costi di licenza quando si implementa ulteriore software open source, come l'Apache HTTP Server. Inoltre, gli sviluppatori esterni della comunità possono facilmente contribuire al codice di un progetto, spesso gratuitamente. A proposito: alcuni professionisti IT usano il loro coinvolgimento in progetti open source nei loro CV e in questo modo sottolineano la loro attrattiva per i datori di lavoro.
- Durata: Poiché il codice è disponibile online su piattaforme come GitHub, GitLab o Launchpad è disponibile, può essere visto per un lungo periodo di tempo. In questo modo, anche le linee di codice cancellate sono conservate e completamente documentate.
- IndipendenzaUn grande vantaggio è che le aziende impiegano il proprio team di sviluppatori e non dipendono dai fornitori di software. Inoltre, il loro know-how professionale viene ampliato da quello della rete di esperti. I servizi online che pubblicano il loro codice sorgente beneficiano di conseguenza di una simbiosi di conoscenze interne ed esterne e sono quindi indipendenti.
Conclusione: codice sorgente libero per un vantaggio competitivo
Prima che il progetto software sia reso disponibile al pubblico, sono necessarie molte revisioni interne e il codice dovrebbe essere controllato per la sicurezza. Inoltre, la comunità dovrebbe avere l'opportunità di dare un feedback - sia positivo che negativo. Ma a parte la trasparenza, ci sono naturalmente altre ragioni per affidarsi all'open source. Molte aziende condividono il successo di altri sviluppatori di software in questo modo, perché altre aziende affrontano le stesse sfide. La collaborazione permette sempre di ottimizzare il codice sorgente, di adattarlo in base agli interessi degli utenti, di segnalare dei bug o anche delle caratteristiche completamente nuove del prodotto. L'interazione comunitaria e lo scambio tecnico sono quindi i maggiori vantaggi dei progetti open source. In un mondo in cui servizi con portafogli di caratteristiche simili si contendono il favore degli utenti, la trasparenza, la fiducia e la capacità di innovare sono cruciali per sopravvivere nella competizione.
A proposito dell'autore: Alan Duric è CTO/COO e membro del consiglio di Messenger Filoed è responsabile delle sorti di un ambizioso team internazionale a Berlino. Inoltre, agisce come consulente per una serie di start-up tecnologiche e porta così i suoi anni di esperienza nei settori dell'open source, VoIP, sicurezza IT e architettura software.