A GNU world is possible! Software Libero, Copyleft e altri antidoti all'economia della rendita permanente. [prima parte] Davide Lamanna Binario Etico.

Slides:



Advertisements
Presentazioni simili
Introduzione all'Open Source “La Sapienza” Linux User Group.
Advertisements

Eugenia Franzoni Il software libero Catnic Srl. Si può comprare un software?
"Play Ogg" multimedialità libera con GNU/Linux... presentato da Stefano Pardini al Linux Day 2008 per ACROS ACROS.
Linux is cool! Come avere un PC figo per fare tutto quello che vuoi! 24 ottobre Linux Day Perugia ITC “Aldo Capitini” - “V.Emanuele II” Viale Centova,
Linux Day 2006 – Giornata nazionale dedicata al Software Libero e GNU/ Linux – Il Software Libero nella scuola Carmine Stolfi
Mag La Firma Digitale Sommaruga Andrea Guido Collegio dei Geometri e Geometri Laureati della Provincia di Lodi.
Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia
1 14 marzo 2006 sommaruga andrea Fondazione Ordine Ingegneri di Milano VPN: Reti Private Virtuali VPN: RETI PRIVATE VIRTUALI LE POSSIBILITA' DI ACCESSO.
Fabrizio Felici Linux e Windows a confronto, perché passare a Linux 27 ottobre 2007.
Corso gratuito di Linux. Linux User Group Mantova
OSMit 2010 Genova, giugno 2010 a cura di a cura di ROBERTO Vito Gerardo ROBERTO Vito Gerardo
POLITECNICO DI MILANO FACOLTA’ DI INGEGNERIA SEDE DI CREMONA TESI DI DIPLOMA IN INGEGNERIA INFORMATICA RELATOREAUTORI Prof. Vittorio TrecordiDemicheli.
Linux Day 2005 Il software libero e le licenze Nicola Soranzo Associazione GOLUG.
1 Unità didattica 1 – Concetti di base del personal computer Premessa: «L’unità didattica programmata destinata ad una allieva con obiettivi minimi della.
Diego Rondini 22/09/ Montebelluna Software libero a scuola Come e perché usare software libero a scuola.
Corso di Alta Formazione su Tecnologie Libere e Open Source Introduzione al Software Libero Che cos'è il software libero  Il software come strumento di.
Software libero & co Torino 12 settembre Alessandro UGO - E. Richiardone -
Corso Gnu/Linux 2011 – Hacklab Cosenza Breve storia di GNU/Linux  V. Pirrone.
PERCHE' PROGRAMMARE FREE Cosa spinge a rilasciare il codice Roberto -MadBob- Guido Linux Day Torino 2008.
I linguaggi di programmazione Gruppo iOS 47: Colombini Christian Flora Jonathan Rossi Francesco.
PGDay 2009 FSGateway Ing. Torello Querci Resp. Architetture SW - Negens S.r.l. 4 Dicembre 2009, Pisa.
Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica PROBLEMI E ALGORITMI LINGUAGGIO MACCHINA.
Rappresentazione dell’ Informazione Digitale e Binario
Corso di Elementi di Informatica
Archivi in Digitale: Firma Digitale
Unità di apprendimento 1
Open Source / Free software
TABLET RASPBERRY PI Tesina di maturità Scagnetti Alessandro – Francalancia Simone Anno scolastico 2015/2016 ITT ‘‘E. Divini’’ San Severino Marche.
1 Metodologia per l’innovazione di prodotto nell’ottica del Design for All Metodologia per l’innovazione di prodotto nell’ottica del Design for All.
Linux e il Free Software per la Scuola (e non)
Linux Day 2016.
Introduzione all'Open Source
Alcune note, dalla rete, sui Sistemi cellulari
Master in gestione del software open source
Tratto da: Anna Labella (a cura), E questo tutti chiamano Informatica, Manuali Scienze e Tecnologie – Formazione, La Sapienza Roma.
Incontri tematici su GNU/Linux ed il Software Libero - sommario -
Rappresentazione dell’ Informazione Informazione e Comunicazione
Dott. Stefano Tagliaferri
Corso LAMP Linux Apache Mysql Php
La rappresentazione delle informazioni
CRITTOGRAFIA Per crittografia si intende la protezione delle informazioni mediante l'utilizzo di codici e cifre. La crittografia è un componente fondamentale.
Programmazione per la Musica | Adriano Baratè
Microcontrollori e microprocessori
Algoritmi e soluzioni di problemi
IL CONCETTO DI ALGORITMO
filosofia del software libero ed open source
Tanti motivi per scegliere GNU / Linux
LA GESTIONE DEI PACCHETTI
* Il Sistema Operativo GNU/Linux * Sistema Operativo e Applicazioni
filosofia del software libero ed open source
Cosa sono il Software Libero e GNU/Linux? Scopriamolo insieme!
INSEGNARE e IMPARARE LIBERAMENTE
Che cos’e’ l’Informatica
MODULO 1 – Computer essentials
Realizzazione di R. Diana
Classe III A A.s – 2012 Programma di Informatica
Alessandro Brunengo Mirko Corosu INFN - Sezione di Genova
Programmare.
Gli automi.
© 2007 SEI-Società Editrice Internazionale, Apogeo
Definizione di linguaggio di programmazione
Sistemi Digitali.
Parti interne del computer
Programmazione e Laboratorio di Programmazione
Programmazione e Laboratorio di Programmazione
Il passaggio all’opensource nella didattica: analisi e utilizzo di software anche per alunni con BES e DSA Stefano Garione.
Il protocollo informatico e il Manuale di Gestione
Struttura PC.
ALGORITMO E’ una successione finita di passi che consente di risolvere tutti i problemi di una classe e di determinare il risultato. Caratteristiche: Finito.
CLOUD.
Transcript della presentazione:

A GNU world is possible! Software Libero, Copyleft e altri antidoti all'economia della rendita permanente. [prima parte] Davide Lamanna Binario Etico

● Informatica questa conosciuta ● Free Software: free as in free speech! ● Lo gnu e il pinguino: due animali che non rischiano l'estinzione ● Copyleft e Creative Commons: i modelli di business del futuro Agenda

Informatica questa conosciuta "L'informatica non riguarda i computer più di quanto l'astronomia riguardi i telescopi." (Edsger Wybe Dijkstra)

Informatica ● Etimologia: inform(ation electronique ou autom)atique ● Philippe Dreyfus per primo utilizza nel 1962 il termine informatique (informatica): trattamento automatico dell'informazione mediante calcolatore ● L'elaboratore non fa altro che eseguire istruzioni preventivamente impartitegli. Caratterizzato da: – velocità di calcolo – flessibilità dell'architettura

La macchina di babbage (1822)

Algoritmo ● Procedimento che consente di ottenere un risultato atteso eseguendo, in un determinato ordine, un insieme di passi semplici corrispondenti ad azioni scelte solitamente da un insieme finito ● Esempi: calcolo del massimo comun divisore, una ricetta di cucina, una procedura di archiviazione documentale facente parte di un protocollo

La macchina di Turing (1936) ● Agisce sopra un nastro che si presenta come una sequenza di caselle nelle quali possono essere registrati simboli di un ben determinato alfabeto finito ● Testina di lettura e scrittura (I/O) operazioni su caselle del nastro. ● Evolve nel tempo e ad ogni istante si può trovare in uno stato interno ben determinato facente parte di un insieme finito di stati.

La macchina di Turing ● Inizialmente sul nastro viene posta una stringa che rappresenta i dati che caratterizzano il problema che viene sottoposto alla macchina. ● La macchina è dotata anche di un repertorio finito di istruzioni che determinano la sua evoluzione in conseguenza dei dati iniziali. ● L'evoluzione si sviluppa per passi successivi che corrispondono a una sequenza discreta di istanti successivi.

Hardware ● La parte fisica di un elaboratore (un computer, un telefono cellulare, un lettore MP3, ecc.) ● Parti magnetiche, ottiche, meccaniche ed elettroniche per trattare segnali digitali ● Segnale digitale: una variazione di corrente o di tensione che veicola un'informazione ● Codice binario: far passare o meno la corrente in un circuito, secondo un piano prestabilito ● Transistor: dispositivo a stato solido formato da semiconduttori usato per trattare segnali elettronici

