Software open source

I Software Open Source: che cosa sono e quali sono i diversi tipi di licenza

I software open source sono una categoria di programmi le cui licenze d’uso si contrappongono a quelle dei c.d. software proprietari. Il termine open source, letteralmente tradotto come “sorgente aperta”, si riferisce alla condivisione del codice sorgente da parte del programmatore.

Per chi non lo sapesse, in un software si distinguono codice sorgente e codice oggetto. Il primo è il testo dell’algoritmo scritto in un linguaggio di programmazione. Il codice oggetto invece, detto anche linguaggio macchina, è la traduzione del sorgente in un codice binario fatto di 0 ed 1. Quest’ultimo fornisce istruzioni alla macchina sull’apertura e chiusura di circuiti elettrici, permettendo conseguentemente l’esecuzione del programma. Mentre il codice sorgente è comprensibile da un programmatore che conosca un determinato linguaggio, il codice oggetto è comprensibile solo dalla macchina che lo esegue.

Gli autori di software proprietari distribuiscono tramite licenze a pagamento soltanto il codice oggetto, mentre mantengono segreto il codice sorgente. Ciò rende più complicato studiare il funzionamento del software e conseguentemente crearne delle versioni alternative. Di conseguenza, la software house che ha investito nello sviluppo del programma è in grado di mantenere elevato il prezzo delle licenza.

Diversamente, gli autori di software open source distribuiscono mediante licenze d’uso, non necessariamente gratuite, sia il codice oggetto che il codice sorgente. Ciò permette ad altri programmatori di studiare il codice, di migliorarlo, incorporarlo in altri programmi e condividerlo a loro volta. La finalità dei software open source è dunque quella di permettere alla comunità informatica di condividere il lavoro affinché tutti possano beneficiarne e migliorare lo stato dell’arte.

Le licenze Open Source

Un errore comune è quello di ritenere che un software open source sia sempre e totalmente libero, ovvero non protetto da copyright ed utilizzabile senza restrizioni. In realtà, anche i software open source sono condivisi mediante delle licenze, le quali possono essere più o meno restrittive. Per comprendere quali attività sono consentite e quali no, occorre leggere e comprendere la licenza software. Giuridicamente non vi è alcuna differenza concettuale fra licenze di software proprietari e licenze open source. La differenza sta nel fatto che, mentre le prime sono molto restrittive e permettono un uso limitato del programma, le seconde sono molto ampie e prevedono la condivisione del codice sorgente.

Le 4 libertà di base dei software liberi

Nel 1985, il programmatore statunitense nonché portabandiera del software libero Richard Stallman fondò la Free Software Foundation (FSF). Nel 1991, la FSF ha stilato un elenco di 4 libertà fondamentali che definiscono un Free Software. Affinché si possa parlare di software libero, la licenza con cui viene distribuito deve permettere le seguenti facoltà:

  • eseguire il programma, per qualsiasi scopo (freedom 0);
  • studiare come funziona il programma ed adattarlo alle proprie necessità (freedom 1);
  • ridistribuire copie (freedom 2);
  • migliorare il programma e pubblicare miglioramenti (freedom 3).

La definizione di Software Open Source

Nel 1998, la Open Source Initiative (OSI) ha ripreso le 4 libertà fondamentali del Free Software per elaborare una definizione di Software Open Source. Affinché una licenza possa considerarsi open source deve prevedere, fra le altre cose, le 4 liberà fondamentali sopra elencate, assicurare l’assenza di discriminazioni e l’accesso diretto del licenziatario al codice sorgente. Quando tutti questi requisiti sono integrati, si può parlare di Free and Open Source Software (FOSS).

Le licenze copyleft

Come sopra anticipato, non tutte le licenze open source attribuiscono al licenziatario le stesse facoltà. Per comprendere quali attività sono consentite su un software open source è necessario leggere la licenza con cui è stato rilasciato.

Per una software house è spesso fondamentale rispondere alla seguente domanda: è possibile incorporare un software open source all’interno di un altro programma e vendere il risultato come un software proprietario? É estremamente comune che una software house utilizzi all’interno del proprio software proprietario altri programmi, libraries, o pati di codice rilasciati in open source.

