Gitbar logo

Gitbar Italian developer podcast

Conversazioni sullo sviluppo software fatte davanti a una birra.

copertina episodio

Wohpe, letteratura e sviluppo software con Salvatore Sanfilippo

Stagione 3 Episodio 125 Durata 01:41:52

E’ con estremo piacere che questa settimana abbiamo come ospite Salvatore Sanfilippo, creatore di redis e autore di Wohpe il romanzo di fantascienza che racconta la storia di… [no spoiler policy]. Abbiamo parlato di parallelismo tra lo sviluppo software e la letteratura e molto altro in un ora e mezzo di episodio ricco di bold opinions.

Ricordati di iscriverti al gruppo telegram

https://t.me/gitbar

Supportaci su

https://www.gitbar.it/support

Dobbiamo ringraziare Santiago Greco e Daniele Brambilla per averci invitato rispettivamente 5 e 3 birre…. GRAZIE!

Paese dei balocchi

Contatti

@brainrepo su twitter o via mail a info@gitbar.it.

Crediti

Le sigle sono state prodotte da MondoComputazionale
Le musiche da Blan Kytt - RSPN
Sweet Lullaby by Agnese Valmaggia
Monkeys Spinning Monkeys by Kevin MacLeod

Trascrizione

È sembrato stranissimo questa cosa del libro, il fatto che hai mollato comunque quello che facevi prima.

Io avevo sentito un tuo episodio con Simone e con Francesco, ne avevi fatto due podcast in italiano prima di sparire completamente dalle scene e già un po' dall'episodio con Simone si intuiva questa tua scelta o comunque si sentiva che c'era questa...

Non potevo dirlo però i giochi erano già fatti a quel tempo.

Esatto, ma col senno del tuo...

Come puoi immaginare tutto questo ha richiesto una dialettica diciamo sugli termini esatti perché sai, anche perché io me ne sono andato dall'apice, voglio dire, magari sai a volte uno sceglie di ritirarsi quando man mano le cose vanno male, invece quando era tutto un crescendo, tra l'altro siccome per il carattere da certi punti di vista negativo che ho io, ma sono fatto così, facevo in qualche modo coincidere Redis con la mia stessa persona.

Fare un passo indietro se sei una persona specialmente tecnica ha un significato, fare un passo indietro se hai questa tendenza a incarnare il progetto ne ha un altro.

Sì esatto, infatti una delle domande che ti voglio fare dopo è che per me è molto importante sia nell'ottica dello scrittore che nell'ottica dell'ingegnere e dello sviluppatore perché ci sono delle sfumature interessanti anche dal punto di vista etico e filosofico nel termine più largo del termine.

Bene e benvenuti su Gitbar, nuova settimana e nuovo episodio qua nel nostro bare degli sviluppatori.

Oggi abbiamo un episodio un po' atipico, molto strano perché di solito ci occupiamo di questioni tecniche anche se andando a scorrere i nostri episodi potete trovare episodi un po' strani, confrati, chi non li avesse recuperati butti un occhio sul nostro storico e abbiamo un ospite importante che traccia una linea di connessione tra due mondi che sembrano non toccarsi ma che in qualche modo possono essere visti come specchio l'uno dell'altro in un certo qual modo.

Prima di presentarlo il mio ruolo, ahimè rompi balle, è quello di ricordarvi i nostri contatti, info che ho sulla gitbar.it o etbrain.repo in modi canonici, insomma quelli che non usa più nessuno.

Il modo più importante, Luca qual è? Ci sono anch'io e il mio compito è quello di ricordarvi il gruppo telegram che si trova appunto in Gitbar podcast, basta cercarlo appena vedete un'icona gialla con ciascun sottogitbar è quello lì, potete entrare e vi accoglieremo con una prima birra gratis e poi si vede.

Anche perché la birra non può mancare, come potete vedere io ho già dato mezzo fondo al bicchiere ma a questo punto possiamo iniziare.

Abbiamo con noi un ospite che non ha bisogno di presentazioni e quindi non lo presentiamo, scherzo.

Abbiamo con noi Salvatore Sanfilippo, ciao Salvatore.

Ciao e grazie per l'invito.

C'era un famoso personaggio che, famoso personaggio non che collega, bravissimo, una persona che stimo tantissimo, che disse di uno dei tuoi prodotti, è il motivo per cui mi pagano lo stipendio o qualcosa del genere.

Quindi lo ricordiamo per chi non lo sapesse, Salvatore possiamo definirti autore o padre di Redis ma non solo.

Ci può stare secondo me.

Tu lo sai no? Ci può stare perché come lo sforzo non è stato solo ingegneristico ma anche diciamo non lo so di trovare magari una visione nuova allora questa forse l'unica cosa in cui non mi riconosco di l'aspetto della paternità è nella facilità che ho avuto poi a distaccarmene.

Forse un padre così sarebbe un po' di buono.

Però per il processo di geneti del progetto ci sta che sono il papà di Redis.

Fa sei anni il papà di un bellissimo Anzò che è uscito da pochissimo.

Quindi è uscito il 15 luglio.

Noi l'abbiamo già preordinato su Amazon.

Dobbiamo dirlo da buoni fan in Finchia.

Tu l'hai preordinato io l'ho già comprato a letto.

Ah l'hai letto? Grazie, grande.

Io ho iniziato le ferie oggi quindi.

Domanda perché un romanzo? Un romanzo perché probabilmente allora ci sono due passaggi per definire la necessità di scrivere un romanzo.

La prima è il fatto che l'arte, la letteratura fino a cento anni fa ma anche di meno era considerata in assoluto l'arte più alta.

Aveva la prerogativa di essere proprio...

il punto d'arrivo umano era superiore alle arti visive, era superiore alla musica.

Poi questa cosa è mutata.

Ma credo che rimanga ancora una delle cose più complicate da fare.

Il romanzo all'interno della letteratura è l'oggetto letterario che ha una complessità, una macchina difficile da mettere in piedi.

Per cui se uno si vuole misurare con tutto quello che è uno scrivere, scrivere un romanzo ritengo sia ancora la sfida maggiore.

Ti faccio questa domanda perché è un po' strana.

Qualche tempo fa mi sono trovato da solo a scrivere un software il cui dominio era vastissimo, ok? E anche abbastanza complesso.

E ho avuto la percezione di andare a costruire un mondo dove entravano in giocatori che avevano le loro particolarità, le loro proprietà, chiamiamole così, che interagivano e agivano in questo mondo.

Nel software quindi mi sono trovato a portare quel modello che possiamo inquadrarlo come di natura quasi letteraria, no? Secondo te esiste questo parallelismo anche quando si realizza un software dove il dominio è completamente diverso come può essere Redis.

E invece in cosa questi due mondi si allontanano? Io credo che il parallelo che fai tu è assolutamente sensato.

Seppur la differenza per esempio, gli ultimi due sistemi complessi a cui ho lavorato sono Redis e poi Disque, prima di farmi da parte dal mondo della programmazione, visto che moltissimi usavano Redis per fare code di messaggi, avevo provato a progettare un sistema sempre in memory però direttamente replicato, diciamo multi master sin dall'inizio, che facesse la parte che faceva Redis quando usato per code di messaggi in maniera più verticale e più efficace.

Questo sistema si chiamava Disque.

I due sistemi hanno una differenza fondamentale nel modo in cui sono stati progettati.

Redis è stato progettato per accumulazione, partendo da un core molto piccolo, poi ho aggiunto delle cose.

Disque invece è stato progettato come un romanzo, in una maniera più compiuta, con un sforzo creativo che dall'inizio doveva poi condurre al prodotto, sia esso artistico o software, nella sua versione più o meno finale.

Poi essendo Disque un software si poteva ancora intervenire, però siccome era un'architettura multi master di una certa complessità, tra l'altro con un livello di resistenza ai fallimenti molto alto, per cui c'era la replicazione automatica, i nodi ce la mettevano tutta per far sì che alla fine i worker ricevessero quel messaggio, gli acknowledge di processing di quel messaggio potevano essere veicolati ad altri nodi, quando gli owner di quei job tornavano su gli veniva speditata la notifica, quindi c'era anche un tentativo di best effort, di non ripetizione dei task molto alto.

Quella roba lì non si poteva fare per somme di feature, non si poteva avere una crescita organica, bisognava progettarla tutta da zero.

E la mia sensazione quando ho scritto WAP e quando ho progettato Disque è stata molto simile.

A parte il fatto che è uno sforzo sfibrante, sia nell'uno che nell'altro caso, lo sforzo è tale che alla fine risulti svuotato delle tue energie, perché quando fai una cosa cerchi di farla al massimo delle tue energie, per cui tocchi i tuoi limiti.

Ciò costringe tanto per iniziare un bagno di umiltà, perché dice ok, io di Disque dicevo, io mi ricordo a malapena tutte le parti per non fare errori.

Tra l'altro sono stato mesi a scriverlo senza convilare, perché non si poteva convilare, perché mancavano pezzi.

Quindi a un certo punto tu inizi a pensare, così come la creazione di un'opera letteraria, ma è un delirio o questa cosa alla fine funziona davvero? A un certo punto riuscivo davvero a metterla in piedi.

E questa sensazione che tu hai riportato qua mi sembra simile in qualche modo, nel modo in cui l'hai espressa mi sono sentito io durante la realizzazione di Disque.

E questo parallelismo c'è sicuramente, perché anche un romanzo, così come un software di una certa complessità, sono due meccanismi complicati.

Poi c'è un'altra similitudine, che è quella stilistica.

Ci sono diversi tipi di programmatori, quelli che scrivono il software perché funzioni e quelli a cui interessa più come sono fatti dentro e che non cosa facciano davvero.

Per me sicuramente è importantissimo anche la struttura interna, cioè a me deve piacere quello che ho scritto, a prescindere dal modo in cui funziona, anzi, addirittura ed è un modo in cui mi sono fatto odiare negli anni.

A volte la forma aveva in qualche modo l'egemonia sulla funzione.

Mi dicevano, ma facciamo questa cosa qui perché sarebbe utile in questo e in questo e in questo ambiente, non lo so, tipo per esempio SSL.

E io dicevo, no, usa il proxy perché ciò in qualche modo rovinerebbe il progetto di Redis perché siccome le socket sono una cosa lineare in cui spedisci un byte, ricevi un byte, invece per come funziona il buffering di SSL questa cosa viene completamente violata, facciamo le cose a cipolla, tu quindi hai una core che parla solo in chiaro, poi ci butti sopra, però ciò necessita di più CPU.

