Codice obeso, tecnologia insostenibile

Oggi sono critico nei confronti di Microsoft.
Più del solito, intendo.
Sono in una riunione di lavoro con un PC che, sulla carta, non dovrebbe essere alimentato a carbone: processore a 8 core, 16 GB di RAM, dignità residua sufficiente per aprire due programmi.
Applicazioni in esecuzione:
— Microsoft Teams, con una riunione in corso
— Il blocco note
Fine.
Non sto calcolando la traiettoria di rientro di uno Space Shuttle.
Non sto simulando il clima terrestre dei prossimi quattrocento anni.
Non sto renderizzando contemporaneamente tutti i peli del culo di un mammut in 8K.
Sto ascoltando Paolo dell’amministrazione mentre parla di una scadenza.
RAM utilizzata: 10 GB.
DIECI.
DIECI CAZZO DI GIGABYTE.
Per una videochiamata e un file di testo.
A un certo punto Windows, con la serenità di chi ha appena incendiato casa tua e ora vuole darti consigli sull’estintore, mi comunica:
“Potresti chiudere alcune applicazioni per risparmiare risorse.”
QUALI APPLICAZIONI?
Il blocco note?
Devo iniziare a memorizzare i verbali delle riunioni come un cantore miceneo perché il computer non riesce a sostenere contemporaneamente Teams e la pressione su tastiera della lettera “A”?
Nel frattempo l’audio comincia a laggare. Paolo si trasforma in una creatura extradimensionale:
“Il… bud… get… del… pro… ssi… mo… tri… me… stre…”
E io non so più se sto partecipando a un meeting o se Microsoft sta tentando di evocare Cthulhu attraverso il protocollo VoIP.
Ma il problema vero non è nemmeno Teams. Il problema è che stiamo continuando a costruire computer sempre più potenti per compensare software sempre più inefficienti.
È come risolvere un rubinetto che perde costruendo una diga.
Ogni anno più RAM.
Più processori.
Più GPU.
Più consumi.
Più calore.
Tutto per aprire gli stessi documenti, scrivere le stesse mail e sentire Paolo che fa il suo lavoro.
Il software moderno è diventato una matrioska burocratica: dentro il programma c’è la telemetria, dentro la telemetria c’è il monitoraggio, dentro il monitoraggio c’è il sistema di feedback, dentro il sistema di feedback c’è un altro processo che controlla se hai gradito il processo che controllava il processo.
E da qualche parte, molto in fondo, forse c’è ancora la funzione che avevi chiesto.
Questi strumenti non migliorano necessariamente l’esperienza dell’utente. Raccolgono dati, generano log, inviano statistiche e permettono agli sviluppatori di osservare il software mentre muore lentamente sul tuo computer.
Oggi, per lavorare in ufficio senza che una videochiamata collassi come l’Impero romano d’Occidente, sembra quasi servire un PC con 32 GB di RAM, 16 core e una scheda grafica NVIDIA dedicata.
Per scrivere email.
Ripeto:
UNA SCHEDA GRAFICA DEDICATA PER GUARDARE DELLE FACCE DENTRO A DEI RETTANGOLI.
Poi avvio Linux.
Apro Pluma per prendere appunti.
(Sì, uso ancora Pluma. Non mi giudicate. È un editor di testo: deve farmi scrivere del testo, non analizzare le mie emozioni mentre digito).
Apro Teams dal browser. Entro nella stessa riunione.
RAM occupata: circa 3,5 GB.
Il computer vola.
Non “funziona discretamente”.
Vola.
Il puntatore si muove quando lo sposto. Le finestre si aprono quando clicco. Le voci umane arrivano sotto forma di voci umane e non di messaggi provenienti da un relitto alieno sepolto sotto l’Antartide.
Quindi si può fare.
Non è un limite inevitabile della tecnologia.
Non è una legge della termodinamica.
Non è scritto nelle tavole di Mosè che una videochiamata debba divorare più memoria di un’intera missione spaziale degli anni Novanta.
È una scelta.
È la scelta di privilegiare l'efficienza di rilascio rispetto all’ottimizzazione. L’abbonamento rispetto al prodotto. La raccolta dati rispetto l'esperienza d'uso. L’aggiunta continua di funzioni rispetto alla stabilità.
Si pubblicano software incompleti, si aggiornano in continuazione e si usa la massa degli utenti come un gigantesco allevamento intensivo di beta tester. Solo che le cavie pagano l’abbonamento. E poi ci raccontiamo che dobbiamo cambiare computer ogni tre anni perché “la tecnologia avanza”.
No.
La tecnologia sta avanzando.
Ma il software sta semplicemente ingrassando.
E questo non è solo un problema economico.
È un problema ambientale.
Milioni di macchine sostituite prima del necessario.
Server più potenti.
Data Center più energivori.
Batterie consumate.
Componenti prodotti, trasportati e smaltiti.
Quanta energia potremmo risparmiare scrivendo codice migliore?
Quanto hardware potremmo continuare a utilizzare se i programmi fossero progettati per funzionare bene, invece di occupare ogni risorsa disponibile come una colonia di nutrie digitali?
Non possiamo parlare seriamente di sostenibilità e poi accettare software che richiedono la potenza di un piccolo reattore nucleare per aprire una chat aziendale. La rincorsa alla potenza è insensata se ogni aumento di capacità viene immediatamente divorato dallo spreco.
Non ci serve soltanto hardware più efficiente.
Ci serve una rivoluzione del software.
Codice più leggero.
Programmi più stabili.
Prodotti finiti prima di essere venduti.
Computer che tornino a servire gli utenti, invece di trasformare gli utenti in carburante statistico.
Perché il degrado della società e dell'ambiente passa anche da qui: dal momento preciso in cui abbiamo iniziato a considerare normale che servano 10 GB di RAM per ascoltare Paolo parlare del budget.
















Commenti