Concetto free software

download Concetto free software

If you can't read please download the document

description

Perché il Free software non è Open Source

Transcript of Concetto free software

  • 1. Free Software e Open Source Mario Govoni

2. Quest'opera stata rilasciata sotto la licenza Creative Commons Attribuzione-Non commerciale-Condividi allo stesso modo 2.5 Italia. Per leggere una copia della licenza visita il sito web http://creativecommons.org/licenses/by-nc-sa/2.5/it/ o spedisci una lettera a Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA. 3. Free software/Open Source

  • Cosa si intende per Free Software

4. Cosa si intende per Open Source 5. Differenze? 6. Le licenze libere 7. Free software Le quattro libert

  • Libert di eseguire il programma, per qualsiasi scopo (libert 0).

8. Libert di studiare come funziona il programma e adattarlo alle proprie necessit (libert 1). L'accesso al codice sorgente ne un prerequisito. 9. Libert di ridistribuire copie in modo da aiutare il prossimo (libert 2). 10. Libert di migliorare il programma e distribuirne pubblicamente i miglioramenti, in modo tale che tutta la comunit ne tragga beneficio (libert 3). L'accesso al codice sorgente ne un prerequisito. 11. General Public License (punti salienti)

  • possibilit di modificare il software, di copiarlo e ridistribuirlo con o senza modifiche, sia gratuitamente sia a pagamento;

12. disponibile il codice sorgente a ogni acquirente, incluse tutte le modifiche eventualmente effettuate (questa caratteristica detta copyleft); 13. quando l'utente crea delle modifiche private al software ma non lo distribuisce: in questo caso non tenuto a rendere pubbliche le modifiche; 14. se qualcuno distribuisce un software (in particolare, versioni modificate) senza rendere disponibile il codice sorgente o violando in altro modo la licenza, pu essere denunciato dall'autore originale secondo le stesse leggi sul copyright. 15. Non modificabilit della licenza GPL A differenza dei software con essa distribuiti, la GNU GPL non liberamente modificabile: copiarla e distribuirla permesso, ma modificarla vietato. 16. Licenze derivate LGPL LGPL (Lesser General Public License): GPL ammorbidita. un ponte tra la GPL e altre licenze non copyleft, come, ad esempio, la BSD. Un software rilasciato sotto licenza LGPL pu essere incluso liberamente in un'applicazione non aperta, a condizione che le modifiche apportate al codice sorgentesiano pubbliche; gli altri file dell'applicazione non sono contaminati dalla GPL e possono essere rilasciati con licenza proprietaria e senza codice sorgente. utile quando si sviluppano librerie, in modo da rendere compatibili programmi liberi e non. 17. Licenze derivate GNU Free Documentation License GNU Free Documentation License: creata per distribuire la documentazione di software e materiale didattico. Stabilisce che ogni copia del materiale, anche se modificata, deve essere distribuita con la stessa licenza. Tali copie possono essere vendute e, se riprodotte in gran quantit, devono essere rese disponibili anche in un formato che faciliti successive modifiche. Un esempio Wikipedia. 18. free speech o free beer? Free software is a matter of liberty, not price. To understand the concept, you should think of free as in free speech, not as in free beer. (Richard M. Stallman) 19. free speech o free beer? La parola free nella lingua inglese ha due significati:

  • Libero;

20. Gratuito. Da qui l'errata percezione che il free software debba essere gratuito. In pratica di un software libero non mi posso far pagare la licenza d'uso (come avviene per i software proprietari), ma solo gli eventuali servizi a valore aggiunto (customizzazione, documentazione, formazione, confezione, installazione e simili). 21. Nascita del movimento Open Source

  • La licenza GPL (o LGPL) ritenuta contagiosa (le modifiche apportate a un codice GPL devono avere la stessa licenza);

22. Per ammorbidire il concetto, nel 1997 Raymond, Perens, Ockman e altri pensarono di ridefinire l'ideologia del software libero e coniarono il termine Open Source; 23. La definizione consente di superare i malintesi legati all'uso della parola Free. 24. Cos' l'Open Source?

  • La filosofia Open Source,descrittada Raymond ne La Cattedrale e ilBazar , contrappone due idee di sviluppo del software: quella centralizzata e monolitica (la cattedrale) e quella diffusa (ilBazar ).