E quindi dicevano, dai, ma facciamola assolutamente, mi sono rifiutato fino a quando ho potuto.

Quindi per me la bellezza del progetto è fondamentale.

E c'è sicuramente, da questo punto di vista, la letteratura forse può essere una contaminazione interessante nel software, perché la forma è una parte importantissima.

Invece per quanto riguarda le differenze, una differenza fondamentale tra letteratura e software è che il merito nel software è molto più chiaro, cioè se tu crei un sistema significativo, prima o poi ti viene riconosciuto.

Se tu sei uno di quei software developer, una di quelle software developer che stanno completamente muti e non lo dicono nessuno, allora non è che ti vengano proprio a buttare un fumogeno dentro la camera così che tu esca e ti dicono, ma che hai fatto? Se un po' ti riesci, non voglio usare il termine pubblicizzarti, ma raccontarti, se ti racconti hai fatto qualcosa di significativo o qualcosa di altro.

Invece la letteratura è una giungla nella quale tutti cercano di emergere, non è chiaro neanche a te che fai le cose se hanno valore o meno, perché pensi, ma ho fatto una cagata totale o questa cosa invece è decente? Perché non c'è un metro di giudizio oggettivo, non risolvi un problema.

Poi tra l'altro, non lo so, quello che dovrebbe essere il metro, per esempio i premi letterari sono delle cose fatte a tavolino in cui contano gli agganci.

Quindi non hai riferimenti, uno che parte dal mondo...

Inoltre, un'altra cosa interessante è che mentre il software ha una sovraesposizione alla nostra società, che se tu fai una cagatella carina tutti vengono a dire, ah sì dai viene la mia conferenza, partite, andiamo a prenderci una birra, se scrivi non ti caga nessuno di strisce.

Cioè è un'attività che ormai nella società moderna viene considerata poco interessante.

Al punto che ieri Paul Graham, che voi sicuramente conoscete, quello di Y Combinator, ha scritto un tweet che un po' mi ha sconvolto.

Diceva, eh ma la gente mi cerca sempre buoni scrittori, lui penso che si riferisce anche a dei scrittori tecnici o che devono comunicare le start-up, e non li trova mai, ma il motivo per cui non li trova è che per essere un buon scrittore devi essere un buon pensatore.

Cioè questo presuppone alla Paul Graham un appiattamento della realtà brutale.

Cioè pensare che la scrittura è come dire, per essere un buon programmatore basta essere un buon pensatore.

Ma veramente no, cioè prima sei un buon pensatore, ti fai per dieci anni il culo studiando e specialmente scrivendo un botto di software, e poi alla fine quando sei davanti al terminale, invece di fare la prima cosa che ti viene in mente, che è una cacata, grazie a tutte le vite che hai vissuto prima da software developer, diciamo vabbè, questa cosa non funziona, questa no, questa no, e per esclusione diciamo vabbè facciamo tanto per iniziare la cosa più facile che funziona che se ne risuonano è questa.

E allora c'è questo appiattimento qua diciamo.

Guarda hai tirato fuori Paul Graham, e in realtà qua mi hai tipo stimolato una domanda che è da un po' che ci penso, ne parlavo con un amico anche poco fa.

Oggi viviamo in un mare magnum di informazioni, anche in un mare magnum di romanzi, di letterature, cioè veramente vastissima, si produce tantissimo anche dal punto di vista letterario, e questa cosa un po' genera una sorta di smarrimento nel cosa scegliere.

Vedi che si sta andando nella stessa direzione anche col software o no? Nel senso, chiunque può bene o male scrivere software, oggi poi con i tool no code qualunque persona è in grado davvero di tirare una roba che faccia delle robine da dominio da due soldi, però c'è funzione della...

In qualche modo può generare lo smarrimento e se sì, dal tuo punto di vista, abbiamo qualche chance di orientarci in questo mare magnum? Io sono convinto che l'informatica sia in una fase tragica della sua storia, proprio per le cose che dici tu.

L'informatica ha smarrito completamente se stessa, perché l'elemento cardine che dovrebbe essere la riduzione della complessità invece vede nel mondo in cui viviamo attualmente un'esplosione della complessità.

La cosa più grave è che questa complessità maggiore, che per tanto tempo c'è stato un aumento della complessità nel software per fare delle cose che prima non si potevano fare.

Non è pensabile che Windows 95 girasse con gli stessi layer dello ZX Spectrum, cioè con la ROM, quindi si doveva andare verso una complessità, però prima la complessità era una complessità che abilitava...

era un prezzo da pagare, ma abilitava qualcosa.

Se invece ci pensate, sostanzialmente Facebook, 15 anni fa, era la stessa cosa di ora, scrivi il post, funzionava con una tecnologia dieci volte più semplice, ora ha una quantità enorme di layer ed è la stessa roba di prima.

Quindi praticamente questo artificio qua è un artificio di tipo industriale che non ha prodotto in realtà una miglioria.

Poi le cose più sconvolgenti che abbiamo visto in realtà sorgere negli ultimi anni sono dovute ad altro, sono dovute alle reti neurali, ai nuovi protocolli che hanno poi fatto sorgere Internet, alle capacità dei dispositivi mobile e così via.

Però ecco, l'informatica ha un po' perso se stessa.

Ciò si vede anche in queste lotte per i linguaggi di programmazione, cioè per un programmatore il linguaggio di programmazione dovrebbe essere una cosa quasi irrilevante.

È come se io voglio scrivere grande letteratura, se la scrivo in inglese, la scrivo in italiano o la scrivo in latino, posso scrivere grande letteratura.

Certo, ci sono diversi strumenti, uno deve usare quelli che vuole utilizzare, però è così tanto più importante come ho scritto il programma.

Le logiche che usa, qual è la separazione che c'è tra i moduli, che strutture dati sto usando nel mio programma, queste sono le cose interessanti.

Poi se ho scritto in Ruby, in Python, in Rust, in C, mi interessa fino a un certo punto.

Quando è irrilevante la conversazione sul software in questo momento si capisce pure dalle guerre di religione sui linguaggi.

Poi secondo me il sintomo di questa decadenza c'è nel frontend con le tante declinazioni delle librerie JavaScript sempre più complesse, che per fare una fesseria ti tiri giù 2000 dipendenze e invece di scrivere una funzione di due righe fai delle cose complicate.

E nel backend con Rust, che per la memory safety allontana la programmazione dalla sua sostanza che è quella che risolve il problema non di litigare col compilatore.

Quindi io vedo questo dramma ovunque.

Questa cosa mi è successa negli anni 90 con la sicurezza informatica.

Io all'inizio sono nato come uno sviluppatore però nell'ambito della sicurezza.

Ho lavorato tanto nella sicurezza, ho fatto dei tool sulla sicurezza.

Poi alla fine degli anni 90 ho detto ok, qua ci siamo persi, ormai praticamente la sicurezza è un prodotto da vendere, cioè non gliene frega niente a nessuno poi veramente della sicurezza, più della ricerca.

E mi sono allontanato e sono passato a fare altro.

E ora sto vedendo che la programmazione è nello stesso, nella stessa crisi culturale e qua bisogna resistere.

Ci vuole che così come, non lo so, i futuristi, un gruppo di programmatori dica dobbiamo recuperare qual è la sostanza della programmazione al di là di tutto il rumore, di tutti gli interessi economici.

Sai una cosa, voglio ricollegarmi al libro perché secondo me qua è il punto.

Io su questa cosa, gli ascoltatori e Luca lo sa, rompo le balle a livelli imperiali, nel senso che oggi lo sviluppatore sta diventando una sorta di manovale e questa cosa può essere accentuata, amplificata anche dalla presenza dell'intelligenza artificiale.

Nel tuo libro c'è l'intelligenza artificiale, racconti dell'intelligenza artificiale forte e dello sviluppatore.

Questo aggiungere layer di complessità può allontanare il programmatore dal suo vero ruolo, lo sviluppatore dal suo vero ruolo, risolvere il problema.

Relegandolo a semplice artigianale, semplice manovale, neanche muratore perché il muratore un po' di carico cognitivo e di capacità e di knowledge ce l'ha.

Spogliandolo di questa capacità, di questo ruolo e delegando questo ruolo all'intelligenza artificiale, a tutto quel mondo, a lui rimane collegare i pezzi di un puzzle già fatto, con un disegno già fatto.

Quanto di questa visione un po' distopica ma 100% reale stiamo vivendo e quanto hai messo nel tuo libro? Perché questa è una parte di messaggio che ho capito dalla tua opera.

Io credo che siamo alla catena di montaggio di molti software developer.

Infatti consiglio a tutti di spostarsi sempre su ambiti della programmazione che attualmente non sono automatizzabili ma richiedono uno sforzo creativo.

Ora, parliamoci chiaro, il nostro lavoro è un lavoro logorante, perché fare il programmatore o la programmatrice è logorante, è pesante, stai seduto, hai responsabilità, scadenze e così via.

Fino a quando c'è la parte creativa vale la pena di farlo.

E' anche vero che è molto meno logorante.

Ora, diciamo che sei nella catena di montaggio, fai delle cose meno di responsabilità, più semplici di sforzi di meno.

Però così secondo me non ha più il fascino che aveva prima questa professione qua.

Perché sono convinto di una cosa, che la programmazione, cose come questi software di completion che usano l'intelligenza artificiale per guidarti, che scrivono mezza funzione, si è visto che erano più impressionanti che utili.

Sono di una qualche utilità, specialmente perché la programmazione si è evoluta verso strutture semantiche inutilmente complesse, perché le puoi replicare con dei template, quindi boilerplate a bestia, quindi questo te lo genera da solo.

Però mi pare che il fatto che questi strumenti siano utili è più che altro la spia di quando è diventata inutilmente arzigogolata la programmazione moderna.

Quello a cui si doveva mirare è che, per esempio, perché io quando apro una socket TCP in C devo scrivere 10 righe di programma e quindi ho bisogno di qualcuno che o di andarmi a copiare dall'altro file che ho fatto l'anno scorso o ho bisogno di un completion intelligente che mi spara il codice.

Il punto era arrivare nel 2021 che tu scrivi TCP socket aperta parentesi, l'indirizzo di TCP e poi se vuoi dare delle opzioni a quella socket particolare aggiungi roba, ma le cose facili devono essere facili e le cose difficili difficili, però c'è un fallimento a questo punto di vista.

