Venerdì 26 giugno, ore 22 circa

Ivan a Daniele: “Dato che ho un dolorino al fianco, nel caso domani mi faccia troppo male, pensi di potermi sostituire nella sfilata del gioco del ponte?”
Daniele: “Se ne hai proprio bisogno… ma preferirei di no.”
Federico: “Io ho appena dato il mio ultimo esame e non sono mai stato così libero. Se vuoi ti sostituisco io.”
Ivan: “Non credo sia il caso: sei troppo alto e magro, il mio vestito di certo non ti starebbe. Ma soprattutto non hai mai fatto le prove e non sapresti cosa fare. Comunque grazie dell’offerta.”

Sabato 27 giugno, ore 16:30

Ivan mi chiama al cellulare: “Per caso sei ancora interessato a sfilare?”
Federico: “Ehm… veramente…”
Ivan: “Un ragazzo ha dato buca all’ultimo minuto per un lutto in famiglia. Ci faresti un grosso favore se potessi venire.”
Federico: “Mmm… capisco… e le prove? Avevi detto…”
Ivan: “Non c’è problema. Ti spieghiamo tutto quando vieni.”
Federico, sospirando: “Ok, proviamo anche questa. Quando vengo?”
Ivan: “Avresti dovuto essere qui 10 minuti fa…”

E fu così che, ebbro dell’euforia post-esame, ho accettato di entrare a far parte, seppure in via straordinaria, del corpo delle “Guardie al campo con armatura di Mezzogiorno”.
Leggi il resto di questo articolo »

Tag:,

Comments 7 Commenti »

Nel corso di laurea specialistica in “Tecnologie informatiche” di Pisa due esami creano particolari problemi agli studenti, seppure in modi completamente diversi.

Il primo è il famoso “Architetture parallele e distribuite” (ASE) di cui ho parlato in altri post. È tenuto da Marco Vanneschi, un docente eccezionale, con grandi doti espositive e in grado di tenere alta l’attenzione a lezione e di stimolare lo studente allo studio verso una materia estremamente interessante che copre aree di ricerca talvolta erroneamente trascurate. Ciò che spaventa di questo esame è la difficoltà dell’esame scritto che raramente è superato da più del 10% dei candidati. E ancor più dello scritto, almeno per quanto riguarda me, è stata causa di forte apprensione l’orale, in cui si deve affrontare a quattrocchi il professore, in grado di metterti completamente a nudo, di soffiare via ogni traccia di fumo con cui cerchi di nascondere le tue incertezze, arrivando dritto al nocciolo.

Il secondo è “Linguaggi e calcolabilità” (LC) di Egon Börger, professore di fama internazionale chiamato a Pisa apposta per tenere questo corso. Se dovessi indicare l’obiettivo del corso non credo che sarei in grado di farlo. Ciò che certamente emerge in questo corso è la definizione delle Abstract State Machines, una generalizzazione delle Finite State Machines, che consenta di computare qualsiasi algoritmo astratto su qualsiasi struttura dati, o qualcosa del genere… In particolare la conoscenza delle ASM viene approfondita mediante lo studio di problemi e modelli concreti tra cui spicca la formalizzazione dell’intero linguaggio Java, dall’interprete alla Virtual machine, dal compilatore al byte code verifier, dal caricatore al linker, insomma ogni sua parte. Detto così, per uno studente di informatica, potrebbe sembrare anche interessante sviscerare Java, un linguaggio che viene ormai utilizzato come base da molti corsi di laurea in informatica. Il problema è che il professore ne richiede una conoscenza puntuale, che si può ottenere soltanto imparando a memoria righe e righe di pseudocodice ASM.

Ma c’è una scappatoia…
Leggi il resto di questo articolo »

Tag:,

Comments 1 Commento »

È già il terzo seminario di Giuseppe Augiero che seguo. Stavolta gli argomenti erano più ad ampio spettro e riprendevano alcuni dei punti trattati nei precedenti seminari (”IPv6, the next generation Internet” e “Next Generation Network e neutralità della rete“), ma rivisti e aggiornati alla situazione odierna e arricchiti di nuovi spunti di riflessione.

