La figura lavorativa di developer blockchain è tra le più richieste negli ultimi anni. Ecco come diventare uno sviluppatore blockchain.
La creazione di applicazioni decentralizzate, le cosiddette dApp, consiste in una serie di passaggi che richiedono un elevato grado di know-how all’interno del settore della programmazione informatica. La maggior parte delle componenti principali che vanno a formare una blockchain vengono sviluppate utilizzando uno o più tra i principali linguaggi di programmazione, come C, C++, Python o JavaScript.
È proprio per questo motivo che voler creare da zero una propria idea, che rientri nel mondo del gaming decentralizzato o nella vasta DeFi e tutto quello che ne deriva, occorre avere un certo grado di conoscenza nel campo dell’informatica in generale e della blockchain più lo specifico.
Ciò significa, anche banalmente, che per diventare un buon sviluppatore blockchain bisogna innanzitutto sapere come si comportano le diverse tipologie di blockchain e quali sono le caratteristiche principali da dover sfruttare nelle proprie dApp. Ognuna può avere prestazioni migliori sotto diversi aspetti, in base a come è stata pensata e progettata, come la sicurezza, la scalabilità, l’usabilità etc.
Da questo è possibile quindi dedurre che bisogna prima ponderare la scelta della blockchain sulla quale sviluppare la propria dApp, basandosi sia sulle caratteristiche che si vogliono dare a quest’ultima sia alla tipologia di target che si vuole raggiungere. Una premessa importante è che la blockchain deve essere programmabile, cioè deve permettere di “costruire” sopra di essa nuove tipologie di applicazioni attraverso la composizione di smart contract.
Ovvio che, in termini generici, se si vuole raggiungere un bacino di utenti maggiore c’è il bisogno di interfacciarsi con la blockchain di Ethereum, quella più utilizzata tra le altre per vari motivi legati alla sua programmabilità. Infatti, attualmente esistono circa 3630 dApp, considerando anche le blockchain di Tron ed EOS, delle quali il 63,3% è stato sviluppato su quella di Ethereum.
Per questo motivo la cosa migliore da fare è ottenere una buona conoscenza di Solidity, il linguaggio di programmazione utilizzato per scrivere smart contract sulla blockchain di Ethereum, di facile intuizione soprattutto se si ha già esperienza con altri linguaggi informatici.
Per farlo, è possibile rivolgersi al sito di Loom Network, che tra i vari tool di programmazione offre anche un corso completo su come sviluppare una Dapp su Ethereum, partendo dalle basi ed insegnando come scrivere smart contract con Solidity in modo semplice ed efficace.
Il portale apposito si chiama CryptoZombies e al suo interno, oltre alle basi di Solidity suddivise in cinque macro-capitoli, è possibile trovare anche concetti più avanzati legati alle attività di testing e deploying di uno smart contract, fino a fornire informazioni chiave su come far interagire il proprio smart contract con un’interfaccia web, utilizzando la libreria più utilizzata a questo scopo, web3.js. Quelle appena menzionate sono le lezioni che attualmente si trovano ad uno stadio più solido ed organizzato, dal momento in cui sono l’aspetto core di questo corso interattivo che include in aggiunta un’introduzione ai contenuti della blockchain di Libra e di Binance.
Sviluppare un’applicazione decentralizzata quindi non è proprio un “gioco da ragazzi”; c’è bisogno di sviluppare la parte back-end scritta essenzialmente in Solidity, e di quella front-end, ovvero un’interfaccia che permette agli utenti di interagire con gli smart contract e di richiamare le funzioni in essi contenuti. Per fare questo si deve avere una solida esperienza e familiarità con JavaScript, largamente utilizzato anche nelle fasi successive relative al test del contratto ed infine al caricamento in definitivo in blockchain.
Quella del testing è un’operazione fondamentale perché una volta che lo smart contract è entrato a far parte della rete come uno dei tanti nodi, questo è immutabile come il resto delle transazioni e per questo non può essere più modificato. Se invece si vuole apportare un aggiornamento alla propria piattaforma questo dovrà essere caricato nuovamente sulla blockchain come un diverso smart contract; questo passaggio dovrà poi tradursi in uno spostamento della community verso la nuova versione, che dovrà essere incitata a concludere gradualmente l’utilizzo di quella precedente, come è successo con Maker che ha annunciato la chiusura definitiva di SAI con un voto esecutivo il 24 aprile.
Una volta che la fase di testing è conclusa si dovrà passare poi a quella definitiva che racchiude tutte le operazioni necessarie al deploying del contratto su blockchain.
Per queste ultime due fasi sarà necessario rivolgersi ad un ambiente di sviluppo creato appositamente per tutti gli sviluppatori che intendono dare vita alla propria dApp. Quello più completo e più utilizzato in circolazione è la Truffle Suite, in grado di mettere l’utente in diretto collegamento con l’Ethereum Virtual Machine (EVM). Inoltre, è possibile trovare al suo interno anche Ganache, in grado di ricreare un rete locale utile soprattutto per eseguire test, e Drizzle, una raccolta di librerie utilizzate per lo sviluppo del front-end.
D’altra parte; se invece si vuole mirare ad una maggiore interoperabilità per la propria dApp, si può scegliere di caricare il contratto attraverso la piattaforma di Loom Network che rende possibile la compatibilità dell’applicazione non solo con la blockchain di Ethereum, ma anche con quella di Binance e Tron. Loom rende possibile tutto questo grazie alla propria blockchain, Basechain, basata su un protocollo DPoS, sviluppata appositamente per presentare un elevato grado di interoperabilità.
Diventare uno sviluppatore blockchain quindi non è di certo una cosa che si fa da un giorno all’altro, ma è sicuramente un buon investimento per il proprio futuro come potenziale hard skill da inserire nel proprio portfolio di competenze. La richiesta di questa tipologia di sviluppatori è in continua crescita, così come lo è l’espansione del settore blockchain; attualmente uno sviluppatore Solidity può guadagnare in media dagli $80 ai $100 l’ora come freelancer.
The post Come diventare uno sviluppatore blockchain appeared first on The Cryptonomist.