Io credo comunque che ci renderemo conto che fino a quando le reti neurali non arrivano alla general intelligence non se ne tirerà fuori una capacità proprio programmatoria, quindi i programmatori che fanno in questo momento cose facili, form, bottoni, chiamate al back-end, carichi il contenuto e lo spari, quelli sono destinati a rimanere o disoccupati o essere pagati due lire per mettere giusto le cose insieme che fa la macchina, perché la macchina può automatizzare quella parte là, perché non c'è niente di creazione, di intelletto umano, non c'è problem solving.

Invece se uno se ne va a fare, non lo so, firmware per sistemi embedded o se vai a progettare un sistema distribuito che deve fare cose di messaggi come disc o chi per lui in un provider cloud, e là non ti possono ringhiazzare, quindi secondo me in questo momento ci vuole la cognizione che il periodo è questo e quindi i programmatori devono virare verso quelli che riescono, quelli più bravi, devono virare dove c'è maggiore complessità.

Questa è la mia impressione, per eludere questo destino che altrimenti tu prefiguri.

Quindi è un po' come in un periodo dove la tendenza è quasi, uso una parola fortissima, forse sono esagerato, la percezione è quasi di un medioevo, tu lo sai c'era un periodo di espansione con la civiltà romana, poi c'è stato un medioevo che è stato un po' cupo, un po' statico in realtà, il medioevo comunque le sue cose le ha tirate fuori e quindi serve un rinascimento, un riappropriarsi del pensiero, riappropriarsi della complessità in quanto mi fermo ci ragiono.

E questo mi è sembrato di percepire che era un messaggio che tu volevi passare col tuo romanzo, giusto? Allora, sulla programmazione non c'è tanto di programmazione ma di più di intelligenza artificiale.

Il punto è che io considero le reti neurali e la programmazione due cose separate.

C'è qualche spunto sulla programmazione, ad esempio già il fatto che nel romanzo ci siano programmatori che scrivono codice vuol dire che io non credo che le reti neurali per come sono descritte, con i limiti con cui sono descritte nel romanzo, non credo che possano soppiantare gli esseri umani nella scrittura di codice di un certo livello.

Quindi qualcuno che scrive ancora codice nel 2090 di UOP esiste ancora.

E questa è una notizia ottimistica, in qualche modo credere che la nostra professione non è destinata ad essere soppiantata in breve tempo.

D'altra parte però è anche vero che le reti neurali si sono mostrate più capaci di rimpiazzare le professioni intellettuali che quelle fisiche.

Tutti, 40 anni fa, pensavamo che la prima cosa che succederà con l'uro-robotica e l'intelligenza artificiale è che il lavoro primario sarà surclassato.

Quindi invece praticamente di avere il muratore, cioè il robot che mi fa la casa.

Invece la prima cosa che è stata soppiantata, se sono stati gli illustratori con Dalli, secondo me è la prima rete neurale che fa saltare tanti lavori intellettuali.

Credo che la prossima sarà le reti neurali che gestiscono i problemi, le controversie legali, perché sono pure delle cose facilmente incastonabili in dati e soluzioni.

La scrittura è anche a rischio, i romanzi di genere, la giallistica, la fantascienza, che non contengono elementi di ragionamento grandemente introspettivi, ma sono cose da leggere in due giorni, giusto per passare il tempo.

Mentre invece i muratori, quelli che servono al bar, infatti in WOP le uniche professioni che sono veramente richieste sono rimasti questi lavoratori.

Quindi c'è un capovolgimento di quello che ci aspettavamo.

Ma il punto del romanzo sicuramente è l'intelligenza artificiale, che non è la programmazione, perché la programmazione è un algoritmo spiegabile, l'intelligenza artificiale è il training di una rete neurale che non sappiamo come funziona, perché c'è anche questo problema in mezzo, cioè noi sappiamo fare il training delle reti neurali, però come funzionano non lo sappiamo.

Quindi al centro c'è la questione dell'intelligenza artificiale e poi alla fine, come in tutti i romanzi, finisce per esserci l'elemento di struggle umano, cioè ogni essere umano o i protagonisti del romanzo cercano di capire la loro posizione all'interno del mondo, rispetto a quello che vogliono fare nella vita, a loro affetti, a loro relazioni, eccetera.

Io so che Luca ha una domanda sul romanzo perché ne parlavamo prima, giusto Luca? Sì giusto, alcune domande che mi venivano in mente mentre leggevo.

La prima, forse un po' banale, però già che stiamo parlando del proprio posto nel mondo, è che ho notato che mancano, in tutta l'evoluzione della storia, le big tech di oggi, Google o Apple o quelli che sono.

Mi è venuta la curiosità, la domanda, di capire se c'era qualche ragione particolare oppure semplicemente per creare un mondo abbastanza lontano per non soffrire di recentismo o di essere inquinato dai fatti presenti.

Sì, come dici tu in questa seconda battuta, si dà la sensazione che queste realtà esistono ancora nell'incipit, quando si vede che i centri di calcolo usati erano delle grandi aziende che si erano messe tutti assieme.

Però poi metterle al centro, ci sono due grandi aziende che sono messe al centro della narrazione, una è la Sigmatis, che è un'azienda che potrebbe essere una delle evoluzioni di un'azienda attuale, non la potevo chiamare come si chiama ora, però potrebbe essere l'incarnazione di uno dei grandi colossi, e l'altra è l'Astron, dove si fanno i veicoli autonomi.

Il motivo per cui non c'è un chiaro riferimento alle aziende attuali è che nell'informatica c'è stata una costante, che i colossi del passato finiscono sempre per essere fagocitati da piccole start-up che poi diventano i nuovi colossi.

Credo che questa cosa non finirà di essere così come è stata, che a parte rare eccezioni, in particolare la Microsoft ha una longevità poco comune nel mondo del software, ma se uno pensa anche a vent'anni fa, ti vengono in mente nomi da Yahoo, Adalta Vista, così via, che poi sono scomparsi completamente.

Però ecco, comunque esiste ancora la big picture, non volevo però che rubasse la scena ai programmatori, il punto è che io credo che noi programmatori siamo dienticati da tutti, perché se non è un hacker uno dell'informatico, le serie TV se ne fottono, la letteratura non ci crede, gli individui meno interessanti, tant'è che tra l'altro il letterato, se non è addentro alle questioni tecnologiche, è proprio la persona che scambia quello che progetta sistemi complicati con quello che gli aggiusta il computer, quindi è un mondo lontanissimo.

Allora io volevo che questo romanzo avesse al centro gli sviluppatori e le loro vicissitudini umane, al di là della...

Un po' di terminalista metterme calico.

Niente, poi invece il secondo spero di non...

Vabbè non faccio spoiler, quindi non dovrebbe essere...

No, ti prego.

No, no, no, no.

Però...

Che ho pennelità con le ferie e devo leggerlo, quindi se mi fai spoiler vengo là! No, no, no, non è uno spoiler, è soltanto una piccola scena.

C'è un capitolo in cui la protagonista, o il protagonista, no, era la protagonista, ricordava di una gita al museo dell'informatica dei tempi, cioè nel museo del futuro che mostrava i nostri tempi, e hai diciamo relegato i computer quantistici alla...

Come appunto pezzi da museo descrivendoli come il bicolo cieco dell'informatica.

Ovviamente potevi benissimo metterli, tanto in un certo senso non toglieva o non aggiungeva nulla alla storia, credo.

Quindi mi chiedevo se la pensi veramente così oppure è stata una...

Allora, io non ho le competenze specifiche per capire se il quantum computing effettivamente avrà un ruolo fondamentale o no in futuro.

Da quello che ho letto, ho letto abbastanza, vedo che i fisici sono piuttosto divisi sulle sorti e c'è una quantità di hype e fuffa che forse si trova solo nella stessa quantità nelle criptovalute e nell'omeopatia.

Allora, la mia sensazione di massima è che questa storia, tutta sta storia qua, rischia di finire...

Un altro motivo è il seguente, siccome praticamente andare a inventare un universo in cui i computer quantistici avessero un ruolo fondamentale era più macchinoso e a me non mi interessava tanto fare previsioni tecnologiche in questo libro, mi interessava capire con l'intelligenza artificiale al di là di...

Tra l'altro infatti le reti neurali con i computer quantistici hanno poco a che spartire tecnologicamente, perché non è che risolvono l'uno l'altro e viceversa.

Però volevo lanciare un po' questo messaggio che a volte le tecnologie che ci vengono in qualche modo spacciate come il next big thing rischiano di essere una fuffa veramente.

Magari il quantum computing sarà utile in alcuni settori specifici, magari finirà per rivoluzione alla criptografia e cose del genere, però ecco finora non c'è proporzionalità tra quando se n'è parlato e quante volte ci hanno detto non solo che fosse una possibilità fertile ma che fosse già disponibile, perché ogni volta c'è un breakthrough che domani si possono fare le cose, però non succede mai, ormai da vent'anni che lo dicono.

Ora magari su questa cosa non so come andrà a finire, però ciò è un modo di comunicare l'informatica di frontiera che credo sia diventato ormai un vizio, far percepire alle persone che è tutto un divenire.

Paradossalmente quello che invece sta cambiando davvero le cose, che è l'intelligenza artificiale, ha avuto un avvio in sordina dopo gli anni 70, negli anni 90, su questa cosa non si va da nessuna parte.

Invece poi i pochi che ci hanno creduto, tra l'altro secondo me è molto interessante che chi ci ha creduto sono stati poi quelli in Europa, non a caso gli ultimi due premiati con la massima onorificenza informatica sono stati Hinton e LeCun, che tra l'altro sono due toponimi che ci sono nel romanzo.

Uno è francese, uno inglese.

Perché questa è la ricerca di base, anche nelle cose che sembrano un vigolo cieco tu invece dici andiamo a vedere fino in fondo che c'è.

Quindi questa cosa qua si è rivelata invece una trasformazione fondamentale.

E ancora comunque non è penetrata nella società in maniera sufficiente, cioè i giornali, i media non rendono ancora l'idea di quali sono le trasformazioni sociali che potrebbero venire a causa di questa rivoluzione qua.

Altre cose invece vengono pubblicizzate di più.

Una domanda.

Nel romanzo parli della messa al bando dell'intelligenza artificiale forte e quindi facendo percepire una questione etica di fondo.

Qualche episodio fa abbiamo parlato con padre Paolo Benanti di etica dell'intelligenza artificiale.