Dopo aver accennato:

  • alle Next Generation Network, ai problemi e alle scelte fatte sul passaggio alla fibra ottica
  • alla strategia di marketing delle compagnie telefoniche per vendere gli “scatolotti internet” (e in generale alla fornitura di collegamenti wireless ad internet) non in base alla loro velocità ed efficienza (di cui sono peraltro carenti) ma in base allo slogan “Non puoi non averlo!”
  • alle problematiche che stanno dietro al “digital divide”

siamo passati all’argomento principe della serata: la neutralità della rete.

Si tratta di un tema che esiste da prima ancora di internet ma che solo di recente sta assumendo una certa importanza. Volendolo riassumere in una frase sarebbe:

Tutti gli utenti hanno uguale diritto di accesso alla rete

Il che non ha niente a che vedere l’accesso gratuito in quanto, un giusto costo deve essere mantenuto, così come è giusto che esista la possibilità di pagare per ricevere una maggiore “qualità di servizio”. Ciò di cui si parla è invece la possibilità di accedere a qualsiasi servizio e di raggiungere qualunque utente.

Non è neutrale ad esempio una rete che impedisce a priori (senza dichiararlo nel contratto) di utilizzare determinati tipi di traffico dati, come il P2P o il VOIP, o la possibilità di installarsi in casa un mail-server, sotto la falsa bandiera della difesa dallo SPAM o dal download illegale. Non è neutrale una rete in cui una legge blocca l’accesso a un utente accusandolo di scaricare materiale coperto da diritti d’autore sulla base di “ragionevoli supposizioni”, come accade in Francia con Hadopi. Non è neutrale una rete che fa “deep inspection”, ovvero che non si limita ad osservare il tipo di traffico, ma ne ispeziona anche il contenuto, come avviene ad esempio in Italia, pur andando contro all’articolo 15 della Costituzione sulla “libertà e segretezza di comunicazione”…

Il confine della neutralità tende ad essere comunque sfumato in quanto non tutte le limitazioni necessariamente la violano. Come ho accennato prima, una rete continua ad essere neutrale ad esempio se una limitazione è dichiarata espressamente sul contratto con il provider, o comunque  se è utile all’utente, come il filtro anti-SPAM, o altri servizi analoghi. In questo senso sarebbe utile redarre una carta dei diritti di internet per avere una distinzione oggettiva su cosa è neutrale e cosa non lo è.

Ciò che conta, come sempre, è non subire quello che ci viene proposto accettandolo a scatola chiusa. Per ottenere questo è necessario sensibilizzare il fruitore della rete accrescendo la “cultura tecnologica” delle persone, quindi parlando e mantenendo vivo e vitale l’argomento della neutralità della rete.
Tanto per iniziare potete farvi un giro nel nuovo NetNeutrality Blog, in cui sono state pubblicate anche le slide del seminario.

Net Neutrality - All bits are created equals

Tag:, ,

Comments 2 Commenti »

Appena arrivato in treno a Pisa, alle 22:30, mi piazzo alla fermata di fronte alla stazione ad aspettare il bus 21 (linea notturna). Come di consueto sorrido affabilmente ai poveretti che si avvicinano timidamente al pannello dell’orario cercando di capirci qualcosa.

Una coppietta di turisti di mezza età, cogliendo la mia palese disponibilità, mi chiede informazioni, in inglese. Riporto il breve dialogo tradotto in italiano, in modo da nascondere le mie evidenti carenze nell’anglosassone idioma.

Sposino: Mi scusi, che linea possiamo prendere per andare in via Banana?

Uccio: [incredulo] Prego?

Sposino: Vorremo andare in Via Banana, vicino al dipartimento di Ingegneria.

Uccio: [ci pensa un attimo] Quindi lei vuole andare vicino alla Torre, giusto?

Sposino: Sì, proprio di fronte.

Uccio: Ah ok. Non conosco via Banana ma il 21 ferma proprio di fronte al dipartimento di Ingegneria, in via Bonanno. Penso che faccia al caso vostro.

