Fausto Spoto, professore associato presso l’Università di Verona ed uno tra gli artefici del progetto Takamaka, approfondisce alcuni aspetti della blockchain di Takamaka così come le sue potenziali applicazioni. Tra le varie competenze ed attività, quella di Fausto è centrata sull’analisi di programmi informatici scritti in linguaggi Java e Java bytecode, linguaggi e tecniche per lo sviluppo e l’analisi di smart contract per blockchain. I lettori saranno entusiasti nell’apprendere che la Blockchain entra all’università con un corso sulla programmazione dei Takamaka SC.
- Ciao Fausto. Prima di iniziare, puoi dirci di più sul tuo background? Da dove viene il tuo interesse per blockchain e Takamaka?
Sono professore associato presso il Dipartimento di Informatica di Verona. Mi sono sempre occupato di linguaggi di programmazione e sviluppo software. Nello specifico, sono sempre stato interessato a come aumentare la qualità del software, anche utilizzando tecniche automatiche come l’analisi statica. Mi sono concentrato principalmente sul linguaggio di programmazione Java e sul suo bytecode, studiando a fondo come analizzarlo e modificarlo. Mi sono interessato alla blockchain quando ho incontrato alcuni ex studenti, che ora lavorano presso Ailia SA, che mi hanno parlato del loro piano per creare una nuova rete blockchain, basata su Proof of Stake. È stato allora che sono stato in grado di mettere a frutto la mia conoscenza dello sviluppo e dell’analisi del software Java, creare un framework software in grado di eseguire un linguaggio blockchain basato su un sottoinsieme di Java, con un layer di analisi statica che verifica le condizioni necessarie per la corretta esecuzione del codice. La mia conoscenza precedente era direttamente applicabile al mondo blockchain. È allora che è nato il progetto Takamaka, che prende il nome da un’area dell’isola della Riunione dove ho lavorato per molti anni.
- Quali sono le potenziali applicazioni di una rete blockchain con le caratteristiche di Takamaka?
È una blockchain generale, che può essere applicata a qualsiasi contesto. Un po ‘come Ethereum fondamentalmente, ma basato su una tecnologia più moderna. Il suo vantaggio principale è la facilità d’uso, poiché si basa su un linguaggio di programmazione noto e stabile come Java.
La blockchain entra all’università con un corso sulla programmazione Smart Contract.
- Possiamo dire che Java è un linguaggio user-friendly per gli sviluppatori che si avvicinano alla blockchain per la prima volta?
Java è un linguaggio maturo e stabile, ben noto a un gran numero di programmatori. Da questo punto di vista possiamo dire che è user-friendly, anche se non è certo un linguaggio semplice. Ciò che in realtà chiamerei user-friendly è principalmente il fatto che la programmazione di contratti intelligenti su Takamaka richiede la conoscenza di Java e nient’altro. D’altra parte, la programmazione su Ethereum richiede di comprendere profondamente non solo Solidity ma anche la rete Ethereum sottostante, che traspare in molti aspetti del linguaggio e rende difficile lavorarci. Ciò porta gli sviluppatori a scrivere codice complesso e spesso errato.
- Quali ragioni hanno portato te e il team di Takamaka a scegliere Java come linguaggio principale?
Principalmente il fatto che consente agli sviluppatori di scrivere contratti intelligenti senza capire realmente cosa sta succedendo sotto: cose come come la blockchain gestirà i dati, come i contratti si vedono o come vengono implementate le transazioni. Insomma, un programmatore Java con esperienza nel mondo enterprise troverà in Takamaka un noto sottoinsieme di Java e potrà essere immediatamente produttivo. Non ha nemmeno bisogno di sapere cosa sia Takamaka, o anche una blockchain. Per quel programmatore, sarà lo stesso ambiente di sviluppo di applicazioni che conosce da molti anni. Ma un altro aspetto che vorrei sottolineare è che Java esiste da 25 anni ed è ora maturo. Di conseguenza, i suoi cambiamenti negli anni sono minimi e mai invadenti.
MA QUANTO SCALA LA BLOCKCHAIN?
- A proposito del problema della scalabilità, cosa fa Takamaka per risolvere il cosiddetto “Blockchain Trilemma”?
Il problema con le blockchain è spesso l’antitesi tra scalabilità, decentralizzazione e sicurezza. Takamaka utilizza un protocollo basato su un’evoluzione del Proof of Stake, aumentando così la scalabilità rispetto al Proof of Work. Inoltre, Takamaka è una rete decentralizzata, dove i validatori possono essere aumentati a piacimento. Infine, la crittografia quantistica aumenta la sicurezza della rete mentre l’uso di Java migliora l’affidabilità del codice degli smart contract, poiché non è così complessa come Solidity.
- Takamaka permette di costruire smart contract utilizzando Java: puoi dirci di più a riguardo?
Penso che la parte migliore sia essere in grado di utilizzare tutto ciò che hai imparato in anni di programmazione Java. Gli smart contract possono essere programmati utilizzando gli ambienti di sviluppo a cui siamo più abituati, impiegando sistemi di test che conosciamo da anni, con le tipologie e la libreria di supporto che conosciamo da tempo. In altre parole, sei subito produttivo: non devi studiare e familiarizzare con nuovi linguaggi e strumenti, che non aggiungono nulla di nuovo concettualmente ma provocano un ritardo nell’adozione della tecnologia e costi aggiuntivi per le aziende. Da un punto di vista più tecnico, mi piace il fatto che in Java, a differenza di Solidity, un contratto abbia una tipologia e non sia semplicemente un “indirizzo”. E questo è solo un esempio dei tanti vantaggi tecnici: questo linguaggio di programmazione mi aiuta e mi impedisce di commettere errori.
TAKAMAKA ENTRA ALL’ UNIVERSITA’ APRONO LE ISCRIZIONI
- Cosa riserva il futuro a Takamaka e alla tecnologia blockchain nel suo complesso?
Penso che Takamaka si posizionerà tra le principali blockchain, tra quelle che attualmente dominano il mercato. Grazie alle sue caratteristiche potrà essere rapidamente adottato dalle aziende: Takamaka diventerà il modo più semplice, veloce ed economico per introdurre internamente la tecnologia blockchain. Il potenziale della blockchain è ancora tremendamente alto. L’euforia iniziale sembra essersi attenuata, e questo è un bene, perché ora possiamo concentrarci sugli usi reali e sulla reale evoluzione della tecnologia piuttosto che su approccifittizi o speculativi. Credo che saremo stupiti dalla misura in cui la blockchain diventerà parte della nostra vita quotidiana.
La tecnologia Blockchain entra all’università, con un primo corso ad hoc che si terrà a partire dal mese di Marzo 2021 presso UNIVR. Il corso sarà suddiviso in tre moduli di cui:
- BLOCKCHAIN
- ALGORITMO DI CONSENSO
- PROGRAMMAZIONE SmartContract
- ASPETTI ECONOMICI E LEGALI DELLE CRITTOMONETE
Per informazioni, dettagli e iscrizioni, puoi contattare direttamente: fausto.spoto@univr.it.