A che punto tu dal tuo punto di vista pensi che siamo arrivati? Cioè dobbiamo parlarne di più e se sì in quale modo? Nel romanzo si parla molto di etica dell'intelligenza artificiale ma il motivo del bando è stato di sicurezza.

Il punto è che quando le reti neurali rischiano davvero di diventare coscienti, lì si può non un problema di sicurezza per la specie.

Allora secondo me oggi se ne dovrebbe parlare nei termini di capire quali sono le cose che ci devono fare in futuro, perché ancora non siamo in questa fase, ma nessuno sa quanto è distante questa fase.

Perché non è chiaro se basterà una rete neurale più grande o se servirà a cambiare l'architettura, ma prima o poi ci possiamo trovare.

Una cosa è certa, la stessa ricerca di una performance maggiore da parte delle reti neurali è quella che per sbaglio ci può condurre alle reti autocoscienti.

Perché più cerchi di far fare a questo strumento, più rischi che senza farlo apposta come sottoprodotto delle sue migliorate capacità ci sia anche la self-awareness, la capacità di sentirsi un individuo.

Allora quando questo succede, se sbagliamo il tiro magari ci estinguiamo.

Ora l'aggiornamento che si deve fare è quali sono i protocolli che devono fare capire nei centri di ricerca e sperimentazione che qualcosa non va, e di spegnere tutto e dire forse è oltre questo livello, se non capiamo cosa succede esattamente non possiamo andare più.

Quindi allestire ora le cose che eviteranno poi di dire ora è troppo tardi.

Perché se una rete neurale si dimostrasse maligna rispetto al genere umano, o quantomeno soltanto seguendo l'impulso di autoconservazione che è proprio della vita, inizia a duplicarsi, fa una versione ancora migliorata di se stessa, scappa fuori dal controllo, e poi che si fa? Le avvisaglie potrebbero essere veramente piccole e bisogna coglierle in tempo.

Chiaro, chiarissimo.

A questo punto un'altra delle mie domande da segmentali, quindi perdonaci Salvatore, se fossi là ti stapperei l'ennesima birra perché questi discorsi si devono necessariamente fare davanti a una birra.

Pensavo a una cosa l'altro giorno parlando con un amico che la vedevo, sai io da sviluppatore da ingegnere ho quel punto di vista, quindi rimarco queste cose dalla mia prospettiva.

Quello che percepisco giorno dopo giorno è che c'è dal nostro punto di vista, ma possiamo ampliare il discorso anche mettendo in mezzo molti ricercatori, una visione del micro, del punto che stiamo andando a studiare, che sia l'algoritmo di non lo so di qualcosa piuttosto che un certo studio su un modello di machine learning, piuttosto che lo sviluppo di un software.

Spesso ci concentriamo sul micro e perdiamo di vista il macro, quindi l'impatto che abbiamo nella società.

Una parte di questa perdita di vista e quindi anche di deresponsabilizzazione viene dai layer di complessità come detto prima, che abbiamo accumulato uno sopra l'altro e che quasi fungono da elemento di distrazione, perché siamo concentrati su quella complessità e invece magari, Cribio stiamo facendo la bomba atomica, non lo vedo molto lontana la cosa, potrei mettermi il cappello di stagnolo in testa in questo momento, come qualche mio amico mi dice, però non la vedo molto lontana la cosa.

Quindi tu dal tuo punto di vista cosa pensi di questa deresponsabilizzazione? Credo che sia un tema decisivo dell'informatica, perché in questo momento noi come programmatori stiamo dimostrando di non avere una coscienza di classe.

Sostanzialmente il programmatore medio, non dico noi tre, ma il programmatore medio ormai va a lavorare per la società che lo paga di più o dove ci sono progetti nel micro più interessanti dove crede che può crescere di più.

Cosa vuole raggiungere effettivamente attraverso la sua attività tecnologica? Non sembra quasi mai essere il punto.

Ecco per esempio a me fa impressione una cosa, Luca l'ha già letto e forse potrà rivedere questa cosa che dico e spero che la vedrai pure tu.

C'è una sottile critica in WAP al fatto che presenta un futuro in cui le cose un po' funzionano tecnologicamente, tutto è più facile, poche interazioni software che ci sono, funzionano davvero.

Tanto per iniziare ci sono ancora le tastiere, la gente scrive il software sulle tastiere, quindi non c'è questa idea che tutto si tecnologizzerà dal punto di vista di interfacce vocali e così via.

E le poche cose, per esempio all'inizio quindi non spoilerò niente, uno deve chiamare un taxi, tocca il cellulare e dice taxi.

Dovrebbe essere così.

Invece spesso andiamo a lavorare, magari anche per aziende grandi.

Pensiamo di star facendo la storia, poi tu parli con l'assistente Google e non capisce un cazzo sto coso qua.

Cioè che le avventure grafiche degli anni 80, quelle con le frasi hardcoded, ti capivano di più dell'assistenza Google.

Tu dici aspetta, qua c'è la più grande società del mondo che sta snocciolando dati e li sta processando al fine di fare l'assistente che non riesce a capire.

Ora ultimamente gli dico timer 10 minuti, quello mi scrive timer 10 minuti quindi mi ha capito e poi mi risponde tipo vuoi un timer di 15 minuti? E io dico ora o butto il cellulare e gli do fuoco.

Ma che sta succedendo? Perché non funziona niente più? Oggi provavo a fare, non mi ricordo, le applicazioni quelle più blasonate.

Stavo giocando con Dali e le immagini andavano una sull'altra.

Ero su Facebook e mi si bloccava.

Cioè non funziona niente.

Allora se proprio non vogliamo avere una concezione etica di quello che il nostro lavoro comporta, cioè se io magari lavoro a Instagram potrei o non potrei chiedermi ma Instagram è o no per le nuove generazioni uno strumento sano, un modo di comunicare sano? Forse dovrei andare a lavorare magari per una startup in cui la gente scrive, tipo Twitter per esempio, almeno scrivo un tweet, c'è più contenuto, è un modello sociale.

Allora lasciamo stare per un attimo questo layer che invece ci dovrebbe pure essere secondo me.

Ma almeno responsabilizzarsi rispetto a quello che è il prodotto che stai cercando di fare.

Cioè quanto meno le cose devono essere, per quello che uno intende che siano, funzionanti.

Cioè non è normale che i colossi dell'informatica, le banche più grandi abbiano tutte applicazioni che sono inutilizzabili.

L'altro giorno dicevo ma com'è possibile che se seleziono nella text area di Facebook una frase e cangello subito faccio backspace, non va.

Dopo 2000 tweet andare a cercare dentro il sorgente, alla fine è una cosa di React che riscrive il modo in cui funziona la text area e praticamente ha bisogno, dopo che ho selezionato, di qualche millisecondo per capire che ho selezionato quella roba là.

Così se faccio backspace c'ha le coordinate di quale testo cangellare, altrimenti non hai il tempo.

Cioè io dicevo ma può essere che abbiamo rotto anche le text area? Secondo me tanto per iniziare ci vuole una responsabilizzazione rispetto al prodotto.

Cioè noi dobbiamo essere degli artigiani consapevoli che le cose devono funzionare.

Se il fabbricante ti viene a fare la serratura e poi apri e chiudi, cioè se non apre e non chiude e si spezza la chiave e tu ti arrabbi con il farocchiamini e dici ma senta signor lei, per quanto puoi anche la porta non va.

Invece noi siamo tranquilli perché basta che diciamo no va perché ho usato questa libreria qua perché poi si dice ma tu non sai che fa cortocircuito.

A me non me ne frega niente, cioè io sono un utente, tu come l'hai fatto a me non mi interessa.

Se sono poi in programmatorio mi vado a leggere il codice se è bello ti dico anche bravo, ma le cose devono funzionare e questo è un layer di responsabilizzazione.

E poi c'è l'altro, che forse è la questione vera a cui tu ha accennato, cioè la cosa che io sto programmando che imbatto ha sulla società.

Qui la cosa è complicata perché ti diranno vabbè ma tanto se non lo fai tu lo fa un altro, a parte il fatto che i programmatori diventano sempre più scarsi, quelli bravi perché sono ammiti, non è proprio così.

Però comunque ognuno fa la sua parte, se no poi finisce come il discorso ma tanto l'indifferenziata, cioè la differenziata poi la mischiano tutto nel mio comune quindi non la faccio.

Tu fai la tua parte della catena e poi si vede perché se no la stai mischiando tu, cioè come dire boh siccome questo qui dienderà un po' di buono allora l'ammazzo, cioè non si può fare così.

E lì la cosa è molto complicata, io credo che per esempio ecco per me l'open source, l'ho detto sempre, è stata anche una questione politica, siccome io ero militante della sinistra scrivevo open source perché secondo me era un modo di diminuire le differenze di classe, perché la verità è questa che con tutto l'open source che c'è ora un sacco di gente con le pezze al culo ha potuto fare le start up e innalzarsi o inventarsi un lavoro.

Se fosse rimasto tutto come quando c'era San Microsystems che un server costava 60.000 euro, il sistema operativo costava per ogni CPU 5.000 dollari, quindi secondo me fare il programmatore ha una parte politica, uno può ignorarla ma non ci può essere un'azione di programmazione, di creazione senza che c'è un'azione politica sovrapposta ad essa.

Ora uno o ne vuole prendere coscienza o no, però programmare è politico.

Mi hai pestato la coda Salvatore, adesso io mi devo esporre, nel senso che concordo con te al 100% e io ho una maledetta domanda.

Intanto vedo che una buona parte del mondo open source spesso si è spogliato dell'impatto politico che questo aveva e questo mi rattrista parecchio.

E' una domanda che facevo qualche tempo fa, legata proprio all'open source.

Tu da tempo immemore vivi quel mondo, ne hai fatto la tua casa fondamentalmente per tantissimi anni e la mia domanda è questa.

Ho anche difficoltà a dirla però oggi passo indietro.

Quando noi parliamo di open source parliamo di una parte della knowledge che ci guida in uno degli ambiti che sta diventando un driver importante per il nostro mondo che è il mondo del codice, il mondo del software.

Oggi ha un impatto significativo.

Buona parte del software open source e dove per codice open source non parlo solo del codice sorgente, parlo di issue, parlo di pull request che sono, posso essere sincero, una parte tanto importante quanto il codice perché la knowledge, il processo evolutivo del codice sono storati su dei sistemi offerti gratuitamente e apprezziamo da alcune società.

Questo vuol dire centralizzare e andare a posizionare una parte della knowledge globale in un punto specifico che appartiene a una società.

