[Discussioni] Re: Java è "libero"?

Paolo Molaro lupus a debian.org
Mer 12 Mar 2003 18:54:09 CET


On 03/12/03 Simo Sorce wrote:
> E chi l'ha mai detto? Il caso particolare non è il linguaggio ma il
> soggetto che lo propone ovviamente in questo caso, vista la sua storia
> anche recente.

Ok, pensavo si potesse fare una discussione con degli argomenti di
una qualche consistenza, ma dire che qualcosa di standardizzato sia
un problema perche' e' stata la MS a proporlo e' un argomento 
piuttosto debole.
Probabilmente la meta' degli standard su cui si basa l'informatica di
oggi ha lo zampino di MS. C++ e' stato proposto dal monopolista per
eccellenza (AT&T), gli esempi sono tanti. Proponi di non seguire o
implementare gli standard per questo? In pochi anni ti ritroverai con un
computer che non puoi fare funzionare, non a cuasa dei brevetti, ma a
causa del FUD che tu spargi sui processi di standardizzazione.
Per fortuna molti implementano gli standard invece di boiccotarli, cosi'
io, utente e sviluppatore di software libero, posso comprarmi un
computer a un prezzo relativamente basso e posso usare codice scritto su
altre piattaforme da gente che segue gli standard (siano essi C, C++,
C# o le specifiche PCI per far funzionare la mia scheda di rete: lo
sai, vero che Microsoft partecipa alla standardizzazione di PCI?
Non ti vedo proporre di non usare schede PCI per questo "vista la sua
storia aanche recente"...).

> > *) standardizzare migliaia di class/API richiede un sacco di tempo,
> > se si fanno le cose in fretta si rischia di produrre uno standard
> > pessimo.
> 
> D'altro canto lascia mano a libera a Microsoft di rendere punti chiave
> alcune di quelle non standardizzate e applicare politiche non RAND
> (anche se anche quelle RAND come già detto non vogliono dire nulla).

Notizia straordinaria: MS puo' fare (e in molti casi fa) quelli che dici
indipendentemente dall'esistenza di standard oppure no, quindi favorire
la standardizazione di API fatte meglio non lascia mano libera per
niente, permette solo ai poveracci che dovranno implementare lo standard
(tra cui il sottoscritto) di fare un lavoro migliore. Il resto e' FUD.

> > Di nuovo, quando C e' stato standardizzato, ci sono voluti molti anni
> > prima che anche altre librerie di basi fossero standardizzate e molte
> > delle librerie che ormai sono indispensabili per la programmazione in C
> > _non sono standardizzate_. Che la cosa ti piaccia o no, la situazione
> > e' praticamente la stessa nel caso del C e di C#/CLR.
> 
> Ripeto, mai detto il contrario, il discorso non era questo, e non credo
> che standardizzare anche l'ultimo capello in questi settori serva a
> qualcosa. Servono standard aperti per i formati non per i linguaggi di
> programmazione.

Cosa? Prima dici che MS doveva standardizzare tutto, anche le API
progettate male, e adesso dici che non serviva nemmeno che
standardizzasse il linguaggio?

> > Fino a poco tempo fa (o forse ancora?) lo standard C e altri importanti
> > come alcuni dei vari POSIX.x costavano centinaia di dollari: ti
> > puoi scaricare le specifiche ECMA e la documentazione delle classi di
> > base dal sito ecma o dai mirror.
> 
> Il fatto che il libro con le specifiche costasse migliaia di dollari non
> impediva che si potessero scrivere programmi posix compliant senza dover
> pagare royalties, i brevetti software invece funzionano in modo
> differente e molto più invasivi e quindi dannoso.

Gia', infatti puoi gia' scrivere programmi che girano sul CLR senza
pagare royalties e puoi implementare la CLR senza pagare royalties e in
piu' la documentazione per farlo e' disponibile gratis in pdf.

> > Non avrei alcuna difficulta' a fare una serata di "M$ bashing" con te 
> > davanti ad una birra, e' una cosa che diverte anche me.
> 
> A me non molto, mi stancano queste discussioni e mi interessano
> relativamente poco.

Il "MS bashing" senza argomenti e' quello che fai nella tua mail quando
dici che C#/CLR/.net/quello che vuoi e' un problema indipendentemente
dal fatto che sia uno standard o no perche' MS l'ha proposto.

> > Ma in questo caso non ci sono argumenti per sostenere la tua tesi solo
> > nei confrontidi C#/CLR.
> 
> Infatti non ho mai parlato di C#/CRL, ho parlato di ambiente .NET che è
> _molto_ di più e anzi C# ne è solo una piccola parte.

Ripeto, il problema sono i brevetti sw. Tu puoi continuare a spargere
FUD su .net quanto vuoi, ma farlo per una patent application (del cui
brevetto eventuale viene data una licenza d'uso royalty-free) quando
al di fuori di .net ci sono invece _migliaia_ di brevetti che possono
incidere su ogni riga di codice che scrivi ogni giorno, e' un po'
ipocrita.

> >  Se il problema che tu poni (non tutte le librerie del mondo
> > sono standardizzate) esiste, vale per tutti i linguaggi.
> 
> Certo che vale per tutti i linguaggi, ma si chiedeva un confronto tra
> ambiante jdk di sun (si può parlare anche di Sun One) e ambiente .NET e
> io a quello rispondevo, qualsiasi altra questione te la sei sognata tu
> purtroppo.

Ci sono in pratica tre sole differenze tra sun one e .net:
1) il core di .net e' stato standardizzato
2) .net e' tecnicamente migliore
3) .net e' piu' recente

