Open source: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
ordine temporale
Etichetta: Annullato
m Annullate le modifiche di 5.91.178.88 (discussione), riportata alla versione precedente di Vituzzu
Etichetta: Rollback
Riga 1:
[[File:Screenshot_libreoffice_ita_5.2.png|thumb|upright=1.3|[[LibreOffice]], esempio tipico di [[software]] open source]]
Con '''''Openopen source''''' (in [[lingua italiana|italiano]] '''sorgente aperto'''), in [[informatica]], si indica un tipo di [[software]] libero da vincoli di [[copyright]] o altra natura, nonchè il suo modello di sviluppo o distribuzione.
 
== Storia ==
Riga 10:
Fino a tutti gli [[anni 1970|anni settanta]], anche se in misura decrescente, la componente principale e più costosa di un computer era l'[[hardware]], il quale era comunque inutile in assenza di software. Da ciò la scelta dei produttori di hardware di vendere il loro prodotto accompagnato da più software possibile e di facilitarne la diffusione, fenomeno che rendeva più utili le loro macchine e dunque più concorrenziali. Il software, tra l'altro, non poteva avvantaggiare la concorrenza in quanto funzionava solo su un preciso tipo di computer e non su altri, spesso neanche su quelli dello stesso produttore. Un altro fattore che favorì lo sviluppo di software condiviso fu la diffusione di linguaggi di programmazione. Specie in ambito scientifico un programma scritto in [[Fortran]] poteva essere scambiato tra diversi ricercatori. La disponibilità del codice sorgente era indispensabile per apportare le piccole modifiche rese necessarie dai "dialetti" adottati dalle varie ditte per il linguaggio di programmazione.
 
Lo sviluppo dei [[sistema operativo|sistemi operativi]]<ref>I sistemi operativi nascono alla fine degli anni Cinquanta. tra i primi si può ricordare lo'' SHARE Operating System ''dell'[[IBM]] (1959)</ref> rese i programmi sempre più portabili, in quanto lo stesso sistema operativo, con gli stessi [[compilatore|compilatori]] veniva offerto dal produttore sui suoi diversi modelli di hardware. La presenza di sistemi operativi funzionanti per macchine di differenti produttori hardware ampliava ulteriormente le possibilità di usare lo stesso codice in modo relativamente indipendente dall'hardware usato. Uno di questi sistemi operativi era [[Unix]], iniziato nel [[1969]] come progetto all'interno di un'impresa delle [[telecomunicazioni]], la [[AT&T]]. Una famosa causa [[antitrust]] contro la AT&T le vietò di entrare nel settore dell'informatica. Questo fece sì che Unix venisse distribuito ad un prezzo simbolico a buona parte delle istituzioni [[università|universitarie]], le quali si ritrovarono ad avere una piattaforma comune, ma senza alcun supporto da parte del produttore. Si creò spontaneamente una rete di collaborazioni attorno al codice di questo sistema operativo, coordinata dall'[[University of California, Berkeley|Università di Berkeley]], da dove sarebbe poi uscita la versione [[Berkeley Software Distribution|BSD]] di Unix, che diventa da un lato un centro di sviluppo ed innovazione, dall'altro è la base di partenza per numerosi ''[[Fork (sviluppo software)|fork]]''.
 
L'introduzione dei sistemi operativi rese inoltre possibile l'utilizzo dello stesso programma anche su hardware differente aumentando così le possibilità di riutilizzo dello stesso codice e dunque l'utilità nell'impedire la duplicazione non autorizzata dei programmi.
 
=== Lo sviluppo di Unix ed il software proprietario ===
[[File:AT&THQDallas.jpg|thumb|[[AT&T]], inventore presso i [[Bell Lab]] del sistema operativo [[Unix]].]]
Considerato che la condivisione del codice è nata insieme all'informatica, piuttosto che di origini dell'Open Source potrebbe essere più appropriato parlare, invece, di ''origine del software proprietario'', ed esaminare il contesto ''storico'' in cui questa origine ha avuto luogo.
Uno di questi sistemi operativi era [[Unix]], iniziato nel [[1969]] come progetto all'interno di un'impresa delle [[telecomunicazioni]], la [[AT&T]]. Una famosa causa [[antitrust]] contro la AT&T le vietò di entrare nel settore dell'informatica. Questo fece sì che Unix venisse distribuito ad un prezzo simbolico a buona parte delle istituzioni [[università|universitarie]], le quali si ritrovarono ad avere una piattaforma comune, ma senza alcun supporto da parte del produttore. Si creò spontaneamente una rete di collaborazioni attorno al codice di questo sistema operativo, coordinata dall'[[University of California, Berkeley|Università di Berkeley]], da dove sarebbe poi uscita la versione [[Berkeley Software Distribution|BSD]] di Unix, che diventa da un lato un centro di sviluppo ed innovazione, dall'altro è la base di partenza per numerosi ''[[Fork (sviluppo software)|fork]]''.
 