Come mondo open source? Dobbiamo farci una domanda? E se sì ce la stiamo facendo? Spinoza, scusami.

Credo che il problema che poni esiste sicuramente, non tanto secondo me per la centralizzazione di queste informazioni perché si possono scaricare, ecco almeno il codice è in tante copie, le issue ci sono le API per tirarsene, però la cosa che già comunque non andrebbe tanto bene questa centralità, ma c'è una cosa più grave che il modo in cui questi siti sono disegnati determinano i workflow.

Per esempio non c'è dubbio che GitHub ha segnato la morte delle mailing list in cui c'era una discussione pubblica, a parte Linux che si è rifiutato ed è rimasta la KLM in cui si discute queste cose qua, poi le patch e così via.

Qual è la differenza? Che questa roba qua in qualche modo toglie controllo a chi il software l'ha creato, in favore di chi il software ne vuole captare il valore.

Perché ti mettono con le spalle al muro.

Io sono stato per tanti anni il mundane di uno dei software open source più grandi su GitHub, chi l'ha fatto l'ha fatto in buona fede, però quello che succede all'inizio quando hanno creato GitHub, ma il workflow è quello che tu sei lì, ti arriva una issue e se tu non la esamine e non la accetti, anche se va contro la filosofia del software, già sei un po' dalla parte del torto sin dall'inizio.

Con il workflow delle mailing list la cosa funzionava in maniera un po' diversa, magari la patch la attaccavo alla mail o a volte anche no in prima battuta.

Prima ti dicevo ma tu nel tuo progetto ce la vedi questa possibilità? Ne discutiamo assieme di quello che vogliamo fare e nasceva una discussione in cui poi c'erano sempre vinti e vincitori e a volte i vinti erano quelli che erano i project leader, se gli altri avevano degli argomenti più forti, se il project leader è onesto a un certo punto deve rassegnarsi alle evidenze di fatti e dire hai ragione allora dammi la patch e vediamo di fare questi passi avanti, cosa che a volte ha fatto per esempio anche Linus che è considerato un leader molto difficile, però c'era un processo.

Ora invece è diventata...

scusa? Mi stava venendo lo Stalin dell'open source, scusami! Ci può stare! Invece ora praticamente tu sei in una condizione in cui il software, perché GitHub voleva fare proprio quello, voleva esporre il software open source e quindi è progettato per quello, ma ha creato una situazione, ora specialmente che è passato in mano con Microsoft e così via, in cui tale software diventa sostanzialmente una risorsa per tutti e tu diventi sviluppatore open source, non come me che sono stato sempre e quasi sempre pagato la mia vita per fare, ma che spesso lo fai nel periodo libero di notte, una gallina da spennare per dirti c'è questa issue spesso aperta dai tipi che lavorano alle aziende miliardarie del software, ma lo risolvi, c'è questa issue, è diventato un modo più facile di fare una specie di Mac drive del software, passo mi prendo il tuo software e ti dico che c'è un problema, me lo metti un altro po' di maionese per piacere, ok, buonanotte, e sta cosa qui sinceramente disturba, perché non serve più essere parte di una community per avere voci in capitolo sul software.

A me mi hanno fatto per esempio delle pressioni bestiali a un certo punto, perché hanno deciso non lo so che su quella roba la per esempio di nomenclatura Master Slave, lì è successo un disastro, poi ho detto ma sai che c'è, ma tutto sommato piuttosto di creare queste tensioni, male non fa, io non credo che risolva nulla delle questioni giuste, perché per esempio queste persone muovevano da posizioni, da fini corretti, quelli di inclusività, però con soluzioni che io ritengo per giudiziari errate, poco efficienti, però a un certo punto è che uno ha di dire, vabbè, lo faccio, se però non sei possibilista non te la senti e ti fanno una pressione bestiale, e così pure dal punto di vista tecnico.

Per esempio Redis ha fatto sempre delle scelte tecniche o fatto delle scelte tecniche peculiari, inaccettabili in certi ambienti, perché dicevano allora il tuo sistema deve essere o AP o CP, non può essere che ne carne ne pesce, io dicevo CP non ha senso, perché sostanzialmente Redis deve essere veloce, quindi un sistema CP, replicato, deve pagare prima la latenza della replicazione, poi la latenza del single disk, non è più Redis, non serve più a niente, cioè serve a qualcosa ma nel 99% degli use case te li sei fulminati.

Non può essere AP perché sostanzialmente quando non ci sono partizioni di rete gravi per com'è fatto invece ti dà l'impressione che sia un sistema consistente, che per l'utente e per le applicazioni utili, quindi tu fai i sistemi come ti pare, a te a me lascia rifare come i paesi, perché io dicevo sempre un sistema è la somma di come funziona durante i fallimenti e come non funziona durante i non fallimenti, i periodi di quiete.

Siccome i periodi di quiete sono vastissimi, se il comportamento durante il fallimento è accettabile anche se non ottimale, se per questo sacrificio progettuale, durante i periodi invece in cui non ci sono le partizioni, il sistema è tipo il sistema dei tuoi sogni, è una scelta progettuale lecita, che può essere che non piace a te, a quelli come te, ma a me mi piace, lasciami stare, invece no, per anni mi hanno smartellato.

Questo sistema qui di apertura, di arrivare a fare una issue, accodarsi tutti, non avere una community di riferimento che ti potesse anche supportare come ciò che accade in una mailing list è un problema.

Però come venirne fuori da questa roba qua? Poi GitHub ti costringe a fare delle cose per esempio infernali, non so se sia ancora così, fino a due anni fa per anni e anni e anni li ho pregati di permettere agli utenti di taggare le issue, perché la verità è che gli utenti di un sistema che ha molto successo crescono a una velocità esponenziale e invece gli sviluppatori di un sistema che ha successo crescono quando va bene in maniera lineare.

Quindi oggi siete 4, domani fra 6 mesi siete 6, nel frattempo la community è passata da 100.000 a 200.000 e questi 200.000 aprono issue.

Quindi dicevo per esempio a GitHub fammi aiutare, se non fosse stato un sistema centralizzato, ma fosse stato un sistema che io installavo nel mio server delle issue, prendevo, modificavo il codice e dicevo, vabbè ragazzi ora potete taggare pure voi, così almeno sappiamo delle issue, quando io cerco, che ne so, hash table, mi escono tutte, se ho quel file avanti, mentre ho la fortuna che mi sto ricordando come funziona perché l'ho letto per le ultime 4 ore, magari aggiusto anche 4 altre cose, non poteva essere perché la loro visione era quella, quindi c'è un meccanismo anche impositivo di quella che è la visione di qualcuno.

Domanda successiva, quanto ci siamo impigriti? E ti faccio questa domanda perché Luca lo sa, ho speso un paio di mesi della mia vita provando a capire se utilizzando il plumbing, quindi le funzionalità raw di Git, potevamo sviluppare un sistema di issue e di pull request e da quello che ne ho capito si può fare ed è completamente decentralizzato.

Wow, impatto politico no? Il fatto di fare qualcosa di questo tipo, con i giusti problemi dei sistemi decentralizzati e quant'altro.

Ma allora quanto ci siamo impigriti noi, che invece abbiamo un prodotto e ci buttiamo sul prodotto? Molto, però questa pigrizia io non la reputo negativa, perché sono stato sempre un programmatore che non ha cercato mai la perfezione nei tool ma di non perderci tempo così che la sostanza delle mie ore lavorative fosse il prodotto che stavo realizzando.

Vi faccio un esempio banale, io uso per esempio come editor VI, se devo cancellare 50 punti esclamativi in determinate posizioni e so che ci sto due minuti, lo faccio piuttosto di andarmi a scrivere una macro e perdere 10 minuti però per poi avere l'automatismo, sono una persona di questo tipo qua.

Così come quando c'è stato Gmail, ho avuto uno dei primi account Gmail in assoluto perché ho detto ma non ne posso più di gestire SMTP, io poi facevo anche il sistemista in quel periodo, basta voglio un email che prenda e funziona così.

È un istinto umano quello di provare a non fare lavoro, anche perché sennò rischi di diventare...

tutte queste incombenze limitino l'impatto che poi puoi avere.

Però ecco questa cosa qui poi l'hanno capita le grandi corporazioni e la usano come uno strumento contro di noi.

Ci potrebbe essere però d'altra parte un'altra via, una via di mezzo.

Ecco la cosa che praticamente fa impressione è che ora che ci sono gli strumenti forse si potrebbe andare oltre quella fase là, nel senso che con la pacchettizzazione, le virtual machine, le immagini docker, tutta questa roba qua, forse si potrebbero fare, se io voglio fare un sistema di issue per il mio prodotto, forse posso premere un tasto o almeno si potrebbe fare così e subito lo sparo su un server che funziona, però certo poi c'è sempre il problema che subentra perché poi questo sistema bisogna che lo mantenga qualcuno.

Sì ci siamo impigriti un bel po'.

Ne parlavamo con Vittorio Bertola di Open Exchange, da poco.

Lui si occupa di, parlavamo di sovranità digitale che è un argomento che mi sta molto a cuore, una delle tante puntate politiche di Gitbar, nel senso più nobile del termine, non si parlava di partiti ma di politiche e di approccio e a questo punto una cosa è emersa, almeno dalla nostra visione, che oggi siamo più focused, più concentrati sui prodotti che sui protocolli.

Per protocolli parlo, che ne so, di interoperabilità, tu prima hai detto con docker, tutte ste cose, un attimo tirare su il nostro sistema di issue.

Certo, ma se lo facessimo in interoperabile? Perché c'è un messaggio politico, c'è un passaggio politico in questo elemento, cioè il fatto che io mi tiro su il mio sistemino, poi mi rompo le balle, faccio morire il progetto, spengo il server, questo Github ha salvato le chiappette a tanti.

Quanti progetti del piffero? E' sparito il fondatore, però erano utilizzati in 50 software, qualcun altro ha preso di mano il codice e non ha dovuto preoccuparsi di tirare sui server, fare in modo che funzionassero.

Quindi in realtà, secondo me, ho fatto tutto questo preambolo incasinato per dire che secondo me dovremmo ritornare a farci delle domande sui protocolli, sull'interoperabilità di quello che facciamo, perché fa parte del nostro riprendere a pensare, Cribio.

Assolutamente, io per esempio ogni giorno piango RSS, quella è stata una perdita bestiale, ma Google secondo me ha giocato tantissimo su questa cosa dei protocolli qua.

