[ Content | Sidebar ]

Differenze tra software libero ed open source

July 2nd, 2009

Nel gennaio 1998, la Netscape Communications Corporation decise di rendere pubblico il codice sorgente del proprio browser, Netscape Navigator. Tale scelta era maturata a causa della concorrenza sleale condotta dalla Microsoft Corporation, che, sfruttando il proprio monopolio nel mercato dei sistemi operativi, incluse il browser Internet Explorer come parte integrante di Windows, senza offrire all’utente la possibilità di disintallazione (tale operazione commerciale comportò una serie di azioni legali contro la Microsoft). Netscape Navigator per un certo periodo detenne l’80% del mercato dei programmi per la navigazione nel world wide web, ma non poteva competere con le politiche commerciali (e le risorse economiche) della Microsoft; venne deciso dunque di applicare un nuovo modello di sviluppo per questo software. Tale modello consisteva nella distribuzione pubblica dei sorgenti in maniera che potessero essere scaricati e modificati liberamente da sviluppatori di tutto il mondo; la comunità avrebbe ottenuto vantaggi pratici di accesso ad un codice già avanzato e la stessa Netscape avrebbe potuto trarre benefici attraverso l’integrazione delle nuove modifiche nelle successive versioni del proprio browser.
Tale risoluzione fu una scelta meditata da parte del consiglio direttivo della Netscape; un contributo fondamentale alla decisione definitiva fu apportato dalla lettura di un saggio scritto pochi mesi prima da Eric Steve Raymond, intitolato “The Cathedral and the Bazaar”. In quest’opera l’autore descrive un nuovo modello di sviluppo software adducendo esempi pratici e proponendo le metafore della “cattedrale”, composta da un gruppo esclusivo e isolato di sviluppatori, ed il “bazar”, luogo in cui il codice può essere liberamente modificato da chi ne abbia le capacità e gli utenti possono interagire direttamente con gli sviluppatori.
Il rilascio dei sorgenti di Netscape pose un interrogativo circa la possibile definizione di questo nuovo metodo di sviluppo. L’idea era certamente ispirata al concetto di software libero ma non si basava esattamente sui medesimi principi etici, sociali e politici; ci si riferiva piuttosto ai vantaggi pratici che si sarebbero potuti ottenere attraverso un ampliamento della comunità che ruotava attorno ad un programma, offrendo un tornaconto anche alle aziende che avrebbero adottato questa modalità di lavoro.
Nacque così il termine open source, che focalizzava l’attenzione sull’apertura del codice sorgente e non dava adito ad alcun dubbio intorno alla parola “free”, specialmente nel mondo aziendale, poco o per nulla interessato alle manifestazioni ideologiche della FSF, ma soprattutto intimorito dal termine che in molti casi era inteso erroneamente come gratuità e mancanza di valore sul mercato. L’open source condivideva molti obiettivi con il free software, ma si concentrava prevalentemente sul prodotto finale, il software, che attraverso questa innovativa metodologia di sviluppo sarebbe risultato flessibile, potente e soprattutto affidabile poiché “given enough eyeballs, all bugs are shallow”.
Nel febbraio del 1998 venne registrato il marchio “Open Source” al fine di tutelarlo da usi impropri e si avviò la Open Source Initiative (OSI), che elaborò la Open Source Definition, un documento contenente le linee guida che permettessero di certificare un software con il marchio “open source”.
È necessario che la licenza di un software soddisfi i seguenti requisiti perché questo possa essere definito “open source”:

  • il software può essere liberamente distribuito, venduto o regalato;
  • il codice sorgente deve essere distribuito con il programma oppure è necessario indicare il modo per ottenerlo (preferibilmente attraverso lo scaricamento gratuito da internet);
  • la distribuzione di modifiche o prodotti derivati deve essere permessa;
  • la licenza può impedire la diffusione di forme modificate del codice sorgente originale purché ne permetta la distribuzione accompagnata da patch;
  • la licenza non deve discriminare alcuna persona o gruppo di persone;
  • nessun ambito o campo d’applicazione, sia per fini didattici che commerciali, può essere vietato dalla licenza;
  • i diritti allegati ad un software devono essere applicabili a tutti coloro che lo riceveranno, senza la necessità di imporre licenze di terze parti;
  • i diritti del programma vengono mantenuti anche a seguito della sua distribuzione in un pacchetto più ampio;
  • la licenza allegata ad un software non deve applicare restrizioni ad altri software eventualmente distribuiti con esso;
  • la licenza deve essere neutrale rispetto a tecnologie specifiche; non è possibile vincolare al web, ad un particolare medium o interfaccia la sua accettazione.