L'utilità principale delle licenze restrittive consiste nella possibilità di rivendere un programma più volte, se necessario con alcune modifiche purché non rilevanti. Questo presuppone che esistano clienti diversi con esigenze simili, oltre che l'esistenza di più computer sul quale poter far eseguire il [[Programma (informatica)|programma]]. Queste condizioni cominciano a determinarsi negli anni sessanta, grazie al fatto che esisteva un maggior numero di utilizzatori con esigenze standardizzabili come lo erano quelle delle organizzazioni economiche nell'area della contabilità, la logistica o delle statistiche.
 
L'introduzione dei sistemi operativi rese inoltre possibile l'utilizzo dello stesso programma anche su hardware differente aumentando così le possibilità di riutilizzo dello stesso codice e dunque l'utilità nell'impedire la duplicazione non autorizzata dei programmi.
 
La suddivisione della AT&T in 26 società, le cosiddette ''[[AT&T#Storia|Baby Bell]]'', permise alla AT&T di usare logiche prettamente commerciali nella distribuzione del suo sistema operativo Unix, innalzando notevolmente i costi delle licenze e impedendo la pratica delle [[Patch (informatica)|patch]]. Il [[1982]] fu anche l'anno della divisione delle diverse versioni commerciali di Unix, portate avanti dai singoli produttori di hardware. Questi ultimi, effettuando delle piccole modifiche alla propria versione del sistema operativo, impedirono ai propri utenti l'utilizzo di altri sistemi, facendo in modo che i programmi scritti per la propria versione di Unix non funzionassero su versioni concorrenti.
Riga 42:
 
=== Gli anni 1990 ed il ruolo di internet ===
[[File:LinuxCon_Europe_Linus_Torvalds_03_(cropped).jpg|thumb|[[Linus Torvalds]].]]
A partire dagliBenché [[anni 1990Internet]], conavesse lovisto sviluppola diluce [[internet]]già negli anni settanta, delè [[worldsoltanto wideagli web]]inizi degli anni novanta, con la diffusione del protocollo [[Hypertext Transfer Protocol|HTTP]] e la nascita dei primi [[browser]], che cominciò ad essere diffuso prima in ambito accademico e poi in modo sempre più capillare anche tra semplici privati. All'inizio del decennio il progetto GNU non aveva ancora raggiunto il suo obiettivo principale, mancando di completare il [[kernel]] del suo sistema operativo ([[GNU Hurd]]).
 
All'inizio degli [[Anni 1990|anni novanta]], il progetto GNU non aveva ancora raggiunto il suo obiettivo principale, mancando di completare il [[kernel]] del suo sistema operativo ([[GNU Hurd]]). Per sopperire a tale mancanza, William e Lynne Jolitz riuscirono ad effettuare il [[porting]] di UNIX [[BSD]] su piattaforma [[Intel]] 386 nel [[1991]]. Purtroppo, negli anni successivi tale porting si trovò ad affrontare problemi di natura legale a[[USL causa della controversia tra UNIX System Laboratories, Incv. e la Berkeley Software Design, Inc. nel 1992BSDi]] che ne ritardarono temporaneamente lo sviluppo.

Nello Intanto,stesso l'anno precedente, [[Linus Torvalds]], studente al secondo anno di informatica presso l'[[universitàUniversità di Helsinki]], decise di sviluppare un proprio sistema operativo imitando le funzionalità di Unix su un PC con un processore [[intelIntel 80386]]386. Tale processore venne scelto per il suo minor costo e per la sua maggiore diffusione rispetto alle piattaforme hardware per le quali erano disponibili i sistemi operativi Unix. Torvalds era spinto dall'insoddisfazione riguardante alcuni applicativi di [[Minix]] (un sistema Unix-like su piattaforma PC), dal desiderio di approfondire le proprie conoscenze del processore Intel 386, e dall'entusiasmo per le caratteristiche tecniche di Unix.
 
Torvalds distribuì il proprio lavoro tramite Internet e ricevette immediatamente un ampio riscontro positivo da parte di altri programmatori, i quali apportarono nuove funzionalità e contribuirono a correggere errori riscontrati. Nacque così il [[Linux (kernel)|kernel Linux]], il quale fu subito distribuito con una [[licenza libera]].
 
Internet dal canto suo, rende possibile la comunicazione tra persone molto distanti in tempi
rapidi e a basso costo. Inoltre rende possibile la distribuzione di software direttamente dalla rete, riducendo ulteriormente i costi di duplicazione e le difficoltà a reperire il software stesso. La diffusione dei [[CD-ROM]] come supporto privilegiato di raccolte di software rese possibile il fenomeno delle cosiddette [[Distribuzione (software)|distribuzioni]].
 
Linux può essere considerato come il primo vero progetto "open source" cioè come il primo progetto che faceva affidamento essenzialmente sulla collaborazione via Internet per progredire; fino ad allora, infatti, anche i progetti di software libero come Emacs erano stati sviluppati in maniera centralizzata seguendo un progetto prestabilito da un ristretto numero di persone, in base cioè ai principi 'standard'di [[ingegneria del software]]. Si assumeva valida anche per i progetti open source la '[[legge di Brooks]]', secondo cui "aggiungere sviluppatori a un progetto in corso di implementazione in realtà rallenta il suo sviluppo", legge che ovviamente non è applicabile a un progetto di sviluppo open source.
 
LinuxAgli puòinizi esseredegli consideratoanni come il primo vero progetto "open source" cioè come il primo progetto che faceva affidamento essenzialmente sulla collaborazione via Internet per progredire; fino ad alloranovanta, infatti, anche i progetti di software libero come Emacs erano stati sviluppati in maniera centralizzata seguendo un progetto prestabilito da un ristretto numero di persone, in base cioè ai principi 'standard'di [[ingegneria del software]]. Si assumeva valida anche per i progetti open source la '[[legge di Brooks]]', secondo cui "aggiungere sviluppatori a un progetto in corso di implementazione in realtà rallenta il suo sviluppo", legge che ovviamente non è applicabile a un progetto di sviluppo open source. Ll'idea delle licenze liberali era rappresentata soprattutto da Richard Stallman e la sua FSF, ovvero le licenze liberali per eccellenza erano la GPL e la [[GNU Lesser General Public License|LGPL]] che però venivano ritenute "contagiose", in quanto a partire da un codice licenziato con la GPL qualsiasi ulteriore modifica deve essere distribuita con la stessa licenza. Le idee stesse di Stallman venivano viste con sospetto dall'ambiente commerciale statunitense, il che non facilitava la diffusione del software libero. Per favorire dunque l'idea delle licenze liberali nel mondo degli affari, [[Bruce Perens]], [[Eric S. Raymond]], Ockman e altri cominciarono nel [[1997]] a pensare di creare una sorta di [[lobby]] a favore di una ridefinizione ideologica del software libero, evidenziandone cioè i vantaggi pratici per le aziende e coniarono il termine "''openOpen sourceSource''". Ciò anche al fine di evitare l'equivoco dovuto al doppio significato del termine "free" nella lingua inglese, visto che spesso veniva interpretato come "gratuito" invece che come "libero". L'iniziativa venne portata avanti soprattutto da parte di Raymond che, in occasione della liberalizzazione del codice sorgente di [[Netscape]], voleva utilizzare un tipo di licenza meno restrittivo per le aziende di quanto fosse la GPL.
 
La scelta a favore dell'"openOpen source"Source da parte di alcune importanti imprese del settore come
la [[Netscape]], [[l'IBM]], la [[Sun Microsystems]] e l'[[Hewlett-Packard|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. IVa priminotato programmicome ai codiceprimi apertoprogrammi 'liberi', come il [[GNU Compiler Collection|GCC]], seguivano ancora il modello a cattedrale; solo successivamente progetti come [[EGCS]] adottarono il modello delineatoa da Raymondbazaar.
 
== Descrizione concettuale ==