Sposino: Sì! Esattamente! Mi sa dire quando passa?

Uccio: [dà un'occhiata al plexiglas bruciato da un accendino, laddove dovrebbe esserci l'orario dell'autobus, quindi controlla l'ora] Fra circa cinque minuti.

Sposino: Grazie tante.

Uccio: [ancora pensieroso, come se gli fosse sfuggito qualcosa] Prego.

Tag:,

Comments 3 Commenti »

La gente tende a generalizzare le situazioni fino al punto che un unico evento negativo infici una lunga serie di eventi positivi.
Capita ad esempio che un treno possa accumulare molto ritardo e che intorno a te si scatenino panico e disapprovazione.
Ci sono momenti in cui mi verrebbe voglia di dire a queste persone che i ritardi possono capitare, che è inutile lamentarsi e che, anzi, bisognerebbe essere grati agli innumerevoli impiegati di Trenitalia (ma non ai dirigenti!) che riescono a mettere in moto ogni giorno migliaia di treni sgangherati talvolta vecchi anche più di me, in ferrovie retrograde (in alcune tratte con un solo binario!) senza farli deragliare o scontrare ed arrivando quasi sempre in orario.

Ci sono momenti invece in cui prendi il treno a Siena alle 17:40 per arrivare a Pisa alle 19:30 con un largo anticipo rispetto all’appuntamento preso con gli amici. Capita che il treno ritardi di 15 minuti, e allora capisci che arriverai a Pisa con 30 minuti di ritardo perché perderai la coincidenza ad Empoli e dovrai aspettare il treno successivo. In quei momenti ti sfugge quasi un sorriso di gratitudine a te stesso per essere stato previdente ed esserti così evitato un travaso di bile. Può capitare anche che il treno si fermi misteriosamente altri 15 minuti in mezzo ad un suggestivo bosco di faggi e betulle (a pochi chilometri da Siena) e allora inizi a temere che forse non riuscirai a prendere neanche la coincidenza successiva. Tale dubbio si concretizza quando a Castellina in Chianti ti dicono che il treno è stato soppresso a causa di un guasto nel sistema di segnalazione dei semafori della stazione e che da un momento all’altro arriverà la corsa successiva. Quando finalmente sali sulla corsa successiva, in ritardo di 35 minuti (65 rispetto al primo treno che hai preso), proprio in quel momento cominci a dubitare di riuscire a prendere anche la seconda coincidenza ad Empoli e ad incazzarti di brutto.
In quei momenti provi a leggere e a goderti semplicemente il viaggio ma in nessuna delle due carrozze funziona l’aria condizionata e i finestrini abbassati alleviano solo parzialmente il caldo afoso oltre ad innalzare enormemente il rumore di fondo. Come se non bastasse, tutti intorno a te parlano male delle ferrovie e non puoi fare a meno di distrarti dalla lettura, pensando fino a che punto saresti in grado di incazzarti se dovessi perdere anche la seconda coincidenza.

Finalmente arrivi ad Empoli, giusto in tempo per la seconda coincidenza e la tensione si allenta, perché in fin dei conti arriverai con soli 65 minuti di ritardo su un viaggio che ne dura 105.

Tag:,

Comments 2 Commenti »

Questa è una vecchia storia ma, non so perché, non l’avevo ancora raccontata su questo blog.

Nell’autunno del 2007 seguii il mio primo corso di grafica 3D, per la precisione “Fondamenti di Grafica Tridimensionale”, tenuto dal Professor Paolo Cignoni. L’esame consisteva nella realizzazione di un plugin per MeshLab, applicazione open source multipiattaforma realizzata per la visualizzazione di modelli 3D molto grandi (in termini di vertici) come quelli che si ottengono tramite gli scanner 3D. Il software si basa pesantemente sulla libreria VCG, sviluppata dal Visual Computing Lab del CNR. Gira voce che sia lo strumento in assoluto più veloce per alcune operazioni sui modelli tridimensionali quali ad esempio (se ben ricordo) la “vertex simplification”.