Ora che ragazzi, non c'è neppure l'HTTP, grazie a loro, cioè ci stanno togliendo tutto.

Prima l'SMTP con Gmail l'hanno sostanzialmente centralizzato tutti, l'SMTP esiste ancora perché vuoi avere anche la posta, ma prima praticamente era una mesh tra tutti i domini, ora è diventata solo un'autostrada per permettere ai tre provider che sono rimasti in piedi di scambiarsi le mail.

Poi la stessa cosa è successa praticamente alla chat, perché le chat ormai con Slack e così via, IRC è tramondato, l'altro protocollo si chiamava XMPP o qualcosa del genere, che all'inizio tra l'altro Gtalk era basato su quello ed è andato pure via e così via.

Sì, c'è un tema molto importante su queste cose qua, in particolare sono molto preoccupato per il discorso della chat.

IRC era, non solo, uno strumento fondamentale di libertà di internet.

Era una rete gestita, ma non la usa più nessuno, il fatto che ci sia è ininfluente, perché poi ti dicono che c'è ancora, ma se sono tutti altrove non importa che ci sia.

Quello era uno strumento di libertà importante, nessuno ha avuto il coraggio di spenderci, perché quello era sicuramente lavoro che sarebbe andato non pagato mai.

Bisognava trovare il coraggio di dire prendiamo questo protocollo, portiamolo nel futuro, in modo che ci possa mettere immagini, meme, però non sono.

Pensate per esempio al fatto che con Slack il datore di lavoro può controllare le comunicazioni private.

Se stavamo tutti su IRC ciò non era possibile, era un vantaggio significativo per la privacy del coso.

Questa è stata un'occasione mancata, così come RSS.

Sono degli episodi gravi.

Io credo che ormai la direzione è quella che si è stata intrapresa.

Mi piacerebbe che nascesse almeno una sottocultura di recupero di queste cose, anche perché io credo che gli hacker, i programmatori, gli smanettoni hanno bisogno anche di creare un ambito in cui si possa parlare al di là della massa che ormai invade internet, di ricavarsi uno spazio che sia lo Usenet di una volta, eccetera.

Questo spazio ma anche esiste Hacker News, che è rimasto l'unico posto in cui andare là e dire quello che si vuole senza troppi pregiudizi, perché rimane abbastanza libero dopo tanti anni.

Gli spazi servono.

Poi sull'impigrimento c'è anche la sfumatura del fatto che i programmatori non vogliono più fare tanto lavoro che vada fuori dalla logica di quello che stanno scrivendo.

Per esempio Redis è un software che è rimasto sempre molto libero per il fatto che non ha dipendenze.

Perché dalla libreria delle stringhe all'event loop non usa neanche l'event, niente, è tutto scritto da zero.

Quindi tu rimani completamente svingolato dal resto.

Se c'è un kernel sotto puoi compilare quel codice e farlo funzionare.

E questa è una grande libertà.

Un altro tema interessante che si pone è quello del fatto che l'open source non è aperto se c'è un livello di complessità tale nel codice da renderlo impenetrabile.

Sì, la licenza è open, però poi per esempio un software come Cassandra, che lo capiscono in 50 speciali, sono milioni di righe di codice molto peculiari e così via, è là.

Sì, è open, ma non lo posso modificare, aggiustare se è rotto.

Quindi la semplicità ha un ruolo importante nella reale apertura di un software.

Da questo punto di vista la scrittura di Prosa è interessante perché riporta di nuovo l'autore agli albori della programmazione.

Quando dovevi scrivere un sistema assembler scritto nel 6502 per Commodore 64, dopo la prima stesura ci passavi dieci mesi per aggiustare la velocità delle routine, la scrittura è rimasta attualmente ancora così.

Cioè, per scrivere un libro di 260 pagine ci sono voluti due anni e mezzo, l'ho scritto dopo due mesi e poi l'ho riscritto per i successivi due anni.

Quindi secondo me la scrittura potrebbe essere anche un esercizio interessante per lo sviluppatore, proprio per riconnettersi con la capacità di lavoro minuzioso.

Certo sino della singola virgola, della singola istruzione, della singola frase che deve funzionare.

Poi un'altra cosa interessantissima che riporta a questo paragone tra scrittura di codice e di...

Per esempio, il mio maestro di Prosa, io lo considero come mio maestro di Prosa, Giuseppe Pontiggia, che è morto molto prima che io iniziassi a scrivere, è morto nei primi anni 2000, però aveva fatto alla radio delle trasmissioni, che si chiamavano Dopo la Sera, in cui parlava di scrittura.

Ho letto queste trasmissioni, sono tipo un podcast, ma la cosa figa era che poi alla fine si faceva telefonare dagli spettatori e ascoltava alcune domande e rispondeva.

Quindi c'era anche questa parte interattività che allora era piuttosto rara.

E sono tantissime puntate, una trentina, in cui lui dice le cose più decisive che crede in ambito di scrittura di prosa.

E dice questa cosa qua, l'incipit di un romanzo è importante, non tanto perché le sono le prime parole che leggi.

Alla fin fine, se il romanzo è bello, anche se è brutto dopo le prime due pagine, comunque il lettore resiste, se dalla terza in poi è bello, legge e se lo finisce.

E penserà più al finale che all'incipit.

Il punto è che setta il tono a cui aggrapparsi per scrivere le restanti pagine.

Quindi se parti con un incipit che è alto, appena vedi che il tono della tua scrittura si abbassa, lo usi come angolo, lo vai a rileggere e dici, risolleviamo di nuovo la prosa a quel livello a cui era prima.

E così credo che succeda nei sistemi.

Bisogna avere il coraggio, quando uno crea il nucleo iniziale di un software, di riscriverlo anche dieci volte, perché quel nucleo iniziale, se è scritto bene, informerà poi tutta la struttura che gli si va per superfetazione ad aggiungere sopra.

E quindi in generale la disponibilità al lavoro duro, secondo me è una cosa da recuperare.

Sia per questa cosa che ha dicito dei protocolli, ma proprio per raggiungere la qualità massima.

Abbiamo parlato di romanzo, adesso ti faccio questa domanda a bruciappelo.

Tu sei uno sviluppatore, hai sempre lavorato per cicli e iterazioni su quello che facevamo, l'hai accennato prima.

Che sensazione a livello emozionale, emotivo, si ha quando costruisci qualcosa che una volta uscito è immodificabile? È una cosa orribile, per uno sviluppatore è una cosa inconcepibile.

Io ero convinto per esempio assolutamente di avere la necessità di spendere un altro anno a modificare WAP, però a un certo punto anche ti devi fermare, perché se no rischi che dopo al prossimo anno mi serva un altro anno, invece di scrivere cose nuove ne hai scritto solo un libro dopo dieci anni.

Noi forse nel software a volte non apprezziamo fino in fondo il vantaggio, la fortuna che abbiamo nel fatto che possiamo cambiare.

Se fai un errore è come se tutti i bug del tuo sistema rimanessero immutabili per sempre, sarebbe vergognoso da certi punti di vista, per cui questa cosa ti predispone molto al lavoro.

Però di contro il fatto di sapere che possiamo aggiustare i bug a volte ci fa diventare un po' forse lavativi, superficiali, e se l'erabetico non funziona poi lo aggiusto.

Quindi forse ci vuole anche questa parte qua.

Infatti ci sono un sacco di scrittori che hanno riscritto la propria opera come per esempio Umberto Eco con Il nome della Rosa, è uscita un'edizione dopo pochi anni che aveva delle modifiche decisive.

Alessandro Manzoni ha riscritto tutta la vita I promessi sposi, noi ne conosciamo solo la stesura finale, ma ce ne sono decine di stesure dei promessi sposi.

Giuseppe Pondigia ha messo mano al suo romanzo che ha vinto Lo strega, La grande sera, e dopo alcuni anni ne ha fatto uscire una versione in cui ogni frase era stata modificata.

Cioè ci sono degli scrittori che non si sono arresi a questa evidenza.

Sì, credo che però sia una cosa necessaria, magari sto per dire una cazzata anche quasi sicuramente, però mi piace vederlo così, forse è una visione un po' romantica.

Cioè il fatto che se col software il fine finale, la parte finale, l'elemento d'arrivo, l'achievement e farlo girare e che risolva quel problema, quando fai letteratura in qualche modo quello che tu vuoi fare è passare un messaggio, lasciare un'impronta che poi evolve non nel libro ma dentro o il lettore, no? E di qui la domanda è abbastanza semplice, nel senso con una risposta difficilissima.

Paternità, ne abbiamo parlato prima, cioè se il romanzo ha un approccio waterfall e poi l'iterazione avviene dentro il lettore che itera su quei messaggi che tu passi, quanto incide la paternità? E come, io so che l'hai accennato prima, è stata una cosa abbastanza sofferta staccarsi, per quanto rapida, però comunque un figlio quindi bisogna staccarsene.

Come l'hai vissuto lo staccarsi dal romanzo? Cioè una volta che l'ho letto, come diceva una mia amica poetessa, una volta che leggi il mio libro, quel libro non è più mio, è tuo.

Come la vivi questa cosa? Io credo che bisogna allontanarsi con la maggiore rapidità possibile dall'opera che è stata pubblicata per lanciarsi sulla prossima.

Questo secondo me è l'unico approccio sano, perché ancora continuare a rileggerlo, a indugiare sugli errori, non è tanto sano e poi comunque c'è una rielaborazione del lettore.

Però mi preme sottolineare il fatto che almeno nel mio caso non c'è l'idea di passare un messaggio nella scrittura.

Io scrivo esattamente per la stessa pulsione che avevo nel software per creare un artifatto e questo artifatto deve avere delle caratteristiche estetiche.

Quindi scrivo software o scrivo un romanzo perché ricerco il bello.

Poi se il lettore leggendo questo romanzo o se il programmatore leggendo il software ne modifica la sua congezione della programmazione o fa un pensiero nuovo o viene suscitata in lei o in lui un'emozione, tanto meglio, ne sono felice.

Però il fine non è quello.

Per quanto riguarda il distacco, io sto purtroppo vivendo questo martirio che siccome il romanzo in questo momento lo sta traducendo una traduttrice americana, mi sfedisce i capitoli tradotti e io li rileggo perché certe volte capita che c'è qualche errore di comprensione, visto che si parla a volte di cose tecniche.

Allora sistemo, il personaggio voleva dire quest'altra cosa eccetera eccetera.

Quindi sono costretto a rileggerlo.

Però l'approccio sano è di staccarsene e pensare subito alla prossima opera.