25. Il testo di Raymond gode di una fama superiore ai suoi meriti. Free software e software Open Source, in realt, spesso sono portati avanti da comunit di sviluppatori, a somiglianza di quanto scritto nel libro citato. 26. Il codice aperto favorisce modello dello sviluppo diffuso, e quindi la filosofia Open Source pone l'accento sul lato pratico della libert, pi che su quello etico. 27. Vantaggi portati dall'Open Source La scelta a favore dell'Open Source da parte di alcune importanti imprese del settore come la Netscape, l'IBM, la Sun Microsystems e l'HP, facilitarono inoltre l'accettazione del movimento Open Source presso l'industria del software, facendo uscire l'idea della "condivisione del codice" dalla cerchia ristretta nella quale era rimasta relegata fino ad allora.Venne cio accettata l'idea che l'open source fosse una metodologia di produzione software efficace , nonostante nel suo famoso saggio La Cattedrale e il Bazaar, Eric S. Raymond avesse esplicitamente criticato i tradizionali metodi di ingegneria del software, metodi che fino a quel momento avevano dato buoni frutti. Va notato come i primi programmi 'liberi', come il GCC, seguivano ancora il modello a cattedrale; solo successivamente progetti come EGCS adottarono il modello a bazaar. (Wikipedia ) 28. Open Source Definition (da Wikipedia, con commenti)

  • Introduzione
  • Open source non significa semplicemente libero accesso al codice sorgente di un programma. La licenza di un software, per potersi considerare open-source, deve soddisfare i seguenti criteri:

29. Open Source Definition (da Wikipedia, con commenti)

  • 1. Libera redistribuzione
  • La licenza non pu limitare alcuno dal vendere o donare il software che ne oggetto, come componente di una distribuzione aggregata, contenente programmi di varia origine. La licenza non pu richiedere diritti o altri pagamenti a fronte di tali vendite.

30. Open Source Definition (da Wikipedia, con commenti)

  • 1. Libera redistribuzione
  • Motivo:Imponendo la libera redistribuzione, si elimina la tentazione di rinunciare a importanti guadagni a lungo termine in cambio di un guadagno materiale a breve termine, ottenuto con il controllo delle vendite. Se non vi fosse questa imposizione, i collaboratori esterni sarebbero tentati di abbandonare il progetto, invece che di farlo crescere.

31. Open Source Definition (da Wikipedia, con commenti)

  • 2. Codice sorgente
    • Il programma deve includere il codice sorgente e ne deve essere permessa la distribuzione sia come codice sorgente che in forma compilata. Laddove alcune forme di un prodotto non siano distribuite con il relativo codice sorgente, deve essere chiaramente indicato il modo per ottenerlo, ad un costo non superiore ad una ragionevole spesa di distribuzione, preferibilmente scaricandolo gratuitamente da Internet. Per codice sorgente si intende la forma in cui un programmatore preferirebbe modificare il programma. Codice sorgente deliberatamente reso illeggibile non risponde ai requisiti. Forme intermedie come l'output di un preprocessore o compilatore non rispondono ai requisiti.

32. Open Source Definition (da Wikipedia, con commenti)

  • 2. Codice sorgente
  • Motivo:Si richiede l'accesso al codice sorgente poich non si pu far evolvere un programma senza poterlo modificare. Il nostro obiettivo rendere facile l'evoluzione del software, pertanto richiediamo che ne sia resa facile la modifica.

33. Open Source Definition (da Wikipedia, con commenti)

  • 3. Prodotti derivati
  • La licenza deve permettere modifiche e prodotti derivati, e deve permetterne la distribuzione sotto le stesse condizioni della licenza del software originale.

34. Open Source Definition (da Wikipedia, con commenti)

  • 3. Prodotti derivati
  • Motivo:La sola possibilit di leggere il codice sorgente non sufficiente a permettere la revisione indipendente del software da parte di terzi e una rapida selezione evolutiva. Per garantire una rapida evoluzione, deve essere possibile sperimentare modifiche al software e redistribuirle.