Entrare a far parte di un progetto simile, di gran lunga il più importante cui avessi mai partecipato, era estremamente elettrizzante. Così Alessandro ed io, entrambi appassionati di progettazione di interfacce grafiche 2D, abbiamo scelto fra i vari task disponibili il “quality mapping plugin“. Esso consiste nel mappare direttamente sui vertici della mesh (modello 3D approssimato mediante reticolo di triangoli) un colore rappresentante il valore di qualità del vertice stesso, precedentemente calcolato. La qualità può essere la quantità di luce che gli arriva da una fonte luminosa, o il livello di “spigolosità” o tante altre cose che non starò ad elencare perché nemmeno io riesco a comprendere.

In uno-due mesi di lavoro siamo riusciti ad arrivare ad una versione funzionante del plugin. Presi dall’entusiasmo, su sprone del professore, abbiamo continuato ad aggiungere funzionalità che hanno reso il plugin sempre più potente e versatile. Il nuovo plugin sarebbe stato inserito nella versione 1.2 di MeshLab in uscita nell’estate del 2008. Purtroppo però la progettazione iniziale non era stata studiata per includere tali nuove caratteristiche nel plugin e quindi il codice diveniva inevitabilmente sempre più “spaghettoso“, funzionante ma un po’ instabile, sino ad arrivare ad un punto di non ritorno in cui era praticamente impossibile correggere bug senza crearne altri. La soluzione drastica proposta dal professore fu di riscrivere il codice da zero, soluzione che io ed Alessandro non eravamo disposti ad accettare dopo così tanti mesi di lavoro per un esame che, per quanto fosse interessante, era solo da 6 crediti. Dato il lavoro svolto, l’esame fu comunque registrato e da quel giorno calò un silenzio imbarazzante tra i programmatori (Ale ed io) e il committente (il prof).

La versione 1.2 è rimasta nel limbo per molti mesi (mi auguro non a causa nostra), fino a quando, pochi giorni fà è arrivato nella mailing list degli sviluppatori una notifica dell’avvenuto rilascio della nuova versione su Windows, Linux (solo sorgenti) e Mac (solo Intel). Credevo che il nostro plugin non sarebbe stato incluso e invece lo trovo in bella vista nella toolbar dell’applicazione insieme ad un sacco di nuovi plugin. E cosa ancor più sorprendente: funziona perfettamente! Non ho stressato il plugin in lungo e in largo alla ricerca di bug, ma sembra che almeno le funzionalità principali funzionino bene.

Per chi vuole provarlo:

  1. scaricare ed installare MeshLab
  2. aprire un modello
    • ad esempio laurana50K nella cartella /sample
  3. applicare dei valori di qualità ai vertici
    • ad esempio tramite Filter/Color/Face Ambient Occlusion
  4. aprire Quality Mapping Tool (cliccare sul link per una spiegazione dettagliata del plugin) tramite apposito pulsante a forma di “coniglietto morbidoso-psichedelico” (vedi immagine)
  5. cliccare su preview e giostrare con i vari comandi
Mappatura in RGB del valore di curvatura gaussiana dei vertici della mesh

Mappatura in RGB del valore di curvatura gaussiana dei vertici della mesh

Tag:,

Comments 4 Commenti »

Mercoledì 22 aprile, sera prima dell’esame:

Federico: Vado a ripetere un’ultima volta la presentazione.

Enrico: Presentazione? Sembra che tu debba fare l’esposizione della tesi!

Federico: …
Beh, in effetti è quasi una tesi, è da ottobre che ci lavoro.

Sei mesi ormai sono passati da quando sono andato dal professore del corso di “realtà virtuale” a presentargli la mia idea per la realizzazione della prova pratica d’esame. Sei mesi spezzati in due dall’uragano ASE (parte 1, parte 2), durata dai primi di dicembre fino a tutto gennaio e dalla breve parentesi di “reti mobili” a febbraio, durata meno di tre settimane.

