Questo fine settimana volevo scrivere un semplice Dapp per il web, per vedere se riuscivo a far funzionare l'interfaccia di trasferimento di Dusk, e sono quasi riuscito a far crashare il mio browser Chrome. È completamente diverso dall'esperienza leggera di Railgun, dove bastava richiamare il contratto direttamente su Ethereum per mescolare i token; l'integrazione front-end di Dusk è pesante come un mattone. Ci credi, solo per caricare quel file della Prover Key per la prova a conoscenza zero, l'utente deve scaricare diverse centinaia di megabyte di dati. Questo è un disastro su mobile, ma nei documenti di design di Dusk, sembra essere considerato un costo di sicurezza ovvio.
Stavo fissando i log di overflow della memoria WASM nel console, pensando se questo team di sviluppo avesse mai considerato le limitazioni di banda degli utenti normali. Anche se le commissioni di Gas di Railgun sono esorbitanti, almeno è in esecuzione sulla chain, e l'utente finale ne trae beneficio. Dusk, invece, per realizzare il suo tanto decantato "privacy compliance", ha trasferito i calcoli crittografici più pesanti al browser. Questo approccio di design "client pesante", anche se teoricamente elimina la possibilità di malefatte da parte dei nodi, in pratica, quella sensazione di lag ti fa venire voglia di distruggere il mouse. Ho effettuato una transazione sulla testnet, e solo per generare la prova ci sono voluti quei secondi, con l'uso della CPU che rimaneva sempre al cento per cento, e la ventola di raffreddamento che ronzava; chi non lo sa penserebbe che stavo minerando.
Inoltre, la sua documentazione è scritta in modo estremamente rudimentale; molte spiegazioni dei parametri delle API chiave non corrispondono affatto alle definizioni reali nel codice sorgente, e ho dovuto andare a cercare nella cronologia degli Issue su Github per indovinare il formato corretto dei parametri. Questa rozzezza ingegneristica contrasta fortemente con le formule matematiche precise del suo white paper. Questa dissonanza mi ha fatto capire che Dusk non ha affatto intenzione di far giocare i piccoli investitori del Web3 al momento. Il suo complesso gancio di identità e i requisiti di calcolo locale sono chiaramente destinati a trader istituzionali con terminali dedicati. Per loro, la sicurezza e la conformità sono primarie; per quanto riguarda l'esperienza dell'utente, è tutto secondario. Questo atteggiamento arrogante lo condanna a rimanere per lungo tempo un esperimento nelle mani dei geek, o una rete di regolamento interno per alcuni fondi conformi, e non diventerà mai un'app di massa.