Tutte le altre questioni che poni, relative ai brevetti etc., sono
indipendenti, sia da sun one che da .net che da qualsiasi altro ambiente
di sviluppo (anche se con modalita' leggermente diverse).

> Cosa invece vera, perchè come detto prima tutto l'ambiente .NET è ben
> più del solo C# e quindi altri punti chiave possono essere brevettati e
> non utilizzare politiche RAND, inoltre se tu avessi letto con attenzione
> avresti capito che RAND non vuol dire permetterne a chiunque l'accesso
> anche se sulla carta sembra così, come detto prima alzare il prezzo può
> tagliare fuori molti pur restando nell'accezione RAND.

Vabbe', se vuoi continuare a parlare di RAND va bene, siamo anche
d'accordo su quello, peccato che non c'entri niente con gli standard di
cui stiamo parlando.
Quello che stai dicendo e':
solo una parte di .net e' standardizzata e ha la licenza per usarlo 
senza royalties, quindi MS puo' reclamare brevetti per le altre cose che
sviluppa. Ora, se non esistesse .net la frase sarebbe ancora vera, per
cui non capisco perche' to debba spargere FUD su .net in particolare, ti
suggerisco di aprire un secondo thread sui brevetti sw.

> > La R sta per 'Reasonable', quindi questo ultimo tuo punto non ha
> > fondamento. E' vero che anche 1 dollaro nel caso del sw libero e'
> > troppo, ma proprio per questo ho riportato anche un'altra frase che
> > forse non avevi ancora letto prima di rispondere:
> 
> Scusa ma qui mi vien da ridere ... cosa vuol dire Resonable? Resonable
> per chi? Per grandi aziende anche 10.000EUR può essere ragionevole,

Non c'entra, anche un dollaro non e' ragionevole per il sw libero,
ma siccome la licenza e' royalty-free questo non e' un problema.

> anche economico probabilmente... e avevo letto anche la frase
> successiva, ma avere il core a costo zero non vuol dire che comunque il
> resto possa costare troppo ed essere fondamentale per interoperare con
> loro.

Ok, e la tua alternativa sarebbe? Se non fai niente hai
interoperabilita' 0, se implementi lo standard hai interoperabilita'
_almeno_ sulle cose coperte dallo standard. Non mi sembra che sia una
decisione difficile da prendere. Attualmente la situazione e' piu o meno
cosi':

Microsoft implementa il 100% dello standard. Lo standard copre piu' o
meno il 50% di quello che viene chiamato .net.
Mono implementa il 90% della parte standard e il 30-40% della parte non
standardizzata. In piu' Mono implementa diverse altre librerie libere
come Gtk#, accesso a database ed altre cose ancora. Una parte delle
funzionalita' sono sovrapposte con quello che MS implementa nella parte
non standardizzata. Quindi, anche se MS dovesse cambiare idea e non
permetterci di implementare qualcosa della parte non standardizzata, non
e' un problema, perche' possiamo (e l'abbiamo gia' fatto) implementare
le stesse cose in modi e con API diverse. In piu' i programmatori che
seguono lo standard potranno facilmente far girare il loro sw con mono
(non sto parlando di sw proprietario che personalmente non mi interessa,
ma di un sacco di sw libero che viene sviluppato su windows con .net,
a titolo di esempio c'e' una JVM che gira sul CLR, funziona con mono
e fa girare i programmi java su linux 2-4 volte piu' veloce di quanto
facciano altre JVM libere come kaffe).

> > Ti ricordo solo che nelle cose di cui stiamo parlando, sono gia' loro
> > in posizione 'dominante', quindi secondo la tua teoria avrebbero dovuto
> > gia' cominciare a fare i 'cattivi'...
> 
> Non potevano, c'era un processo in corso, ricordi?

Il processo era in corso anche quando c'e' stato il tentativo anti-GPL
riguardo alle specifiche CIFS e comunque adesso e' praticamente finito.

> E comunque non sono dominanti sulle piattaforme integrate lato server,
> Java è ancora molto forte e politiche dure avrebbero scoraggiato quanto
> meno quelli che utilizzano la piattaforma di Sun che sono ancora una
> bella e importante fetta.

Puo' darsi, anche se io preferisco basare i miei giudizi sui fatti e non
su supposizioni. A me preoccupano i brevetti che sono gia' stati
accordati a MS, Intel, IBM, Sun e tanti altri, piuttosto che un
eventuale brevetto di cui ho comunque la licenza d'uso royalty-free.
E a parte questo, il mondo del sw libero, essendo in svantaggio e in
minoranza avrebbe solo vantaggi dal seguire gli standard invece di
nascondere la testa sotto la sabbia.

lupus

-- 
-----------------------------------------------------------------
lupus a debian.org                                     debian/rules
lupus a ximian.com                             Monkeys do it better



More information about the discussioni mailing list