Un mese buono l’ho investito ad imparare ad usare Blender, suite open source multipiattaforma specializzata per la realizzazione di animazioni ma in grado di coprire egregiamente quasi ogni funzionalità richiesta ad un software per la modellazione 3D. Superato il primo impatto con l’interfaccia, che ti costringe ad abbandonare tutti i paradigmi d’uso che si associano abitualmente ai programmi di grafica 2D, sia vettoriali che raster, si impara a godere delle sue immense potenzialità.

Un altro mese, spalmato in tutto il periodo, l’ho speso nella progettazione di alcune semplici strutture dati e algoritmi, che realizzavano il vero e proprio progetto.

Il resto del tempo in pratica l’ho passato a litigare con alcuni punti un po’ scuri del framework su cui si poggiava la mia applicazione, XVR, e a districarmi fra gli infidi meandri della grafica 3D.
Come recita la firma di un utente del forum ufficiale di XVR che mi ha aiutato in più occasioni a sbrogliare intricate matasse:

I tell you, realtime 3D is made of blood, sweat and screams!

Alla fine comunque ce l’ho fatta.
L’idea era realizzare in 3D uno dei tanti strumenti di visualizzazione e archiviazione delle foto tipo Picasa. Nel progetto originale, oltre ad avere foto che se ne svolazzavano a destra e a sinistra ci doveva essere anche la possibilità di sfogliare veri e propri album fotografici posizionandovi sopra le foto (come si faceva abitualmente con le foto stampate 20 anni fa) e di archiviarli all’interno di scaffali ordinati per anno…

Varie difficoltà nella modellazione e nella realizzazione della logica dell’applicazione mi hanno fatto abbassare la cresta fino ad arrivare ad un’applicazione sostanzialmente giocattolo in cui non è neanche implementata la consistenza di stato tra una sessione d’uso e l’altra.

Purtroppo il framework, che avrebbe le potenzialità per essere multipiattaforma, attualmente è supportato solo su Windows e la sua integrazione con il browser è implementata solo su Microsoft Explorer (un controllo ActiveX).
Se pensate di poter sopportare questo oltraggio, potete provare ad immergervi in questo piccolo mondo virtuale cliccando qui.

Tag:, , , ,

Comments 3 Commenti »

Come ogni volta che una nuova distribuzione di Ubuntu viene rilasciata, tutti i server da cui scaricarla si intasano.

Sei impaziente di provare la nuova Ubuntu e di contribuire alla sua diffusione?
Allora la soluzione è BitTorrent (o un qualunque altro client torrent).

Scarica il torrent di Ubuntu 9.04 Desktop 32 bit cliccando qui, e avrai Jaunty Jackalope in pochi minuti!

Oppure vai alla pagina dei download per le altre versioni cliccando qui.

Tag:, , ,

Comments 2 Commenti »

Grenade on hard disk

Si parla molto della novità più interessante della nuova Ubuntu 9.04 – Jaunty Jackalope – che uscirà fra pochi giorni: il file system Ext4.

Finalmente, dopo 3 anni e mezzo di gestazione, Ext4 è stato dichiarato stabile. Sarà più veloce e più efficiente del suo predecessore Ext3 e, per la prima volta, consentirà agli utonti di fare ciò che finora era ritenuta un’eresia: la deframmentazione.
Purtroppo però i suoi sviluppatori si sono accorti troppo tardi che la tecnica del “delayed allocation” implementata in Ext4, oltre a consentire un incremento prestazionale, cela un insidioso problema: in caso di blackout i file attualmente in scrittura non rimarrebbero semplicemente alla versione precedente al salvataggio, come avviene in Ext3, ma verrebbero irrevirsibilmente corrotti.

In parole povere: allo stato attuale Ext4 rischia di distruggere i vostri dati!

Essendo questa una caratteristica a dir poco deplorevole per un file system, gli sviluppatori stanno già provvedendo alla stesura di una patch, che purtroppo verrà rilasciata solo nel Kernel 2.6.30 (si noti che Jaunty Jackalope integrerà il Kernel 2.6.28).

Pensateci bene quindi prima di decidere come formattare le vostre partizioni.