Il marchio "OSI Certified"

Il marchio "OSI Certified"

L’Open Source Initiative approva ufficialmente diverse licenze che rispettano tali condizioni, contemplando anche la GPL e la LGPL della Free Software Foundation (si può affermare pertanto che ogni software libero è anche open source, ma non viceversa). Un software rilasciato secondo i termini di tali licenze può essere definito “OSI Certified”.
Nel sito della Free Software Foundation è riportata una chiarificazione delle differenze tra software libero e open source:

“While free software by any other name would give you the same freedom, it makes a big difference which name we use: different words convey different ideas.
In 1998, some of the people in the free software community began using the term “open source software” instead of “free software” to describe what they do. The term “open source” quickly became associated with a different approach, a different philosophy, different values, and even a different criterion for which licenses are acceptable. The Free Software movement and the Open Source movement are today separate movements with different views and goals, although we can and do work together on some practical projects.
The fundamental difference between the two movements is in their values, their ways of looking at the world. For the Open Source movement, the issue of whether software should be open source is a practical question, not an ethical one. As one person put it, “Open source is a development methodology; free software is a social movement.” For the Open Source movement, non-free software is a suboptimal solution. For the Free Software movement, non-free software is a social problem and free software is the solution.

Confrontiamo ora tali affermazioni con quanto dichiarato nel sito dalla Open Source Initiative:
“The Open Source Initiative is a marketing program for free software. It’s a pitch for “free software” because it works, not because it’s the only right thing to do. We’re selling freedom on its merits. We realise that many organisations adopt software for technical or financial reasons rather than for its freedom. Many users learn to appreciate freedom through their own experience, rather than by being told about it.”

Il movimento open source contempla una possibile convivenza tra software a sorgente aperta e software proprietario e si propone come “programma di marketing”, concentrandosi principalmente sui vantaggi pratici ottenibili attraverso la collaborazione di una comunità di utenti, che si scambia il codice e lo migliora; si tratta di un modello appetibile per le aziende, che in questo modo possono sviluppare software di alta qualità avvalendosi non solamente dei propri dipendenti.
I sostenitori del free software, al contrario, ritengono che il software dovrebbe essere unicamente libero e perseguono propositi più nobili, come la libertà di collaborazione e creazione di una comunità, al fine di migliorare la società e la qualità della vita.
Ciononostante i due gruppi condividono molte idee e collaborano rispetto ad obiettivi comuni. Nella pratica non vi è dunque una grande differenza tra open source e software libero e i termini spesso vengono confusi o utilizzati come sinonimi. Si potrebbe affermare che il software libero propone un approccio più “elevato” al tema, che trascende il mero campo dello sviluppo informatico, mentre l’open source consiste in una sorta di compromesso tra questi ideali e le esigenze pratiche di mercato.

___

Questo articolo è tratto dalla mia Tesi di Laurea:

Alberto Betella, “Open Source, Free Software e Podcasting: l’esperienza di Pluriverisadio”, Università degli Studi di Bergamo, A.A. 2005/2006.

Software libero e licenza GPL

May 11th, 2009

Al fine di approfondire il concetto di “libertà” del software riportiamo una trascrizione del seminario tenuto da Stallman nel maggio 2005 all’università di Bologna, organizzato nell’ambito del master in “Tecnologia del Software Libero e Open Source”:

“Free software means software that respects user’s freedom. It does not mean zero price software, in fact it’s not directly about money at all, it’s about freedom, so think of free speech, not free beer [...] The software that’s available to the public, but not free software, is called proprietary software or non-free software or user subjugating software, because it keeps the users divided and helpless; divided because each one is forbidden to share, and helpless because the users don’t have the source code so they can’t change the software, they can’t even verify what it does. Free software develops in a kind of democratic society under the control of its users, proprietary software gives the developer power over the user [...] its distribution system is a system for subjugating people, for exercising power over people; and that makes it fundamentally unethical.”

Stallman attraverso la ricorrente esortazione ad intendere il termine free come “libertà di parola” piuttosto che “birra gratis”, chiarisce la valenza semantica di questo vocabolo che, nella lingua inglese, potrebbe dare adito ad incomprensioni; la libertà nel software non ne implica la gratuità (anche se nella maggior parte dei casi il software libero è pure gratuito).
Egli definisce quattro libertà che devono essere rispettate perché un software possa essere considerato “libero”:

“To understand free software you need to understand what the freedoms are: the definition of free software is that the user has four specific freedoms, freedoms that every user of software always should have. Freedom zero is the freedom to run the program as you wish, freedom one is the freedom to help yourself, in other words the freedom to study the source code of the program and then change it to do what you wish. Freedom two is the freedom to help your neighbor; that’s the freedom to make copies and distribute to others, and freedom three is the freedom to help your community, that’s the freedom to publish modified versions so others can get the benefit of your contribution. These four freedom are all essential; in order to be free software the program must give you all of these freedoms.”

Stallman nel 1989 sintetizzò queste libertà in una licenza, la GNU General Public License (GPL). Il software tutelato da tale licenza può essere liberamente utilizzato, modificato, copiato e distribuito; inoltre chi rilascia software secondo questi termini deve distribuirne il codice sorgente. Infine chiunque apporti aggiunte o miglioramenti a programmi rilasciati mediante GPL è vincolato a rendere libere le proprie modifiche.
La General Public License è scritta con un linguaggio giuridico e possiede una valenza legale, poiché registrata dalla Free Software Foundation, che ne detiene il copyright:

“Preamble
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software–to make sure the software is free for all its users. [...] Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.[...]”

L’autore di un software ne detiene la paternità intellettuale, ed è un suo diritto optare per la tutela del proprio lavoro attraverso una licenza che permetta di riprodurlo, utilizzarlo e ridistribuirlo, vincolando chiunque lo modifichi a fare lo stesso.
L’idea geniale che sta alla base della GPL (e di altre licenze promosse dalla FSF) consiste proprio nello sfruttamento della stessa legge sul copyright per istituzionalizzare legalmente il copyleft.

___

Questo articolo è tratto dalla mia Tesi di Laurea:

Alberto Betella, “Open Source, Free Software e Podcasting: l’esperienza di Pluriverisadio”, Università degli Studi di Bergamo, A.A. 2005/2006.

Cultura Libera

April 10th, 2009

Cultura Libera - Copertina

Cultura Libera - Copertina

Cultura libera, un equilibrio fra anarchia e controllo, contro l’estremismo della proprietà intellettuale, è un libro di Lawrence Lessig, edito in Italia da Apogeo.

Cito la quarta di copertina:
“Cultura libera non è un libro sulla legge o sulla tecnologia, le aree di competenza dell’autore. E’ un libro sul potere.
Specificamente, parla del modo in cui il potere finanziario e politico è usato dalle grandi aziende per conservare lo status quo e favorire i propri interessi commerciali. Il che può andare a svantaggio di qualcosa di più prezioso dal punto di vita sociale: una perdita di creatività che non si può misurare

- The Economist”.

Il libro è rilasciato attraverso una licenza Creative Commons e può essere anche letto online direttamente sul sito dell’editore.