Massachvsettts Institvte Of Technology
Quando Richard Matthew Stallman nel 1971 iniziò a lavorare per il laboratorio di Artificial Inteligence [A.I.] del M.I.T. Massachvsetts Institvte Of Technology tutti gli sviluppatori di software come lui da lunga data erano liberi di condividere il software e di potersi aiutare l’un l’altro.
La situazione iniziò a cambiare quando la Digital Equipement riuscì a far entrare nel laboratorio di A.I. il suo PDP-10.Gli Hackers del MIT non si persero d’animo e decisero di scrivere un nuovo sistema operativo: chiamato ITS Incompatibile Timesharing System progettato e scritto in Assembler.
Il compito di Richard Matthew Stallman era di migliorare il Kernel e dato che lui lavorava sui sistemi operativi, la sua abilità era un ottimo contributo.
Sino ad allora tutto andò per il verso giusto, ma da tempo si stavano facendo pressioni sugli Hackers, affinchè siglassero accordi di Not Disclosure Agreement [N.D.A.].
Si fa presente che il concetto di non diffusione tendeva a dividere le persone e all’interno del laboratorio, alcuni che ne avevano siglati, avevano creato problemi per lo sviluppo software.
All’interno del laboratorio era normale lo scambio di software.
Non esisteva il concetto di Software Libero, perché gli Hackers del MIT facevano continuo scambio del codice sorgente, era cosa odierna aiutarsi.
Veri e propri problemi iniziarono a verificarsi quando la Digital Equipement Dec decise di dismettere gli oramai obsoleti PDP-10.
L’architettura di questi elaboratori degli anni 60 non poteva più essere estesa naturalmente.
La comunità del MIT si trovò fra le mani Hardware, sistema operativo ITS ed applicativi vari inusabili.
Un gruppo di Hackers da tempo aveva preso le distanze dal MIT per dedicarsi allo sviluppo di software non libero per conto delle software houses.
Negli anni avevano imparato a conoscere cosa significasse programmare e dunque avevano della programmazione un concetto etico ed avevano imparato ad amare ciò che facevano.
Tutto ciò in cui avevano creduto fu spazzato via in breve tempo, tanto da ricredersi sui concetti che prima avevano fermamente difeso.
Per prima cosa, l’etica fu messa alla berlina come qualcosa di disdicevole e da gettare alle ortiche, non si posero quesiti tipo: "che problemi potremmo creare per un futuro contesto sociale ove si ritiene sia giusto che le persone debbano aiutarsi" ?
Preferirono il denaro come surrogato dell’etica e della programmazione, credevano oramai in essa solo come strumento per esser pagati lautaménte.
Nel 1981 la Symbolics, una società nata all’interno del laboratorio, aveva sottratto quasi tutti gli Hackers.
La comunità fu incapace di sostenersi con un esiguo numero di sviluppatori, nel 1982 venne acquistato un novo PDP-10 con la versione non libera del TimeSharing, sviluppato dalla Digital Equipement, e questa volta venne imposto contro la volontà degli Hackers rimasti.
Dopo breve tempo nel M.I.T. Massachvsetts Institvte Of Technology fece la comparsa anche l’elaboratore 7090 dell’IBM, anch esso aveva una sua versione non libera del timesharing.
Il colpo di grazia venne inflitto con i Vax.
Per usare i Vax con cpu 680x0 68020 20 Mhz, era necessario sottoscrivere un accordo di non diffusione [N.D.A.] Not Disclosure Agreement.
L’accordo di non diffusione era valido anche se si fosse espresso il desiderio di avere una copia del codice eseguibile del sistema operativo Vms.
Questo comportamento che si era fortemente radicalizzato all’interno del laboratorio di Artificial Inteligence [A.I.] del M.I.T. Massachvsetts Institvte Of Technology affermava che non si poteva più aiutare il proprio vicino.
Con questo comportamento si stava cercando di creare le basi per una comunità non cooperante, tipico delle aziende nei confronti degli sviluppatori che asserivano: che se si fosse sentita la necessità o si aveva voglia, modo, piacere di risolvere dei problemi, si doveva rilasciare un comunicato con il quale si chiedeva che il problema fosse risolto.
Accettare un tale accordo significava andare contro la comunità, comportarsi in modo sbagliato, non avere etica e valori.... si negava loro una qualsiasi forma di libertà e una simil politica serviva solo ad identificare gli Hackers come dei “pirati informatici", aspetto che sino ad allora non avrebbero mai lontanamente immaginato.
Le aziende stavano cercando di diffondere sempre più il Software non Libero e nel medesimo tempo affermavano che gli Hackers non potevano arrogarsi alcun diritto di
paternità sul codice sorgente.
In poche parole le aziende volevano essere le uniche a sviluppare software e poco importava se fosse stato di scarsa qualità, l’importante per loro era vendere.
Un simil esempio da non prendere in considerazione è la Microsoft causa di un mercato monopolistico,lobbistico, dedita alla vendita di prodotti di bassa qualità, all’assenza di assistenza, all’impossibilità di modificare il sorgente, il vietare le modifiche anche se queste sono atte a migliorare i loro stessi prodotti
Il concetto di Software non Libero voleva affermare che
condividere il codice sorgente, copiarlo, aiutarsi,
anche fra Hackers fosse antisociale e sbagliato.
Questo messaggio inoltre voleva dire che gli Hackers stavano commettendo delle illegalità e che quindi bisognava rispettare i diritti che avevano sul codice sorgente.
Gli Hackers sviluppavano software, ma per le software
houses il non poterli fermare era come avere una spina
nel fianco.
Sapevano benissimo che non potevano pretendere ciò dal governo e dunque il loro unico mezzo di farsi valere era quello di fare delle minacce o cercare di intentare cause basate sul nulla sperando che qualcuno gli desse credito, ma si sbagliarono, gli Stati Uniti affermarono che rifiutano questa posizione e che: "Il diritto d’autore non è un diritto naturale, ma un monopolio imposto dal governo che limita il diritto naturale degli utenti di effettuare delle copie", dunque non può usarsi tale scusa per accampare diritti che non hanno e non avranno mai.
Ciò vuol dire che: Se ciò fosse stato un diritto naturale non si sarebbero potute fare obiezioni a tal proposito e quindi avrebbero avuto il diritto di proprietà sullo sviluppo del software: per loro sfortuna, le software houses non sono le uniche che hanno la possibilità di sviluppare del software ed il più delle volte del buon software viene sviluppato proprio dagli Hackers.
Visto che esistevano tali problemi, si pensò di rifiutare di accettare tali condizioni e di continuare ad avere dei legami con le software houses, una cosa che si poteva fare era sviluppare qualcosa di nuovo che potesse servire ad unire le persone, anzichè dividerle.
Qualcuno decise di cambiare la situazione introducendo
una nuova visione del software: la diffusione del
software come Software Libero, quel personaggio è
Richard Matthew Stallman.
Richard Matthew Stallman sitrovò davanti ad una situazione del tipo: accettare di non condividere il software con nessun Hacker ed avere elevati compensi adeguandosi alla politica del Not Disclosure Agreement [N.D.A.] oppure contribuire a condividere il codice sorgente ed accorgersi che un giorno avrebbe aiutato la società a migliorare.
L'Inizio del Progetto Gnu'S Not Unix
Nel Gennaio 1984 Richard Matthew Stallman lasciò il laboratorio di A.I. del Massachvsettts Institvte Of Technology per dar vita al Progetto Gnu’S Not Unix !
Ciò fu necessario affinchè il M.I.T. non potesse rivendicare la paternità del software da lui sviluppato e farne una distribuzione di software non libero.
Il Professor Winston gli propose di continuare a beneficiare del laboratorio. Il primo passo fu quello di vedere se era disponibile qualche compilatore C.
L’Università Olandese VUCK ne aveva uno, ma era software non libero e per questo motivo non poteva essere usato, quindi un ulteriore passo fu quello di dover scrivere un compilatore C multilinguaggio e multipiattaforma.
Bisogna dire che quando Richard Matthew Stallman si informò sulla disponibilità del compiilatore C come Software Libero, in modo canzonatorio gli venne detto: "la VUCK University è libera, il compilatore è software proprietario".
Questo fu uno dei motivi che lo spinse a scrivere GCC.
GCC attualmente è il miglior compilatore.
Richard Matthew Stallman ottenne dai Laboratori di Lawrence Livermore l’intero codice sorgente del Pastel (un compilatore che era una versione estesa del Pascal) pensato e sviluppato per la programmazione di sistemi.
Pur avendo aggiunto un front-end per il C ed iniziando a fare il porting per l’architettura 680x0 Motorola dovette rinunciare in quanto il compilatore richiedeva diversi MegaByte sullo stack di memoria mentre il sistema Unix ne poteva assegnare solo 64 kB.
L’unica soluzione era sviluppare un nuovo compilatore.
L’introduzione di GCC risolse il problema, ma il suo sviluppo richiese circa 3 anni di duro lavoro, dopo aver scritto GCC riuscì ad implementare anche il front-end scritto in C per il Pastel.
Gnu'S Not Unix !
Nel Gennaio del 1984 iniziai a lavorare al Progetto Gnu’S Not Unix, per sviluppare il sistema operativo Gnu.
Tengo a precisare che il termine Gnu è tipico del mondo degli Hackers, è un acronimo ricorsivo e significa:
Gnu = Gnu's Not Unix Gnu non è Unix e quindi le iniziali Gnu stanno per Gnu, questo acronimo significa che stavo sviluppando un sistema che era come il sistema operativo Unix ma non era Unix.
Era un sistema diverso, che doveva essere scritto da zero perché Unix era un sistema proprietario, e non avevamo il permesso di condividere Unix, non potevamo usare Unix e quindi per una comunità era inservibile, perciò dovemmo scriverne uno che lo sostituisse.
Unix era formato da un gran numero di programmi separati che comunicavano fra loro, dovemmo sostituire questi programmi uno per uno, e allora cominciò a scrivere un programma sostitutivo per uno di questi, poi per un altro e un altro ancora e poi altri iniziarono a unirsi a me, perché avevo pubblicato un annuncio in cui chiedevo aiuto per scrivere i programmi.
Verso il 1991 li avevamo praticamente sostituiti tutti, in sostanza per avere un sistema completo, c'è bisogno di un kernel, vale a dire il programma che attribbuisce le risorse a tutti gli altri programmi.
C'è bisogno di un compilatore che traduce un programma da un sorgente leggibile che i programmatori possono capire in numeri incomprensibili che un computer può effettivamente far girare, c'è bisogno di altri programmi utili al compilatore che lo assistano nel suo compito, c'è bisogno di un debugger, di un editor di testo, di un formattatore di testo, di programmi per la posta e molto altro, ci sono centinaia di programmi in un sistema operativo simile ad Unix.
L'aspetto fondamentale di Gnu è che è Software Libero. Free Software in inglese va inteso come Libero e non gratuito, quindi Richard Matthew Stallman dice che dobbiamo pensare alla libertà di parola piuttosto che ad una birra gratis.
La libertà di cui parlao, sono le libertà di fare cambiamenti "se vogliamo" o chiedere a qualcun altro di farli per noi o se usiamo un software per lavoro, quella di ridistribuirne delle copie da condividere con altri.
Fare miglioramenti e pubblicarli in modo che anche altri possano trarne vantaggio.
Queste sono le libertà che distinguono un Software Libero da uno Non Libero.
Queste sono le libertà che permettono alle persone di formare una comunità, se queste libertà vengono a mancare, si è divisi e dominati da qualcuno.
Se facciamo diventare il software di pubblico dominio, altri potrbbero apportarvi alcune modifiche e renderlo un pacchetto software proprietario, ciò significa che gli utenti, utilizzerebbero il nostro software, ma non avrebbero la libertà di cooperare e condividere.
Per impedire che ciò accada, dobbiamo ricorrere al CopyLeft o permesso d'autore.
L'idea del CopyLeft è quella del CopyRight al contrario, ciò che diciamo è: "questo software è protetto da CopyRight e noi gli autori, vi diamo il permesso di ridistribuirne copie, di cambiarlo, di aggiungere dei miglioramenti, ma quando lo ridistribuite, dovete farlo a queste condizioni ne più ne meno, in questo modo chiunque lo riceva da voi, avrà anche lui se lo desidera, la libertà di cooperare con altre persone".
In questo modo dove va la libertà va il software e diventa un diritto imprescindibile per collaborare con altre persone e formare una comunità.
Il CopyLeft è un concetto generale e per usarlo si deve ricorrere ad un esempio specifico.
Quello che usiamo per la maggior parte dei pacchetti softwares GNU è la GNU General Public License, un documento in linguaggio giuridico che svolge questa funzione, molti altri usano questa stessa licenza, per esempio Linus Torvalds usa questa licenza per Linux il kernel.
Gnu Emacs
Iniziai a lavorare a Gnu Emacs nel settembre del 1984 ed all’inizio del 1985 era già utilizzabile.
Diverse persone iniziarono a richiedere copie di Emacs l'unico problema era: come renderlo disponibile ?
Una soluzione immediata venne trovata: far uso di FTP File Transfer Protocol anonymous del MIT prep.ai.mit.edu che entro breve tempo divenne popolare.
Quando il Mit chiuse l’Ftp [prep.ai.mit.edu] venne trasferito all’interno del nuovo Ftp Server della fsf.inc. Free Software Foundation.Inc. http://www.fsf.org
A quel tempo non erano molte le persone che avevano un collegamento ad Internet e si poteva dire "trova un amico che sia disponibile a farti una copia" oppure "speditemi una busta affrancata ed io vi invierò il nastro con Emacs".
Dal momento che ero senza lavoro, cercavo un modo di far soldi col Software Libero, decisi che era venuto il momento di creare un’impresa per la distribuzione di software Gnu.
Lo scopo di Gnu consiste nell’offrire la libertà agli utenti anzichè la semplice diffusione del software.
Per garantire tali libertà è stato necessario creare il permesso d’autore ovvero CopyLeft copy and left copia e lascia, ma anche sinistra che tende a capovolgere tutte le limitazioni intrinseche del CopyRight copy and right] copia e diritto, ma anche destra.
Se è vero che il CopyRight tende a privare e a detenere il diritto d’autore il CopyLeft permette di far il libero uso del software.
Il permesso d’autore consiste nel dare a chiunque il programma, poterlo copiare, modificare e distribuirne versioni modificate, altrimenti le libertà essenziali che definiscono il free software sarebbero alienabili e questo non è lo scopo di tale licenza che invece tende a garantire tali libertà.
Affinchè il permesso d’autore sia efficace anche le versioni modificate devono essere libere e dunque il codice sorgente deve essere rilasciato.
Initial Announcement
This is the original announcement of the GNU Project, written by Richard Stallman in 1983.
The history of the GNU Project is in many ways different from this initial plan.
For example, the beginning was delayed until January, 1984 and several of the details about free software had not yet been clarified.
From CSvax:pur-ee:inuxc!ixn5c!ihnp4!houxm!mhuxi!eagle!mit-vax!mit-eddie!RMS@MIT-OZ
From: RMS%MIT-OZ@mit-eddie
Newsgroups: net.unix-wizards,net.usoft
Subject: new UNIX implementation
Date: Tue, 27-Sep-83 12:35:59 EST
Organization: MIT AI Lab, Cambridge, MA
Free Unix!
Starting this Thanksgiving I am going to write a complete Unix-compatible software system called GNU (for Gnu's Not Unix), and give it away free(1) to everyone who can use it.
Contributions of time,money, programs and equipment are greatly needed.
To begin with, GNU will be a kernel plus all the utilities needed to write and run C programs: editor, shell, C compiler, linker, assembler, and a few other things. After this we will add a text formatter, a YACC, an Empire game, a spreadsheet, and hundreds of
other things.
We hope to supply, eventually, everything useful that
normally comes with a Unix system, and anything else useful, including on-line and hardcopy documentation.
GNU will be able to run Unix programs, but will not be identical to Unix.
We will make all improvements that are convenient, based on our experience with other operating systems.
In particular, we plan to have longer filenames, file version numbers, a crashproof file system, filename completion perhaps, terminal-independent display support, and eventually a Lisp-based window system through which several Lisp programs and ordinary Unix programs can share a screen.
Both C and Lisp will be available as system programming languages.
We will have network software based on MIT's chaosnet protocol, far superior to UUCP.
We may also have something compatible with UUCP.
Who Am I?
I am Richard Stallman, inventor of the original much-imitated EMACS editor, now at the Artificial Intelligence Lab at MIT.
I have worked extensively on compilers, editors, debuggers, command interpreters, the Incompatible Timesharing System and the Lisp Machine operating system.
I pioneered terminal-independent display support in ITS.
In addition I have implemented one crashproof file system and two window systems for Lisp machines.
Why I Must Write GNU
I consider that the golden rule requires that if I like a program I must share it with other people who like it.
I cannot in good conscience sign a nondisclosure agreement or a software license agreement.
So that I can continue to use computers without violating my principles, I have decided to put together a sufficient body of free software so that I will be able to get along without any software that is not free.
How You Can Contribute
I am asking computer manufacturers for donations of machines and money.
I'm asking individuals for donations of programs and work.
One computer manufacturer has already offered to provide a machine.
But we could use more. One consequence you can expect if you donate machines is that GNU will run on them at an early date.
The machine had better be able to operate in a residential area, and not require sophisticated cooling or power.
Individual programmers can contribute by writing a compatible duplicate of some Unix utility and giving it to me.
For most projects, such part-time distributed work would be very hard to coordinate; the independently -written parts would not work together.
But for the particular task of replacing Unix, this problem is absent.
Most interface specifications are fixed by Unix compatibility.
If each contribution works with the rest of Unix, it will probably work with the rest of GNU.
If I get donations of money, I may be able to hire a few people full or part time.
The salary won't be high, but I'm looking for people for whom knowing they are helping humanity is as important as money.
I view this as a way of enabling dedicated people to devote their full energies to working on GNU by sparing them the need to make a living in another way.
For more information, contact me.
Arpanet mail:
Usenet:
...!mit-eddie!RMS@OZ
...!mit-vax!RMS@OZ
US Snail:
Richard Stallman
166 Prospect St
Cambridge, MA 02139
(1) This remark shows that Richard had not yet clarified the distinction between "free speech" and "free beer".
Return to GNU's home page.
Please send FSF & GNU inquiries & questions to gnu@gnu.org. There are also other ways to contact the FSF.
Please send comments on these web pages to webmasters@gnu.org, send other questions to gnu@gnu.org.
Copyright (C) 1999 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
Updated: 29 May 2001 lmiguel ]
Comments (0)
You don't have permission to comment on this page.