Avete presente il meme di quello che cammina con la fidanzata però guarda all'indietro l'altra che passa? Ecco dovrebbe essere così sostanzialmente, che tu hai per la mano il tuo romanzo pubblicato ma già devi volgere uno sguardo a quella che passa che è quello che vuoi fare dopo.

Insomma è la parte più bella almeno ti liberi del mantenimento e del refactoring che sono le cose più pallose dei nostri software, del nostro lavoro.

Luca hai qualche domanda? Io ho parlato tantissimo.

Sì sì ma tu lo sai io ti lascio andare perché poi mi piace gli argomenti politici che tocchi, io poi faccio domande più banali.

Assolutamente no.

Ma sì ma sì.

No una cosa prima mentre dicevi che nel costruire Redis hai fatto praticamente tutto senza dipendenze.

No non voglio non voglio non voglio battere di contro.

Devi sventolare la tua bandiera.

No no ma l'ha sventolata benissimo Salvatore.

Io ero lì che dicevo a lui io e basta.

No non c'era nessuno con Redis prima e magari con Wop adesso che ti diceva ma che fai ma l'hanno già fatto ma perché reinventi la ruota ma c'è già Asimov che scrive cosa cosa fai anche tu e come immagino di sì perché è la natura umana credo e dove magari hai trovato la forza o la motivazione per seguire le tue scelte e dire no lo rifaccio perché sì perché magari so rifarlo meglio oppure sì perché ho qualcosa da dire.

Allora con Redis mi hanno letteralmente massacrato per questa scelta qua.

Ci sono stati anche dei thread spiacevoli su GitHub, sulla mailing list, su Twitter perché per la gente è inconcepibile una cosa del genere.

Ti dicevano ma come mai tipo la libreria degli eventi ce te la scrivi tu ma se c'è l'event, si dovrebbe chiamare, e io dicevo ma siccome gli eventi Redis si gestisce in un determinato modo ho bisogno degli hook che non ci sono in l'event e poi voglio fare questa cosa qui che mi ero scritto già in passato la conosco perfettamente, se ho un problema e voglio risolvere una cosa in questa libreria di mille righe di codice io mi ritrovo come se fossero le mie tasche e quindi non voglio andare a imparare un'altra cosa, poi aggiornare gli event e poi non mi funziona più quello che stavo...

A un certo punto mi hanno portato talmente tanto al limite che ho detto allora andiamo a vedere quanti bacchi ha avuto che avrebbero in qualche modo riguardato Redis, gli event negli ultimi due anni e quanti ce ne sono stati nella mia libreria.

Siamo andati a controllare, io non avevo mai toccato un nulla negli ultimi due anni e in lì vivendo c'erano stati almeno due bacchi che avrebbero avuto un impatto significativo sul funzionamento di Redis.

Io ho detto ragazzi la cosa è questa, ma non è che si sono fermati là per ogni...

questo reinventare la ruota da fastidio...

Allora tanto per iniziare è il modo in cui si impara davvero a programmare, perché se metti sempre insieme cose che hanno fatto gli altri e non tocchi mai la ciccia, la ciccia è scrivere un interprete, implementare le tue hash table.

Dici ma perché non usi la tua libreria hash table? Grazie al fatto che ho scritto la mia ho potuto reimplementare il rehashing incrementale per cui quando si crea la nuova table più grande o più piccola non c'è il block in cui avviene il rehashing da una parte all'altra che mi avrebbe costato la tenza.

Piano piano i bucket vengono spostati da una parte all'altra.

Questa cosa qui non la faceva nessuna hash table.

Io potevo in tutto...

per esempio quando ho creato la mia...

quando Redis ha avuto come tipo di dati Hyperloglog mi sono fatto la mia libreria, a parte il fatto che mi divertisse.

Io mi diverto, devo anche divertirmi mentre programmo.

Ma poi quella libreria di Hyperloglog ha preso il paper che era in quel momento più avanzato, che era quello di Google, aveva un difetto.

Ciò ho applicato una correzione attraverso una funzione polinomiale che faceva lo smoothing dell'errore che avevano loro e poi da lì è nato un nuovo settore di ricerca e hanno poi fatto un Hyperloglog che corregeva in maniera completa usando delle tecniche simili a quelle che avevo usato io.

Quindi c'è anche una ricerca di...

io sempre dicevo prima di fare una cosa io non mi leggo i paper, la letteratura.

Dopo che l'ho fatta me li leggo, perché se no il mio pensiero creativo viene convogliato poi all'interno di quelle pareti che hanno già così creato nella mia mente le cose che ho letto.

Poi insomma andava sempre così.

Io la forza l'ho trovata sul fatto che per me programmare è un atto creativo, per cui non è che l'approccio Google, siccome va il 50% più veloce, lo posso fare il 95% più complicato.

Per me è un atto creativo, cioè essere una bellezza, una coerenza, un controllo, un'armonia tra le parti, quindi ne facevo una questione artistica.

Quando è stato invece di Ewok del romanzo, vabbè là è stata una tragedia, perché subito mi hanno detto ma tu sei veramente velleitario, perché praticamente per quanto se scrivi codice pensi di poter scrivere prosa.

Tra l'altro io sono stato sempre un lettore abbastanza forte, ma non vengo da ambienti letterari, ho fatto il liceo scientifico, poi ho fatto la facoltà d'architettura, che ho abbandonato.

Sai, non provenendo dal mondo delle lettere, c'è sempre il rischio di essere visto con scetticismo, visto che ti avvicini comunque a la letteratura.

Tanto per iniziare non me ne importava nulla, perché comunque fino a quando il romanzo non avesse raggiunto un livello qualitativo per me soddisfacente non l'avrei pubblicato.

Quindi ho detto io inizio, al limite non lo pubblico, perché poteva succedere, ed è quasi successo, sono andato vicino, che questo romanzo magari non vedesse mai la luce.

Poi quello che è successo è quando ormai ero scaraggiato, mi dicevano ma io se sono un povero tecnico, ma come mi metto a fare letteratura, ma stiamo scherzando? E l'ho spedito ad una mia amica, che lei invece si è tanto occupata di teatro, di letteratura e così via.

Allora a questa qui mi ha risposto e mi ha detto guarda non l'avrei mai detto con questa premessa, allora in realtà ti dico di continuare.

Ho detto se non l'avresti mai detto, continuo.

Ed ero lì vicino al mollare.

Però sì mi sono dovuto scontrare, e là com'è che fai? Uno dice ok siccome ci sono un secco di persone erudite che hanno letto tutto, che hanno studiato lettere, poi hanno fatto il PhD e sono medievalisti, li vedi come scrivono e fanno cacare, può essere che io, anche se non ho i mezzi che hanno loro culturali, se mi impegno possa raggiungere una prosa che ovviamente non divento, che ne so, tipo il nuovo premio strega, non divento Elio Vittorini, però faccio un lavoro dignitoso, perché questo è il mio obiettivo, la scrivere una prosa dignitosa, con una storia dignitosa, con un romanzo che avesse senso leggere.

Poi quando ho stabilito che comunque non ero completamente soddisfatto, avevo raggiunto il livello che io pensavo fosse sufficiente per la pubblicazione, sono stato altri mesi a allimare e poi l'ho pubblicato.

Sinceramente in Italia, tra l'altro, per il mood nazionale che c'è, se tu appena ti dicono non lo fare, non lo fai, cioè non fai praticamente niente, perché lo scoraggiamento è lo sport nazionale.

Era il senso appunto della domanda, perché almeno, come prima diceva anche Mauro, il rifarsi la ruota, reinventarsi la ruota è anche il mio sport preferito, ma proprio per imparare e per provarci, anche per avere quell'atto creativo.

Però ovviamente c'è sempre questa domanda, ma perché lo fai c'è già x y z.

Però è bello ogni tanto, soprattutto se hai un'amica o un amico che dice vai mi piace, non l'avrei mai detto ma continua, è una cosa che si può fare.

Vabbè non so se voi vi siete imbattuti, io ho fatto un progetto che ci sono stato una settimana perché proprio non avevo un cazzo da fare, allora uno a Natale, c'erano già queste robe qui che gli metti tipo l'apparecchietto per captare i segnali degli aerei, la DSB, un protocollo di beacon che sparano, ne ho scritto uno io che usava standenina per captare queste cose qua.

Siccome era strutturalmente scritto meglio degli altri è diventato lo standard e poi ha creato un braccio di quest'industria qua che non esisteva, ora è usato, è il corso ufficiale di Flyradar24, lo distribuiscono agli utenti e così via.

Un'azienda aerospaziale a un certo punto mi ha telefonato per dirmi che era nei satelliti, installato ed era una cosa così a Natale che in cui reinventavo la ruota.

Ma più interessante è che secondo me...

Mi hai pensato che forse c'è un bug, ti sei spaventato un attimino...

Ovviamente l'avevano modificato loro quindi ho detto vabbè tutte le cose buone le avrei scritto, io e Maggio l'abbiamo scritto.

No, scherzo.

Poi più interessante è il caso che ho scritto un editor, mi pare in 500 righe di codice, un editor di testo e l'ho scritto e poi ho scritto un blog post su questa roba qua, così, proprio per...

sai, tipo un giocattolo.

E sta cosa ha generato un boato nella comunità informatica che ancora esiste allora.

Uno ci ha scritto sopra un libro, prendendo questo editor e spiegando passo dopo passo, capitolo dopo capitolo, come funzionasse.

Moltissimi hanno imparato proprio a programmare in C, leggendo questa roba qua, poi è stato portato in Rust e l'hanno fatto con Rust.

Quindi questi atti di ribellione al lavoro che c'è da fare, tu dici ora mi metto qua e faccio una stronzata qualsiasi, perché è divertente, perché questo editor non usa ovviamente le N-Curses, non usa nessuna libreria di gestione del terminale, spara direttamente le sequenze escape, così come capita.

E quindi è una cosa divertente per il programmatore, perché senti, in quelle 500 righe di dominare, come ai tempi davvero del Commodore 64, di dominare quel pezzettino di informatica ed è un modo per imparare, un modo per confrontarsi con la complessità, di pensare davvero, ma chissà come funziona l'editor che usa ogni giorno, una cosa che va fatta secondo me.

E' così, un bignami lo trovo molto interessante, l'ho fatto sempre e credo che andrebbe incoraggiato.

Invece ecco, il mandra è quello di non inventare la ruota, guai a te se ti permetti di fare una cosa che...