La macchina di Von Neumann (1945)

I primi computer

L'eniac

Produzione di hardware ● Nuovi prodotti emergono costantemente: più veloci, più piccoli, più intelligenti ● Si introducono nuovi materiali, spesso scarsamente testati, nuovi processi e sostanze chimiche mai testati (non ce ne sarebbe il tempo) ● Si avviano i dispositivi dell'anno precedente alle discariche, dove diventano rapidamente rifiuti tossici da smaltire.

Ok. E il software? ● Programmi, procedure e documentazione per eseguire operazioni su un computer ● Esempi: software applicativi come gli elaboratori di testo che eseguono compiti produttivi per gli utenti, oppure sistemi software come i sistemi operativi che si interfacciano con l'hardware per fornire i servizi di base necessari ai software applicativi di cui sopra

Software ● Un programma o un insieme di programmi in grado di funzionare su un elaboratore (ad esempio, su un computer). ● Tramite il software è possibile impartire istruzioni all'hardware, in forma di segnali digitali. ● I segnali digitali che l'hardware è in grado di trattare sono codificati esclusivamente in forma binaria (“0” o “1”).

La compilazione del software ● Poiché per le persone è molto difficile esprimersi usando solo zeri e uni, i software vengono generalmente scritti tramite linguaggi di programmazione, che usano anche espressioni provenienti dal linguaggio naturale (quasi sempre in inglese) ● Dopo che un programma è stato scritto in un certo linguaggio di programmazione, esso viene “tradotto” in una sequenza di zeri e uni attraverso un procedimento noto col nome di “compilazione”.

Codice binario e codice sorgente ● Questa sequenza di zeri e uni viene comunemente chiamata “codice binario”, mentre il programma scritto in un qualunque linguaggio di programmazione viene detto “codice sorgente”. ● Dal codice sorgente è possibile generare il codice binario, attraverso la compilazione. Il procedimento inverso è invece impossibile (o quasi)

Esempio di creazione di un software ● Un software è scritto in un linguaggio, che è un codice in una sorta di inglese che include comandi imperativi (codice sorgente) ● Es.: for i=1..10 while (a!=100) do {a=a +1; print a;open f=portafuturo.txt; write (a,f); close f} ● Dopo averlo scritto, il software va compilato e diventa in modo che sia leggibile per un computer (codice binario) ● Es.: ● Questa trasformazione è quasi irreversibile

Schede perforate

Che cos'è il Software Libero? Il concetto di software libero discende naturalmente da quello di libertà di scambio di idee e di informazioni. “Cos'è il Software Libero?” di Francesco Potortì

Le 4 libertà del Software Libero ● 0 (o libertà fondamentale): La libertà di eseguire il programma per qualunque scopo, senza vincoli sul suo utilizzo ● 1: La libertà di studiare il funzionamento del programma e di adattarlo alle proprie esigenze ● 2: La libertà di redistribuire copie del programma ● 3: La libertà di migliorare il programma e di distribuirne i miglioramenti.

Ragionevole, no? E infatti all'inizio era così! E poi?

Software proprietario ● Un software sul quale il produttore pone restrizioni sull'uso, la modifica privata, la copia, la ripubblicazione. Può essere definito “a sorgente chiuso” o “software non libero” ● I proprietari possono imporre restrizioni tramite mezzi tecnici, come ad esempio la restrizione o soppressione dell'accesso al codice sorgente (es.: vendono il binario) e/o tramite mezzi legali, come il copyright e il brevetto

Il Software Libero come bene comune ● Bene comune: un'idea, un'entità o altro, che giova all'intera colletività ● Un bene che è condiviso da tutti i membri di una comunità ● Il Software Libero ha a che fare con libertà fondamentali, condivisione della conoscenza, miglioramento della qualità della vita ● E' un'opportunità per la ricerca, la creatività, l'innovazione ● E' una risorsa per il mercato, le PMI e le PA

