Vai al contenuto

Design come Nuovo Codice

Tesi centrale formulata da Dave Rensin a fondamento dell'Elephant-Goldfish Model: quando sono i modelli AI a scrivere il codice, l'artefatto primario dell'ingegneria del software cessa di essere il codice sorgente e diventa il documento di design ("Design is the new code"). 1

Il codice che svanisce (The Vanishing Code) e lo shift left dei giudizi di design

Storicamente i giudizi di design — il "perché" e il "come" di un sistema — risiedevano in due luoghi: nei design doc e nel codice stesso. 1 Quando un essere umano scrive codice, lascia dietro di sé nella logica una scia continua di micro-decisioni. 1

Se però è l'AI a scrivere il codice, l'umano non prende più quelle micro-decisioni riga per riga. 1 Se non si costringono tutti quei giudizi di design a "spostarsi a sinistra" (shift left) dentro il documento di design prima che il codice venga scritto, il sistema risultante diventa completamente incomprensibile per l'essere umano che ne è in ultima istanza responsabile (confronta con l'obsolescenza del craft riga-per-riga in Kent Beck e lo spostamento del layer di comprensione in LLM come strumento). 1

Lo stato liminale e i due futuri possibili

Secondo Rensin oggi ci troviamo in uno stato liminale: abbiamo ancora bisogno del codice perché abbiamo ancora bisogno di rigore, ma il codice revisionato al 100% da esseri umani è un passaggio intermedio destinato a svanire (a vanishing intermediate step). 1

L'industria finirà in uno di due scenari possibili: 1

  1. La tormenta di codice (blizzard): i modelli produrranno così tanto codice che diventerà un'impossibilità pratica per gli esseri umani revisionarlo tutto. 1
  2. I binari diretti (binary): i modelli inizieranno semplicemente a produrre direttamente i binari eseguibili, saltando del tutto il codice sorgente (vedi anche Reimplementazione del software via LLM). 1

Non importa quale dei due scenari si realizzerà: che sia in una tormenta di codice o in un binario diretto, il codice diventerà opaco per noi, e quando il codice diventa opaco l'unico artefatto che conta è il design ("Design is the new code"). 1

"Come for the Speed; Stay for the Comprehension" e responsabilità umana

Stiamo entrando in un mondo in cui digitare sintassi dentro un IDE non è più il lavoro primario di un software engineer: il lavoro è l'intento, il lavoro è l'architettura, il lavoro è il giudizio di design. 1

  • La responsabilità non è delegabile all'agente: alla fine della giornata, un essere umano sarà sempre ritenuto responsabile per qualsiasi azione compiuta da un agente, e non ci si può ragionevolmente aspettare che una persona si assuma quel rischio se non comprende davvero il sistema che l'agente costruisce sotto la sua direzione. 1
  • Firmare il proprio lavoro: se ci si appoggia interamente all'AI per scrivere codice senza forzare i giudizi di design dentro documenti leggibili dagli umani e testati rigorosamente (tramite il protocollo del Pesce Rosso in Elephant-Goldfish Model), si perde la capacità di mettere con fiducia il proprio nome sul lavoro che si è chiamati a garantire (vedi anche Ownership collettiva del codice). 1
  • Il de-risking definitivo: trattare il design come il nuovo codice allinea il bisogno umano di comprensione con la capacità di velocità dell'AI, costituendo l'esercizio definitivo di riduzione del rischio. 1

Vedi anche: Elephant-Goldfish Model, Dave Rensin, Reimplementazione del software via LLM, LLM come strumento, Ownership collettiva del codice, Kent Beck, Spec-Driven Development e Dark Factory Agentica


Fonti e Riferimenti