La sezione Digital di NinjaMarketing ha intervistato uno degli italiani attualmente più famosi all'estero (per la precisione in quel del Regno Unito) per due motivi principali: aver creato Infer ed aver vinto il prestigioso Roger Needham Award. Signore e Signori a voi l'intervista con Dino Distefano!
Buongiorno Dino, eviterò di farle domande scontate come chiederLe come si è sentito venendo respinto a Pisa o cosa ne pensa del Sistema Italia (soprattutto a livello universitario). Come ci si sente a vincere il Roger Needham Award e cosa cambia per lei con questo premio?
Una grande emozione, fino a un po' ti tempo fa non ci avrei creduto. Ma soprattutto una grandissima soddisfazione vedere premiati tanti anni di duro lavoro mio e del team.
Lei ha realizzato "Infer" una sorta di sistema predittivo che consente di trovare i difetti prima che un prodotto venga commercializzato (ovviamente mi corregga se sbaglio). Le va di parlarci di queste sua creatura?
Infer è un sistema di "verifica automatica", cioè un sistema che verifica matematicamente che certi errori critici possano verificarsi quando il software viene eseguito.
Infer automaticamente controlla tutte le possibili esecuzioni in cui il software analizzato si potrà trovare, riuscendo cosi a trovare certi errori nascosti. Una volta corretti gli errori, controllando tutte le esecuzioni si e' in grado di stimare quando questo tipo di errori non si possono più verificare.
Le stavo per chiedere se dopo la sua creazione (insieme ai suoi colleghi) non le fosse venuta voglia di fondare una start-up ma mi sono reso conto che ci avete già pensato per evitare di farvi soffiare l'idea (come purtroppo spesso accade). Ci parli della sua avventura con la Monoidics Limited.
Quando ci siamo resi conto che il nostro sistema era in grado di scalare al livello da poter analizzare software sviluppato dalle aziende, ci siamo accorti che avevamo la grande opportunità di portare questa tecnologia fuori dal mondo accademico, in modo da poter essere utilizzata per migliorare il software utilizzato da milioni di persone.
L'esperienza di Monoidics mi ha insegnato tanto. Sviluppare un prodotto commerciale è sostanzialmente diverso da sviluppare un prototipo accademico. Altri fattori entrano in gioco. Inoltre la cosa sicuramente più difficile e' stato la parte business. Come accademici, io e i miei colleghi non avevamo nessuna esperienza di business.
C'è voluto un po' per capire certi meccanismi.
Non crede che "Infer" sia uno dei tanti tasselli, o forse il principale, che ci condurrà nell'era delle macchine?
Non sono sicuro che cosa intende per era delle macchine. Infer aiuta a migliorare l'affidabilità e la sicurezza del software. Può aiutare a sviluppare software più sofisticato in modo più affidabile. Per questo può aiutarci a sviluppare software sempre più complesso di cui abbiamo bisogno in questa era digitale. Ma non credo che ci sarà un'era delle macchine.
Pensa che in una visione di insieme Infer potrebbe essere utilizzato per rendere le città più Smart? Mi spiego: Il vostro sistema predittivo analizza e previene difetti di fabbrica, crash o similari. Avete mai pensato di applicare questo concetto in un'ottica più vasta come la prevenzione di incidenti autostradali ecc ecc?
Insomma rendere Infer una sorta di cervellone che analizza, previene e dunque risolve eventuali "crash" interni ad un sistema che può essere una città o una struttura ospedaliera?
I concetti su cui si basa Infer non sono limitati al software. Ma potrebbero essere estesi in qualche modo a "sistemi" più in generale. Tutti i sistemi per cui si può creare un modello matematico che ne può descrivere il comportamento completo sono sistemi a cui si può applicare una tecnologia simile a quella di Infer usata nel software.
In un certo senso questo già avviene. Per esempio tecniche simili vengono usate per la verifica dell'hardware, o potrebbero essere usati per sistemi di scambio di treni, etc. Siamo ancora all'inizio, ma le possibilità potenziali sono molteplici.
Quale sarà l'evoluzione di Infer? Avete qualcosa in mente che potete condividere con i nostri amici Ninja?
Stiamo studiando dei metodi per estendere Infer per programmi paralleli sviluppati per processori multicore. Questo tipo di programmazione è molto complessa e quasi impossibile da fare correttamente. Quindi ci sarà sempre più bisogno di sistemi come Infer visto che la programmazione parallela diventerà onnipresente in tutti i sistemi software del futuro.
Come si vede tra 20 anni e come vede l'evoluzione del mondo informatizzato che conosciamo oggi?
Sicuramente tra 20 anni avremo a nostra disposizione una potenza di computazione di ordini di magnitudine superiore a quella di oggi. Penso che queste risorse cambieranno notevolmente il nostro modo di vivere, come è già successo negli ultimi 10 anni. Come sfruttare queste risorse al massimo e nel modo migliore sarà una sfida molto interessante da affrontare. Mi auguro di essere coinvolto nella risoluzione di problemi che abbiamo un impatto positivo nella società.
Lei è un uomo di scienza, sicuramente un sognatore (altrimenti Infer non esisterebbe), un matematico e non solo. Quale sogno ha nel cassetto?
L'ingegneria del software è ancora un'arte, ma vorrei che diventasse un'attività più scientifica. Esiste solo da circa 50 anni, mentre altre branche di ingegneria da diversi secoli e hanno delle fondamenta matematiche solide. Vorrei che gli sviluppatori software abbiano a loro disposizione strumenti matematici paragonabili a quelli degli ingegneri in altri campi. Infer è uno di questi strumenti. Ma c'è ancora tanto lavoro da fare e molta tecnologia da sviluppare per portare l'ingegneria del software allo stesso livello delle altre.
Ed ora la domanda delle domande. negli anni 70 la domanda era:"Beatles o Rolling Stones"? Oggi la domanda è: "Apple o Android"?
Per l'interfaccia grafica e l'usabilità Apple, per tutto il resto Android.
Con questa intervista il vostro Koogaku vi augura un Buon Natale! Mi raccomando stay tuned!! ;)