Bitcoin: Una “moneta” democratica

La motivazione principale adottata dai fan per sostenere che il bitcoin diventerà la moneta del futuro è che non è regolamentata da soggetti centrali. E’ un concetto così democratico che piace a tutti: non c’è un organo centrale, il potere va ai cittadini, vincono le leggi di mercato. Piace alla destra, perché rappresenta il  mercato puro, l’estremo capitalismo. Piace alla sinistra, non ci sono banche o poteri forti/lobby creati dal capitalismo che governano la moneta. Piace agli anarchici, non ci sono organi di controllo o di vigilanza.

Il Bitcoin è così democratico che piace veramente a tutti.

A pensarci bene è una miscela esplosiva. Abbiamo impiegato 2000 anni per costruire un sistema di controllo a tutela dei risparmiatori e poi ci buttiamo in un avventura priva di controllo. Un po’ come togliere i limiti di velocità e i freni alla macchina per farla correre più veloce. Certo corre, ma non si ferma. Le regole di oggi non sono perfette, ma i casi come Parmalat, Bond Argentini, MPS, Veneto Banca dovrebbero insegnarci a migliorare i controlli e renderli più efficaci, non a toglierli.  Il crollo di Wall Street del 1929 con il suo strascico di suicidi ci ha insegnato a regolamentare i mercati e da allora le borse sono sempre più stabili. Le regole oltre a creare stabilità, sono un elemento essenziale sia per chi investe sia per tutelare i soggetti più deboli.

Tracciabilità e anonimato, l’accoppiata vincente

Domanda: I bitcoin sono tracciabili? Risposta diplomatica: “Ni”, oppure “dipende da che punto di vista”. Da un punto di vista informatico i bitcoin sono tracciabili, in qualsiasi momento siamo in grado di saper quanti sono i bitcoin presenti in un wallet (il porta-bitcoin) e sapere da quali wallet provengono. Si può ricostruire la catena delle transazioni fino all’origine, il punto in cui sono stati coniati(“minati”). Ogni singola transazione è tracciata, per sempre. Questa è una notizia che piace sicuramente al fisco a agli organi di controllo. Quindi possiamo sapere esattamente chi ha dato dei bitcoin e chi li ha ricevuti? No, perché non sappiano nulla sull’identità del possessore del wallet, né su chi ha eseguito la transazione. Non viene eseguita alcuna verifica sul’identità dei possessori di un wallet. Si tratta di portafogli anonimi e le transazioni sono anonime. Ogni wallet ha un indirizzo, tipo questo: “33GsdQhHYeGvNEFRALfpxhp1bCc5b3nAxJ“, vai a sapere a chi corrisponde. Una transazione è fatta in questo modo:

Transazione 51d1a1723eff95d5dfd89035e6052bbe7958080c4495afa888567a0d268dc378: 

CTSDVyf1usskHbc1psZ9saUYSThnidgTm (2.54116028 BTCProduzione) ___ 33GsdQhHYeGvNEFRALfpxhp1bCc5b3nAxJ – (Speso) 0.21554412 BTC
1JnxTZyWYzxzgZ39rjz6tc2DYPwca5ZRRH – (Speso) 2.32539016 BTC

 

Tracciabile, ma anonima.

Un po’ come i conti svizzeri cifrati che si usavano all’epoca di tangentopoli o i libretti anonimi al portatore. Chiunque può vedere le transazioni eseguite su un wallet, conoscere la provenienza dei bitcoin ed essere certo che i bitcoin siano originali e non dei falsi.

Tutti possiamo coniare bitcoin

Coniare moneta  è il sogno di tutti fin da bambini per diventare ricchi. Il sogno si avvera, tutti possono coniare nuovi bitcoin, svolgendo un attività che si chiama “mining”.  I bitcoin vengono infatti generati come ricompensa per l’attività di “mining”, nome che prende spunto dall’attività in miniera in cui si cercano pepite d’oro.  L’attività di mining è un attività con un forte connotato informatico, la sintetizzo per rendere l’idea:


L’obiettivo dell’attività di mining è la scoperta di nuovi codici che soddisfino i criteri per essere aggiunti alla blockchain. Questi codici sono gli hash  SHA-256 dei blocchi con un numero di ‘0’ iniziali maggiore rispetto al hash del blocco precedente. All’interno del blocco c’è la ricompensa in bitcoin per l’attività svolta.

Ad esempio la generazione del blocco 504200 ha prodotto 17.1736083 bitcoin con il seguente codice hash  0000000000000000004bc1e11888fceed7b905f362ab15ac722006. Sul sito https://blockchain.info/it/ si possono trovare le informazioni di tutti i blocchi e relativi hash. Altre cripto-valute usano criteri diversi.