Un ultima nota per gli utenti Windows: chi, come me, utitilizza uno dei tanti driver per Windows che consentono di accedere a partizioni Ext3, dovrà anche aspettare che uno di questi driver venga esteso per essere compatibile con Ext4, dato che attualmente nessun driver lo supporta.

Fonte:

Tag:, , , ,

Comments Nessun Commento »

Lisato batterico liofilizzato, compresse da 50 mg di cui 7 mg corrispondenti a: Staphylococcus aureus 6 miliardi – Streptococcus pyogenes 6 miliardi – Streptococcus viridans 6 miliardi – Klebsiella pneumoniae 6 miliardi – Klebsiella ozaenae 6 miliardi – Haemophilus influenzae sierotipo B 6 miliardi.

Queste sono le quantità di batteri con cui ho bombardato il mio sistema immunitario alla soglia dell’inverno appena passato.  Ma facciamo un passo indietro…

Sono molto cagionevole di salute. Tutti gli inverni mi becco l’influenza almeno una volta e spesso anche qualche infezione batterica alle vie respiratorie.  Qualcuno dice che è perché non ho abbastanza carne sulle ossa, ma a quel qualcuno rispondo che da piccolo ero ancora più cagionevole, eppure ero ciccione!

Nello scorso agosto c’è stata una sgradevole novità. Di ritorno da un piacevole soggiorno all’isola d’Elba, in cui il tempo ci è stato in alcuni momenti un po’ avverso con violenti acquazzoni e persino una grandinata, ha cominciato a manifestarsi una fastidiosa tossetta. Non le ho dato importanza poiché era un gran caldo e supponevo che se ne sarebbe andata via presto.

Dopo una settimana però tossivo ancora e, anzi, le condizioni andavano peggiorando. Il medico di famiglia mi ha somministrato una breve terapia antibiotica: una pastiglia di zitromax al giorno per tre giorni, purtroppo senza riscontrare miglioramenti.

Esasperato dall’assurdità della tosse in congiunzione all’afa di agosto, sono andato da un otorino, il quale mi ha somministrato una terapia cortisonica, a cui fortunatamente il mio organismo ha risposto positivamente.

streptococcus

Di fronte al medico mi è sorta spontanea una domanda: “Dato che tutti gli inverni mi ammmalo (e adesso persino in estate!) non esiste un farmaco che aiuti ad irrobustire il sistema immunitario?”
E lei: “Certo, Ismigen. È un vaccino batterico in compresse. Una al giorno per i primi 10 giorni del mese, per 3 mesi.  Comincia subito, così a dicembre sei già coperto.”

Sono un po’ scettico: non sono uno di quelli che ricorrono ai farmaci solo in caso di vita o di morte, ma non ne faccio neanche un uso spregiudicato. E questo Ismigen mi puzzava un po’ di placebo…
Comunque un inverno senza aerosol, antibiotici e cortisone vale bene qualche pastiglia e così ho deciso di provare, ho salutato 24 euro e ho iniziato la terapia.

Devo ammettere di aver passato un inverno tranquillo (dal punto di vista della salute): non ho avuto raffreddori, tossi o mal di gola che mi infastidissero per più di pochi giorni. Ho avuto l’influenza due volte, ma con temperature che non hanno mai superato i 37,5° (per alcune persone non è neanche una temperatura degna di chiamarsi febbre) e durate comunque pochi giorni.

È impossibile dire se il merito del risultato sia effettivamente da attribuire al farmaco o se sia semplicemente frutto del caso. Nel dubbio, ripeterò la terapia anche il prossimo autunno. Sempre che il farmaco sia ancora disponibile: a quanto pare in Francia hanno ritirato dal commercio l’intera categoria farmaceutica perché i benefici che apporta non sono sufficientemente comprovati in rapporto agli effetti collaterali che invece sono stati riscontrati con certezza. Ma allora perché lo avrebbero commercializzato? E perché lo avrebbero ritirato solo in Francia e non negli altri paesi dell’UE?

Forse non sono poi così tanto scettico… :-)

Tag:,

Comments 3 Commenti »