35. Open Source Definition (da Wikipedia, con commenti)

  • 4. Integrit del codice sorgente originale
  • La licenza pu impedire la distribuzione del codice sorgente in forma modificata, a patto che venga consentita la distribuzione dell'originale accompagnato da "patch", ovvero file che permettono di applicare modifiche automatiche al codice sorgente in fase di compilazione. La licenza deve esplicitamente permettere la distribuzione del software prodotto con un codice sorgente modificato. La licenza pu richiedere che i prodotti derivati portino un nome o una versione diversa dal software originale.

36. Open Source Definition (da Wikipedia, con commenti)

  • 4. Integrit del codice sorgente originale
  • Motivo:Incoraggiare il miglioramento bene, ma gli utenti hanno diritto di sapere chi responsabile del software che stanno usando. Gli autori e i tecnici hanno diritto reciproco di sapere cosa loro chiesto di supportare e di proteggersi la reputazione. Perci, una licenza open source deve garantire che il codice sorgente sia facilmente disponibile, ma pu eventualmente richiedere che esso sia redistribuito solo in forma originale pi file patch. In questo modo le modifiche "non ufficiali" possono essere rese disponibili pur rimanendo distinte dal codice sorgente originale.

37. Open Source Definition (da Wikipedia, con commenti)

  • 5. Discriminazione contro persone o gruppi
  • La licenza non deve discriminare alcuna persona o gruppo di persone.

38. Open Source Definition (da Wikipedia, con commenti)

  • 5. Discriminazione contro persone o gruppi
  • Motivo:Per ottenere il massimo beneficio dal processo, il massima numero di persone e gruppi deve avere eguale possibilit di contribuire allo sviluppo del software. Pertanto viene proibita l'esclusione arbitraria dal processo di persone o gruppi.Alcuni paesi, inclusi gli Stati Uniti, hanno restrizioni all'esportazione di certi tipi di software. Una licenza conforme all'OSD pu avvertire gli utenti di possibili restrizioni e ricordare loro che sono obbligati a rispettare la legge; in ogni caso non pu incorporare tali restrizioni essa stessa.

39. Open Source Definition (da Wikipedia, con commenti)

  • 6. Discriminazione per campo d'applicazione
  • La licenza non deve impedire di far uso del programma in un ambito specifico. Ad esempio non si pu impedire l'uso del programma in ambito commerciale o nell'ambito della ricerca genetica

40. Open Source Definition (da Wikipedia, con commenti)

  • 6. Discriminazione per campo d'applicazione
  • Motivo:L'intenzione principale di questa clausola di proibire trappole nelle licenze che impediscano al software open source di essere usato commercialmente. Vogliamo che le aziende si uniscano alla nostra comunit, non che se ne sentano escluse.

41. Open Source Definition (da Wikipedia, con commenti)

  • 7. Distribuzione della licenza
  • I diritti allegati a un programma devono essere applicabili a tutti coloro a cui il programma redistribuito, senza che sia necessaria l'emissione di ulteriori licenze.

42. Open Source Definition (da Wikipedia, con commenti)

  • 7. Distribuzione della licenza
  • Motivo:Questa clausola intende proibire la chiusura del software per mezzi indiretti, come un obbligo di sottoscrizione di accordi di non diffusione.

43. Open Source Definition (da Wikipedia, con commenti)

  • 8. Specificit ad un prodotto
  • I diritti allegati al programma non devono dipendere dall'essere il programma parte di una particolare distribuzione di software. Se il programma estratto da quella distribuzione e usato o redistribuito secondo i termini della licenza del programma, tutti coloro che ricevano il programma dovranno avere gli stessi diritti che sono garantiti nel caso della distribuzione originale.

44. Open Source Definition (da Wikipedia, con commenti)

  • 8. Specificit ad un prodotto
  • Motivo:Questa clausola impedisce un'ulteriore classe di licenze-trappola.

45. Open Source Definition (da Wikipedia, con commenti)

  • 9. Vincoli su altro software
  • La licenza non deve porre restrizioni su altro software distribuito insieme al software licenziato. Per esempio, la licenza non deve richiedere che tutti gli altri programmi distribuiti sugli stessi supporti siano software open source.