Guai vabbè ragazzi, se parliamo di crittografia, cioè se ti permetti che invece una cosa interessantissima, per esempio una Facetel Network, che è un modo per fare di andare a qualsiasi funzione non lineare, un cifrario a blocco, un block cipher, è molto istruttivo, prendi e ti fai un tuo algoritmo di crittografia, magari non lo usi per le cose importanti, ma è utilissimo fare questa esperienza, perché capisci che lo puoi usare per cose che neanche immaginavi.

Una volta con un block cipher di questo, con una Facetel Network, ho fatto uno di quei algoritmi, avete presente quando c'era il cambio della schermata, che da una schermata si andava a un'altra sostituendo tutti i pixel uno dopo l'altro, tipo con questo effetto neve? Allora lì qual è il problema? Se tu vai di nuovo sopra i pixel che avevi settato, gli ultimi pixel prima di beccarli vuoti ci stai una vita, perché becchi sempre quelli che avevi già cambiato.

Allora ti serve un algoritmo che ti crea dei numeri pseudo casuali che non si ripetono mai.

Ho detto, caspita, posso usare una Facetel Network, perché altrimenti dovresti ricordarti tutti i cosi che hai generato prima, comunque non c'è un modo facile senza farlo così.

E ho detto, ma il block cipher che io ho studiato, la Facetel Network, mi permette se cifro i numeri da 1 fino a 65.000, siccome avranno dei risultati tutti diversi, per la proprietà dei decifrari a blocco, quindi ti si aprono dei canali reinventando la ruota che non ti aspetti, per cui bisogna incoraggiare.

Wow, io mi ero fermato ai primi 3 pixel dei 64.000, per ovvi limiti mentali.

È il momento di ringraziare i donatori di questa puntata.

In realtà sentite anche questa volta un audio poco bello, perché mi trovo su un'amaca.

Devo dire che è la prima volta che registro un episodio in queste condizioni logistiche, ma è abbastanza confortevole per poterlo fare.

Quindi andiamo a ringraziare chi fa sì che questo episodio possa avere la luce, quindi quelle persone che con tanta generosità danno un contributo affinché appunto possiamo registrare i nostri episodi.

E questa settimana dobbiamo ringraziare due persone che in realtà hanno fatto una donazione e che appunto diciamo ci aiutano a sostenere un po' di spese, anche perché Gitbar è gratis ma non senza costi.

Innanzitutto dobbiamo ringraziare Daniele Brambilla.

Daniele che ci ha donato ben 3 birre ma non ci ha lasciato un messaggio, quindi Daniele se ti fa piacere scrivicelo pure sul nostro gruppo Telegram.

Un'altra persona che ci sostiene è Santiago Greco che ci ha invitato 5 birre con un messaggio scrivendo perché ho dato le dimissioni ed è colpa anche vostra.

Se non fosse per Gitbar non avrei iniziato a guardarmi in giro o quantomeno avrei preso consapevolezza del mio valore come dev molto più tardi.

Quindi alla vostra.

Noi solleviamo i calici per Daniele e Santiago, brindiamo alla loro salute e cin cin.

Si allora proprio un vino perché stavo pensando che alzandomi da qui andrò ad aprire una bottiglia di vino.

Vi volevo parlare di un produttore di vini siciliano che si chiama Barraco, è nel Marsalese.

Questo produttore praticamente ha iniziato a fare vino in maniera politica, aveva delle terre, lui aveva dei credo politici, credeva che il vino fosse comunque troppo piegato alle mode del momento, fosse un'operazione culturale sbagliata e ha iniziato a fare del vino politico.

Vino politico che faceva nelle prime incarnazioni piuttosto pietà perché gli usciva male.

Questa è una specie di parabola del software secondo me rimappandola alle nostre cose.

Allora va fuori, studia, torna e inizia di nuovo a fare vino politico però informandolo a tutto ciò che aveva appreso durante i suoi viaggi e il suo dialogare con quelli che facevano vino migliore di lui e così via.

Barraco inizia a vinificare a Marsala il grillo che è il vintigno con cui si faceva il Marsala che prima però non si vinificava in bianco, serviva solo per il Marsala.

Magari vinificavano non solo il chardonnay ma il grillo.

Uno dei suoi vini che si chiama Bianca a mare, secondo me è uno dei vini più strepitosi che si possano bere, cui io sono affezionatissimo.

Consiglio così alle persone che ci stanno ascoltando di comprare una bottiglia di Bianca a mare, è un vino tra l'altro non solfitato, ha una fermentazione strana ma interessantissima.

Se siete scettici sui vini naturali vi dico che io di solito non li bevo, è uno dei rari vini naturali che bevo.

Niente, vale la pena di essere bevuto, quindi se volete ascoltare magari il podcast invece che con la birra e col vino, forse un bicchiere di Bianca a mare potrebbe essere ideale per questo aspetto.

Secondo te si può reprire online? Sì, ormai è famoso perché poi uno stellato che c'è a Ragusa, che si chiama Ristorante del Duomo, ne ha ordinate 300 bottiglie, l'ha scoperto ed è nato Barraco come nome più grosso, ma non hanno rinunciato alla qualità, fanno sempre una tiratura piccola, lo trovate ovunque in tutti questi seller grossi di vino si trova.

Figo, fighissimo.

In modo di procurarmelo e scriverò nel gruppo come l'ho trovato.

Non sono un sommelier, però diciamo che proverò.

Da sardo penso di avere un buon palato.

Tra l'altro ora io mi iscrivo al gruppo così poi posso leggere cosa lavo.

Sì, sì, volentierissimo, volentierissimo.

Ti mando poi l'invito.

Luca tu hai qualcosa per noi? Io ho qualcosa per noi in realtà.

Il primo è autopromozionale, quindi la puntata Gitbar, l'episodio 106 di Algoretica, visto che era una parte del tema, vi ricordo, se no l'avete sentita, sentitela.

Poi in realtà riciclo, riprendo un balocco che forse avevo già consigliato.

Allora mentre voi vi ordinate il vostro UOP e ve lo leggete, a vostro figlio magari, se ne avete, o al nipote o al cuginetto, potete prendere The Game di Alessandro Baricco per insegnare o rivedere magari insieme a lui la storia dell'informatica, dai albori fino ai giorni d'oggi, o forse fino a ieri, perché di qualche anno fa ho questo libro.

Basta, due mi sembrano più che sufficienti.

Allora io switcho rapidamente il mio balocco, anch'io porto due libri, uno per i papà e le mamme e uno per i bimbi.

Parto da quello per i bimbi, non mi è ancora arrivato, sono in attesa perché ha qualche difficoltà di produzione, è Computer Engineering for Babies ed è simpatico perché con un pulsante, un simile Arduino, è un libro per bambini e neonati che praticamente insegna un minimo di logica booleana.

Ed è carino perché crea l'esperienza, c'è la lucetta che si accende, quindi capiscono cose, un end, un or, una negazione ed è molto carino per creare, una cosa che mi sto imponendo è quello di creare momenti di esperienza con mia figlia, adesso che cresce piano piano, e quindi momenti che siano divertenti per me ma che siano challenging per lei.

Sono ancora in attesa, in trepidante attesa che lo spediscano però credetemi è veramente ben fatto ed è una bella cosa.

E poi c'è un altro libro, sto preparando un talk, tempo fa io vengo da un background un po' marchettaro e quando Salvatore ha parlato del suo romanzo mi è venuto in mente che forse lo storytelling è quello strumento che noi esseri umani abbiamo per passare dei messaggi.

E allora perché non fare un bridge tra lo storytelling che viene utilizzato in letteratura e i nostri talk, le nostre conferenze.

Noi in Gitbar abbiamo fatto un esperimento, due esperimenti, uno qualche tempo fa dove abbiamo provato a parlare di calvino e refactoring usando città invisibili, se non l'avete fatto ancora andatevi a recuperare la puntata, e un altro a Natale dove abbiamo fatto la storiella di Natale dove c'è l'AMDA che incontra Q.Bernello e Paiti, andatevi a recuperare anche quella versione.

Il libro però, oltre alla parte di autopromozione, il libro che vi porto oggi è Resonate, è un libro più che altro è quasi un viaggio all'interno di una serie di concetti di Nancy Duarte che è la stessa autrice di Sleidology che mi pare di aver già portato.

Buttateci un occhio se avete intenzione di fare un talk, anche interno al team, o comunque parlare con delle altre persone per passare dei messaggi e secondo me insegna tante piccole cose.

Quindi è una di quelle cosine da avere nella libreria.

Naturalmente mai manchi Whoop che è la lettura perfetta sotto l'ombrellone.

Noi ringraziamo di nuovo Salvatore.

Dici una cosa, una battuta rapida sull'editore, sull'esperienza editoriale prima di chiudere.

Allora guarda, mi aggancio subito a quello che hai detto tu, Redis senza lo storytelling che io facevo su Twitter e sul mio blog non sarebbe andato da nessuna parte.

Per cui volevo dire agli altri software developer di raccontare le proprie cose, perché se non ti racconti non esisti.

Poi sulle vicissitudini editoriali è incredibile, il mondo del software è incredibile perché ha tutte le luci su di sé.

Non è detta che questa cosa accada per sempre, come nella letteratura è accaduto per un periodo e poi ha smesso di accadere.

Quindi il momento degli sviluppatori è ora, stanno vivendo l'età del loro e quindi, come si dice, mai un giorno senza una linea.

Ora è il momento di creare grandi cose.

Non posso aggiungere altro, Salvatore.

Grazie di nuovo per essere venuto qua su Gitbar.

Come solitamente diciamo, da questo momento Gitbar è anche la tua casa, vienici a trovare quando vuoi, quando hai qualcosa da condividere con noi, per te ci sembra birra fresca.

Birra fresca che ci segniamo sul taccuino e alla prossima conferenza dove sarai ti offriremo un gruppo di persone.

Grazie mille.

Se passate da Catania, tra l'altro, fatemi un colpo di Telegram e io ci sono.

Fantastico.

Volentieri.

Detto questo, ahimè, la puntata è finita, vi ricordo rapidamente i nostri contatti, info che ho c'è la gitbar.it e tebrain.repo ed ovviamente il gruppo Telegram, Gitbar Podcast.

Ci troverete tutti e anche buona parte dei nostri ospiti e speriamo anche Salvatore.

Subito, Orlando.

Detto questo io vi do, insieme a Luca e a Salvatore, appuntamento al prossimo episodio, alla prossima.

Ciao.

Ciao.

Ciao..