Ciao, e benvenuto nella sesta puntata dell'ottantesima stagione. La volta scorsa, il coordinamento costa. Oggi la forma più affilata e pericolosa del coordinamento: cosa succede quando due lavoratori allungano la mano verso la stessa cosa nello stesso momento. La trappola più profonda di tutto il parallelismo. Il titolo lo dice: la stessa scatola in due mani.
La scena. Due aiutanti allungano la mano verso la stessa scatola nello stesso istante. Nel caso migliore se ne accorgono e uno molla la presa, una piccola trattativa. Nel caso peggiore afferrano entrambi, tirano entrambi, la scatola si strappa, il contenuto si rovescia. O più subdolo: entrambi aggiornano il registro condiviso di cosa è stato caricato, nello stesso momento. Uno scrive quarantadue scatole, l'altro scrive quarantadue scatole, e il camion parte con una scatola dimenticata, perché ognuno dei due vedeva quarantuno e ha aggiunto uno, senza sapere dell'altro. Due mani sulla stessa cosa, senza una regola, producono danni che nessuno voleva e nessuno vede.
Questa è la corsa: due lavoratori toccano la stessa cosa nello stesso momento, almeno uno la cambia, e non c'è accordo sull'ordine. L'orrore non è che si rompa sempre: è che di solito non si rompe, e poi, raramente, con la tempistica esattamente sbagliata, si rompe, e il risultato dipende da quale mano è stata per caso un pelo più veloce. Lo stesso codice, gli stessi dati, e a volte va bene e a volte è sbagliato, senza uno schema che puoi acchiappare. Una corsa è un difetto che si nasconde nella tempistica, e la tempistica è l'unica cosa che non riesci a riprodurre a comando.
Ed è per questo che è così cattiva. Un difetto normale c'è ogni volta, lo trovi. Una corsa c'è una volta su mille, quando due lavoratori sono per caso finiti addosso alla cosa condivisa nell'istante esatto sbagliato. Passa ogni prova, gira bene per mesi, poi corrompe qualcosa in una giornata di traffico e svanisce prima che tu possa guardare. Più lavoratori e più condivisione, più collisioni, più corse. Lo stato condiviso modificabile, sotto il parallelismo, è la sorgente più ricca di difetti che non si riescono a riprodurre.
La cura è una regola: un solo lavoratore alla volta può toccare la cosa condivisa. Metti un lucchetto sul registro: chi vuole aggiornarlo prende la penna, scrive, la posa; tutti gli altri aspettano il loro turno. Adesso il conteggio è sempre giusto, perché gli aggiornamenti avvengono uno alla volta, in un qualche ordine, mai uno sopra l'altro. Fare a turno intorno alla cosa condivisa la rende sicura.
Ma la cura ha un costo, e qui tutto si lega. Fare a turno è, per definizione, seriale. Nel momento in cui i lavoratori devono mettersi in fila per il registro condiviso, quella parte del lavoro smette di essere parallela: è di nuovo la scala uno alla volta, fatta ora di attesa per la penna. Più condividono, più fanno la coda, più il tuo bel lavoro parallelo ricade in una fila. Un lucchetto è una dipendenza che hai creato apposta per restare al sicuro, e come ogni dipendenza, mette un tetto alla tua velocità. Lo stato condiviso non causa solo corse: anche quando lo rendi sicuro, ti serializza. È di nuovo la parte in fila della terza puntata.
E allora la lezione vera, contro-intuitiva. La saggezza più profonda del parallelismo è questa: il modo migliore di gestire lo stato condiviso è non condividerlo. Dai a ogni lavoratore il suo registro, e somma i totali solo alla fine: adesso nessuno aspetta la penna, perché non c'è nessuna penna condivisa. Dai a ogni aiutante la sua pila di scatole e il suo nastro: niente su cui scontrarsi. Meno i lavoratori condividono, meno corse, meno lucchetti, meno coda seriale, più ti avvicini al sogno del lavoro indipendente. Ogni puntata ha puntato qui: l'indipendenza è tutto il gioco, e lo stato condiviso è il nemico dell'indipendenza.
Voglio lasciarti con la verità più dura del lavoro in parallelo: lo stato condiviso è il nemico. Quando due mani toccano la stessa cosa senza una regola, ottieni danni che nessuno voleva e nessuno vede, i difetti più crudeli che esistano, perché compaiono a caso e spariscono prima che tu li guardi. Puoi rendere il tutto sicuro con una regola, un turno intorno alla cosa condivisa, ma quel turno è seriale: mettendo in fila le mani davanti alla cosa condivisa, ridistruggi proprio il parallelismo che cercavi. Perciò la mossa migliore non è proteggere ciò che condividi: è non condividere. Dai a ciascuno il suo, somma alla fine. Meno condividi, meno corse, meno attese, più indipendenza; e l'indipendenza, lo sappiamo da cinque puntate, è tutto il gioco.
Per oggi ci fermiamo qui. Abbiamo visto la scena delle due mani sulla stessa scatola; la corsa, il difetto che si nasconde nella tempistica e compare a caso; perché è così cattiva, una volta su mille, impossibile da riprodurre; la cura, un turno intorno alla cosa condivisa; e il suo costo, che quel turno è seriale e serializza il lavoro; fino alla lezione vera, non condividere affatto. Nella prossima puntata: modi di dividere il lavoro. Nelle note trovi qualche spunto. Se ti è utile, condividila. Grazie per l'ascolto, e ci sentiamo alla prossima.