46. Open Source Definition (da Wikipedia, con commenti)

  • 9. Vincoli su altro software
  • Motivo: I distributori di software open source hanno il diritto di fare le loro scelte riguardo al software che intendono distribuire.

47. Open Source Definition (da Wikipedia, con commenti)

  • 10. Neutralit rispetto alle tecnologie
  • La licenza non deve contenere clausole che dipendano o si basino su particolari tecnologie o tipi di interfacce.

48. Open Source Definition (da Wikipedia, con commenti)

  • 10. Neutralit rispetto alle tecnologie
  • Motivo:Questa clausola diretta in particolar modo a quelle licenze che richiedano un gesto esplicito di approvazione da parte dell'utente, al fine di stabilire un contratto. Clausole che richiedano un "click" su interfacce web o di altro tipo possono essere in conflitto con importanti metodi di distribuzione del software, come i siti FTP, le raccolte su CDROM e le copie distribuite sul Web. Tali clausole possono rendere difficoltoso il riutilizzo del software. Le licenze valide devono permettere la possibilit che: 1) il software venga distribuito mediante canali diversi dal Web, sui quali non si possa richiedere un "click" esplicito prima di iniziare il download, e che 2) il programma in oggetto, o sue porzioni, possano essere utilizzare in ambienti privi di interfaccia grafica, nei quali non si possa richiedere la presenza di specifiche finestre di dialogo.

49. Differenze tra Free software e Open Source Open Source

  • Metodologia di sviluppo (bazar)

50. il software non libero una soluzione non ottimale 51. Differenze tra Free software e Open Source Free Software

  • Movimento di carattere sociale

52. il software non libero un problema sociale e il software libero la soluzione 53. Licenze libere/aperte 54. Free Sofware Open Source LicenzeOpen, Free ecompatibilicon GPL LicenzeOpen, Free eNON compatibilicon GPL LicenzeOpen ma non Free 55. Free Sofware Open Source LicenzeOpen ma non Free:sono soprattutto licenze obsolete, non pi usate, come la Aladdin per Ghostscript, la Sun Community Public License. La Yast License, la Artistic per Perl, rilasciato con doppia licenza (AL/GPL). 56. Le licenze secondo Free Software Foundation http://www.gnu.org/philosophy/license-list.html 57. In pratica

  • Il Free Software compreso nell'Open Source perch le quattro libert previste da Stallman sono implicite nei punti delle Open Source Definition. Questo al di l di considerazioni etiche o pratiche.

58. Non vero il viceversa. 59. Licenze considerate Free possono essere incompatibili tra loro: ad esempio GPL e MPL sono incompatibili perch la seconda definita a copyleft debole. 60. Copyleft

  • il maggior fronte di confronto tra Free Software e Open Source

61. Meccanismo legale che garantisce che un lavoro coperto da licenza free rimanga libero 62. Una licenza free software pu essere non copyleft se non richiede di distribuire le opere derivate con la stessa licenza (esempio la licenza BSD a quattro clausole) 63. Copyleft

  • Per imporre la libert di copia e distribuzione di una creazione o di un lavoro necessaria che la distribuzione sia protetta da una licenza

64. La licenza deve garantire al possessore della creazione o del lavoro le stesse libert dell'autore 65. Le libert dell'autore sono indicate dalle quattro libert del software 66. Libert aggiuntive

  • La licenza non pu essere revocata

67. L'oggetto della licenza deve essere distribuito in una forma che ne faciliti le modifiche (nel caso del software devono essere reperibili facilmente sia il codice sorgente che gli strumenti per la sua compilazione) 68. Il lavoro derivato deve essere accompagnato da idonea documentazione che permetta di identificare le modifiche apportate 69. Copyleft debole

  • Si parla di copyleftdebolese non tutte le opere derivate (in base alle modalit di derivazione) ereditano il copyleft

70. La LGPL (Lesser General Public License) una licenza a copyleft debole e permette, ad esempio, alle librerie Glibc di essere incluse in qualsiasi software, indipendentemente dalla licenza che possiede 71. Copyleft completo e copyleft parziale

  • Si parla di copyleftcompletose tutte le parti della creazione o del lavoro (licenza esclusa) possono essere modificate

72. Si parla di copyleft parziale quando alcune parti della creazione sono esenti da modifica illimitata