Se avete capito poco non siete informatici, meglio per voi. (Per gli informatici, so di essere stato superficiale e approssimativo nella descrizione, è voluto). Questo rende però evidente che l’attività di mining è dominio incontrastato degli informatici e di tutta quell’area di competenza denominata FinTech. Possiamo assimilare l’attività di mining alla ricerca di nuovi Numeri Primi. Trovare i primi Numeri Primi è semplice (3, 7, 11, 13, 17,..), pian piano che si va avanti la difficoltà aumenta, il tempo per trovare nuovi numeri aumenta e occorrono strumenti di calcolo più evoluti. La stessa cosa succede con l’attività di mining. La complessità per trovare nuovi codici hash (e blocchi) aumenta  e il numero di bitcoin ricavati per ogni codice diminuisce seguendo una serie geometrica che dimezza il valore ogni 210.000 trovati.

Ora la rivelazione più importante, l’algoritmo per trovare nuovi codici è euristico, casuale, come vincere un biglietto alla lotteria. Un lotteria particolare, ogni volta che c’è una vincita il premio per la vincita successiva diminuisce e il numero di biglietti totali aumenta. I primi che hanno fatto mining hanno vinto molti bitcoin, chi lo fa ora ha una probabilità molto più bassa di vincere e anche i premi sono molto inferiori.

I blocchi sono le casseforti delle transazioni

I blocchi sono i frammenti del database distribuito che storicizza le transazioni e il contenuto dei wallet degli utenti. I codici di cui abbiamo parlato prima sono le “chiavi” dei blocchi.

Sempre prendendo ad esempio il blocco 504200  vediamo che la prima transazione, quella di mining, trasferisce i bitcoin in un wallet, precisamente il wallet con codice: 1CK6KHY6MHgYvmRQ4PAafKYDrg1ejbH1cE .

Produzione di nuovi bitcoin e transazione di "mining"
Produzione di nuovi bitcoin e transazione di “mining”

Guardando i dettagli del wallet possiamo sapere che ha un saldo attivo di 387.68284062 BTC e possiamo vedere tutte le transazioni che hanno portato a quel saldo.

Esempio di transazione bitcoin
Esempio di transazione bitcoin 

Tutto questo è perfettamente tracciabile, ma anonimo.

Il valore futuro fa lievitare quello attuale

Quanto vale un bitcoin? E’ una domanda semplice la cui risposta è nota a tutti i ragazzi che hanno terminato le medie. Un bitcoin vale quanto l’acquirente è disposto a spendere per averlo e il venditore è disposto a cederlo. Fatta questa banale premessa, il punto da capire è perché gli acquirenti oggi siano disposti a spendere cifre sempre maggiori.  I miner spedono sempre di più in corrente e hardware per “minare” nuovi bitcoin, il costo di produzione aumenta costantemente e di conseguenza anche il prezzo minimo a cui i “miner” sono disposti a cedere bitcoin aumenta.

Alcuni beni o servizi non hanno un prezzo legato al costo di produzione o al utilizzo che se ne può fare. Sono tutti i beni o servizi che ci trasmettono emozioni per le quali siamo disposti a pagare cifre non legate ad aspetti razionali. Un opera d’arte, un concerto,  una partita ne sono esempi, trasmettono emozioni. Il senso di unicità, il senso di lusso, di benessere, di pace, di paura, di felicità. I bitcoin oggi trasmettono il senso di ricchezza, una ricchezza a portata di mano. Un po’ come avere il biglietto vincente della lotteria. Se, come ho letto il prezzo salirà da 6.000€ a 25.000€ nei prossimi 4 anni, la fantasia vola a chiunque, è una profezia auto-adempiente.

Eppure sono scettico

Chi è l’ideatore delle criptovalute? E’ un mistero, si sa che ha postato la propria idea su un forum con lo pseudonimo di Satoshi Nakamoto e che l’idea a preso piede. Avrà “minato” anche lui dei bitcoin? Quanti? I primi bitcoin sono stati minati a costo un molto basso. Si è partiti da una ricompensa di 50 bitcoin per blocco e una serie geometrica che dimezza il valore della ricompensa ogni 210.000 blocchi. Il buon Satoshi Nakamoto e chi ha iniziato l’attività ha minato i primi n blocchi ricavando in poco tempo migliaia di bitcoin. Si sa che i bitcoin generati dai primi 9 blocchi non sono stati usati, sono ca 500  bitcoin, si ritiene che siano di proprietà del’ideatore dei bitcoin. Perché è sparito? Perché non è esistito prima? Mi sembra di assistere a un trucco di magia di un prestigiatore. O ai veri falsi di Modigliani.

Nascono costantemente nuove criptovalute perché i primi “pezzi” di ogni criptovaluta vengono “minati” a costi molto bassi. Quando la criptovaluta prende piede il valore aumenta. I primi che ci si dedicano divento ricchi, gli ultimi rimangono col cerino in mano. Ci sono molti aspetti che mi fanno pensare al marketing piramidale (catene di Sant’Antonio) che andavano di moda negli anni ’90. Il marketing piramidale non ha creato valore reale, ma ha ridistribuito la ricchezza, i primi (pochi) sono diventati ricchi a discapito di molti che hanno perso poco ciascuno. Qui il principio è lo stesso, nulla viene creato ma la ricchezza viene semplicemente ridistribuita. Succederà quando l’attività di mining cesserà (la serie geometrica ha un limite) e i possessori di bitcoin inizieranno a liquidare le posizioni.