La Fondazione Software Libero (FSF) ● Il software distribuito con una licenza che rispetti questi principi e le 4 libertà è detto Software Libero ● Nel 1984 Richard M. Stallman diede vita al progetto GNU, con lo scopo di tradurre in pratica il concetto di software libero, e creò la Free Software Foundation per dare supporto logistico, legale ed economico al progetto GNU.

Progetto GNU ● Lanciato nel 1984 per sviluppare un sistema operativo completo che fosse simile a Unix e che fosse Software Libero: il sistema GNU ● Il nome “GNU” è un acronimo ricorsivo che sta per “GNU's Not Unix”

Linux ● Linus Torvalds, studente 22-enne presso l'università di Helsinki, propose delle modifiche al sistema operativo MINIX ● MINIX aveva una licenza d'uso che non ne permetteva la modifica ● A.S. Tanenbaum, autore di MINIX e professore dell'università di Amsterdam, rifiutò le modifiche proposte da Linus.

Linux ● Linus, per dimostrare che si poteva fare qualcosa di molto meglio rispetto a MINIX, inizio a scrivere da zero un suo sistema operativo ● Il nome Linux fu attribuito a tale progetto solo in un secondo tempo, da parte dell'amministratore di sistema che permisse l'upload del file sorgente del kernel di Linus sul sistema ftp dell'università

Linux ● Il 5 ottobre del 1991, Linus inviò un celebre 'post' sul newsgroup comp.os.minix, in cui chiedeva commenti sul suo lavoro e proponeva alla comunità di lavorarci sopra ● La rivoluzione passa attraverso la Rete ● Linux viene sottoposto alla GPL

GNU/Linux ● Il kernel di GNU non era ancora finito quando fu rilasciato il kernel Linux (1991), che quindi viene integrato nel resto del software GNU già prodotto ● GNU/Linux diviene il sistema di base del progetto GNU e di tutte le sue applicazioni ● La combinazione di GNU e Linux è il sitema operativo GNU/Linux oggi usato da milioni di persone ● Talvolta questa combinazione viene erroneamente chiamata Linux

Distribuzioni GNU/Linux Debian Slackware Gentoo Ubuntu Mandrake/Mandriva Red Hat Suse

Copyright ● Una licenza di copyright è un documento legale generalmente distribuito assieme a ogni programma ● Facendo capo alle norme sul diritto d'autore, specifica diritti e doveri di chi riceve il programma.

La licenza pubblica generica GNU ● La licenza del progetto GNU, la Licenza Pubblica Generica GNU (GNU GPL) concede all'utente del programma tutte e quattro le libertà ● Chi modifichi un programma protetto da GPL e lo distribuisca con tali modifiche, deve distribuirlo sotto licenza GPL (licenza virale)

Copyleft ● Con un gioco di parole, il nome dato a questo tipo di protezione è permesso d'autore (copyleft) ● Le licenze proprietarie usano le norme sul diritto d'autore (copyright) per togliere libertà agli utenti di un programma; il permesso d'autore usa le stesse norme per garantire quelle libertà e per proteggerle.

La libertà nel software ● Il software da tempo ormai è avviato ad occupare un ruolo di primo piano nella nostra vita quotidiana ed è destinato a cambiare in maniera profonda la società ● È per queste ragioni che la nostra libertà futura dipenderà anche dall'uso di software libero.

E l'Open Source? ● Con software a codice sorgente aperto si indica semplicemente un software che viene sviluppato e distribuito tenendo pubblico il codice con cui è scritto ● Si tratta dunque esclusivamente di una modalità operativa, priva di implicazioni etiche e politiche ● E' un sottoinsieme del software libero ● Le differenze possono generare dissidi filosofici, ma non operativi tra gli sviluppatori.

Sviluppo di codice ● Cooperazione nello sviluppo di codice ● Le comunità di sviluppatori forniscono supporto e determinano le direzioni dello sviluppo in modo partecipato ● Versione dopo versione, il software diventa sempre più affidabile e rispondente ai bisogni degli utenti.