In base alla definizione di Free and Open Source Software (FOSS), la facoltà di incorporare e rivendere un software open source all’interno di un software proprietario non è preclusa.

Ecco che, proprio allo scopo di limitare questa possibilità e mantenere completamente liberi sia il software originale che le sue implementazioni, sono nate le licenze Copyleft. Una licenza Copyleft consente l’utilizzo di un software open source per creare un programma derivato soltanto a condizione che:

  • il software derivato venga a sua volta distribuito utilizzando la medesima licenza;
  • sia consentito l’accesso al codice sorgente sia del software originale che del software derivato.

Ciò fa sì che anche le successive implementazioni e modifiche di un codice nato come open source restino aperte e disponibili per la comunità.


Un progetto nato sulla scia del movimento Open Source e Copyleft è quello delle licenze Creative Commons. Per approfondire l’argomento lei “Licenza Creative Commons: fra Copyright e pubblico dominio“.


La classificazione delle licenze open source

Premesso che le licenze FOSS non sono tutte uguali e che ne esistono almeno 70 diverse fra quelle riconosciute dalla OSI, possiamo classificarle in tre categorie principali.

Licenze open source “permissive”

Sono licenze open source permissive quelle che non pongono condizioni alla redistribuzione e permettono di incorporare il codice in un software proprietario e rivenderlo al suo interno.

Fra le licenze permissive, le più comuni sono la Berkeley Software Distribution (BSD), la MIT Licence e la Apache Software License. Anche queste licenze richiedono a chi usa il software il rispetto di alcune condizioni, quali l’indicazione del copyright e la presenza di un disclaimer nel codice sorgente e nella documentazione allegata al programma. É dunque importante leggere la licenza prima di utilizzare il software.

Licenze open source “strong copyleft”

Sono licenze strong copyleft quelle che consentono la redistribuzione del software open source e di quelli che lo incorporano o modificano solo alle medesime condizioni della licenza originaria. In sostanza, queste licenze impediscono di privatizzare i software che fanno uso di codici open source.

La più nota fra le licenze strong copyleft è la GNU General Public License (GPL), utilizzata per GNU/Linux, WordPress, VLC, Drupal etc.

Licenze open source “weak copyleft”

Le licenze weak copyleft sono una via di mezzo fra le permissive e le strong copyleft. Queste licenze permettono di utilizzare il software all’interno di altri programmi rivenduti con licenze proprietarie. Tuttavia, i software open source incorporati devono essere ridistribuiti con la loro propria licenza e con il codice sorgente.

Rientrano in questa categoria la Lesser General Public License (LGPL) e la Mozilla Public License (MPL), utilizzate per programmi come Libre Office, Mozilla Firefox e Thunderbird, XWiki etc.

Conclusioni

Il movimento open source si fonda sull’idea che la condivisione del lavoro e della proprietà intellettuale in materia di software possa accelerare lo sviluppo e apportare un vantaggio all’intera collettività. Ciò non preclude la possibilità di utilizzare i software open source per attività commerciali, considerando che anche gli incentivi economici e la concorrenza possono contribuire ad accelerare lo sviluppo.

É dunque sbagliato ritenere che open source sia sinonimo di gratuità e libertà assoluta. Senza dubbio si tratta di licenze che, a differenza di quelle proprietarie, prevedono una vasta gamma di possibili utilizzi del software. Tuttavia, è sempre necessario leggere e comprendere la licenza prima di utilizzare un software, soprattutto per finalità commerciali. Soltanto così si può essere sicuri di rispettarne le condizioni e di non violare l’altrui proprietà intellettuale sul software.

 

Licenza Creative Commons
Quest’opera è distribuita con Licenza Creative Commons Attribuzione 3.0 Italia.

0 Comments

Leave a reply

Il tuo indirizzo email non sarà pubblicato.

© 2019 - Avv. Massimo Bacci - Prato (IT) Via Valentini 23/a - P.IVA 06212440488 - Iscritto all'Ordine Avvocati di Prato

CONTACT US

We're not around right now. But you can send us an email and we'll get back to you, asap.

Sending

Log in with your credentials

Forgot your details?