Ajax e controlli asincroni

Ajax è l’acronimo di “Asynchronous JavaScript and XML”, ossia un meccanismo asincrono basato sull’oggetto HTML XMLHttpRequest inserito nelle specifiche W3C nel 2004 per inviare in modo asincrono richieste al server e ricevere le relative risposte. Inizialmente pensato per informazioni strutturate con il farraginoso XML, si è evoluto per supportare il più leggero e versatile JSON.

L’obiettivo delle richieste asincrone è di consentire all’utente di proseguire con l’attività sulla pagina web mentre il serve elabora le informazioni che via via il client invia al server, come esito dell’elaborazione delle attività svolte dall’utente.

I clienti di posta Gmail, Yahoo, Outlook,… funzionano con questa tecnologia, così come tutte le applicazioni disponibili sul web (es: strumenti office). Il paradigma di programmazione cambia rispetto ai siti web “tradizionali” e si va verso un modello “Rich Client” che per le applicazioni web viene denominato “RIA – Rich Internet Application”. In caso estremo l’applicazione si compone di una “single page application”. Ossia una singola pagina web che contiene tutti i javascript per dare alla pagina il comportamento dinamico, si tratta di fatto di applicazioni client/server realizzate utilizzando i browser come ambiente “runtime” per il client.

Questa piccola premessa perché ho de domande che non trovano risposte, vorrei condividerle per vedere se qualcuno ha una risposta.

1) Perché molti si sforzano di rendere i controlli AJAX sincroni inventandosi throbber, overlay o altri archibugi ce rendono le applicazioni inusabili? A mio avviso non si può rendere asincrono ciò che nasce sincrono e non si può rendere sincrono ciò che nasce asincrono. Ho visto un’applicazione letteralmente resa inusabile da una clessidra che compare a ogni click dell’utente.

2) Perché a distanza di ben 12 anni da quando esistono le potenzialità delle XMLHttpRequest nascono ancora applicazioni web che completamente sincrone. Il sincronismo va bene se il backend è un mainframe (elevata potenza di calcolo senza parallelismo) non se il backend è un sistema distribuito (basse prestazioni a singolo core, elevata capacità di parallelismo). Di recente un collega mi ha parlato di un suo cliente con una procedura di SSO che impiega oltre 55sec per terminare il processo di logon. Mi ha spiegato,che oltre all’autenticazione il sistema deve recuperar le informazioni utente da altri 6 sistemi di cui 3 di terze parti e la fa in modo sincrono, serializzando le richieste. Il dubbio che ci è venuto ma se un sistema “terze parti” non è raggiungibile? Ci siamo guardati.. “Eh va in time-out.” (forse non lo fa ma ci saranno sicuramente problemi)

Se qualcuno ha una risposta a questi due punti mi aiuta a dormire meglio (scherzo dormo bene lo stesso 🙂 ).

Service menu LG 37LF65

Ogni volta mi dimentico la procedura.

Premere 5 sec il bottone ‘menu’ in alto compare la dicitura RGB (che non c’entra nulla con il service menu). Digitare ripetutamente ‘0’.

 

Driver oracle Maven/Grails

Until now everytime i needed to use the Oracle Driver i had to install it manually on my local repository. Now i found a shared repo with the driver artifacts, seems strange but the repo belongs to a church: The Church of Jesus Christ of Latter-day Saints

Maven solution:

 

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.3</version>
</dependency>
... 
  <repositories>
    <repository>
      <id>codelds</id>
      <url>https://code.lds.org/nexus/content/groups/main-repo</url>
    </repository>
  </repositories>

Grails solution:

mavenRepo "https://code.lds.org/nexus/content/groups/main-repo"
build 'com.oracle:ojdbc6:11.2.0.3'

 

TBS driver new try

Sometime I try to make the fuc…. TDB 6022 card working on linux without making the other card out of work.

Yesterday I tried to build the TBS saa716x driver against the newest linux media, after patching a little bit everything compiles fine the remote works but the TBS6922 frontend which is already compiled in the TBS distribution generates a kernel oops.

Today I tried the other way, I entirely removed the CX23885 from the TBS tree and replace it with the one found in the latest media_build tree. The result was worst, I couldn’t even build the driver because the media_tree used by TBS developers is really tooooooo old. Kernel_version.h reports version

#define V4L2_VERSION 196608

which corresponds to a very very very very old media_tree linux-media-2011-05-31.tar.bz2

So for me by now no way to make the new cards using CX23885 working with the TBS 6922 card, so the brand new TBS6922 card remains off.

I’m still hoping to get and answer from TBS developers….

 

WP to LinkedIn Auto Publish Powered By : XYZScripts.com