Lo mando prima qui, se va bene lo si mette in rete. Vi abbraccio --------------------------
Questo episodio è realmente accaduto nel mese di maggio del 2000. Davanti a me c'è un cluster di sei macchine. Sono sei RISC 6000 IBM, anno di immissione in esercizio: ignoto ma di sicuro quasi dieci anni fa. Le macchine, senza che ci inganniamo, sono ormai obsolete: ognuna di esse va come un 486 a 66 MHz.... Per fortuna il sistema operativo è uno Unix, per cui vanno lo stesso in rete decentemente. Non ci servono interfacce grafiche, qui facciamo calcolo massiccio, cui le interfacce utente sono le classiche shell bash e facciamo tutto a riga di comando... ed è una fortuna: se dovessimo far partire le interfacce grafiche, qui si inchioderebbe tutto di sicuro. Mi trovo in un laboratorio dove si sperimentano tecniche di analisi di dati basate su algoritmi di intelligenza artificiale. In realtà io non sono un informatico, mi occupo di fisica statistica dal 1999 (anno della mia laurea in fisica) e gli algoritmi di analisi mi servono per tirare fuori i risultati riguardanti l'esperimento a cui partecipo. Nulla di eccezionale, ho solo un miliardo di equazioni da risolvere, o meglio, da far risolvere alle macchine. Il cluster RISC ha il sistema operativo AIX, il cui proprietario è IBM, e tutto il software è sotto licenza IBM, rigorosamente senza sorgenti ma questo non costituisce un problema: IBM ha fornito le interfacce software delle funzioni delle librerie installate, per cui abbiamo potuto sviluppare il nostro software da interfacciare con quello proprietario. Per ottenere i risultati che mi occorrono, abbiamo implementato un algoritmo genetico, una parte della sua implementazione è stata la mia tesi di laurea. In una calda mattina di maggio, il cluster RISC si è fermato. E' crashato un disco. Tra l'altro era quello dove compilai la mia tesi di laurea in Latex, per fortuna avevo il backup... ma lasciamo perdere i ricordi: ora c'è un problema immediato da risolvere, le macchine si sono spente e quindi addio algoritmo genetico e analisi dei dati... Il sistemista ha chiamato l'assistenza IBM: è necessario mettere un disco nuovo e reinstallare il software appropriato. La IBM ha risposto che quelle macchine sono fuori assistenza da anni, in quanto obsolete, e non viene fornita più assistenza. Dopo qualche insistenza da parte del direttore del laboratorio (molto inviperito a dire il vero), IBM ha confessato che non ha più personale in grado di fornire assistenza su macchine così vecchie. Addio cluster RISC... è stata una punta di diamante del calcolo parallelo nella prima metà degli anni '90, ma ora per lui è giunta l'ora del cimitero informatico. Resta il problema dell'attività scientifica interrotta. C'è poco da fare: devo inventare qualcosa per far girare quell'algoritmo genetico. Accendo il mio umile portatile, ben poca cosa rispetto al cluster RISC, parte il sistema operativo Linux Slackware, faccio partire l'interfaccia grafica e mi metto a cercare in rete qualcosa che faccia al mio caso. Il software particolare ce l'ho, l'ho scritto io, ma mi mancano le librerie con il motore genetico che erano sulle RISC. Una rapida ricerca su SourceForge e scopro che esiste la GAlib, trovo infatti questa informazione: GAlib: Genetic Algorithms Library - Web Site: http://lancet.mit.edu/ga/ Corro subito a leggere la documentazione, e scopro che questa libreria svolge *esattamente* lo stesso compito delle librerie proprietarie di IBM! Cambiano solo alcune interfacce. C'è un altro particolare: leggo sul sito: "Licensing: GAlib is free"! Scarico le librerie e mi metto al lavoro. Modifico nel mio software le chiamate alle funzioni di libreria, in modo da interfacciarmi con le GAlib piuttosto che con le librerie proprietarie IBM. Tenendo aperte due finestre, una con la documentazione delle librerie ed una con un normale VI che mi serve ad editare il mio software, modifico tutti i miei moduli. Durante questo lavoro mi rendo conto che queste librerie free sono documentate *molto meglio* di quelle proprietarie, le cui licenze sono costate un occhio della testa all'istituto. E' merito della scelta fatta dal MIT, che possiede il copyright delle librerie: "il codice sorgente è disponibile gratuitamente", di conseguenza chi ha USATO il la libreria ha poi inviato varie note di feedback agli autori, specificando in quali punti la documentazione era poco chiara, e suggerendo anche i miglioramenti da apportare. Dopo sei ore di lavoro, ho terminato di modificare il mio codice. Esco dall'interfaccia grafica e lancio l'algoritmo di analisi. Il mio portatile è un banale pentium... ma nonostante questo il software gira quasi alla stessa velocità di esecuzione che aveva sul cluster RISC. Mi rendo conto che non è solo a causa della lentezza delle RISC, il codice della libreria free è molto più ottimizzato. Anche per il codice è avvenuta la stessa cosa rilevata a proposito della documentazione: gli utenti della libreria hanno inviato agli autori delle note di feedback specificando dove si poteva migliorare il codice per renderlo più veloce e più affidabile. Tutte cose che con software proprietario non sono possibili. Lascio il portatile acceso e torno a casa. Durante la notte farà tutto il calcolo massiccio richiesto e domani mattina troverò i risultati. Anche senza cluster RISC proprietario, il problema è risolto, grazie alla possibilità di usare free software... per il quale non c'è bisogno di chiamare assistenza a costi esorbitanti, basta scrivere alla mailing-list del progetto, ed altre persone che usano o sviluppano la libreria daranno la soluzione. -- Monsieur Legrand developer of ILN system http://iln.ppcnerds.org Il problema non è tanto assicurare la privacy a coloro che la sollecitano (pochi rispetto al totale della popolazione), bensì di farla considerare un bene prezioso a coloro che vi hanno entusiasticamente rinunciato. _______________________________________________ www.e-laser.org [EMAIL PROTECTED]