Passa al contenuto principale

Andrej Karpathy: Esistono Due Tipi di Programmatori -- Quelli che Programmano con l'AI e Quelli che Rimanono Indietro

Andrej Karpathy: Esistono due tipi di programmatori -- lo sviluppatore 10x

Andrej Karpathy sa di cosa sta parlando. Ex Director of AI presso Tesla, ricercatore dei primi giorni di OpenAI, creatore del leggendario corso di computer vision di Stanford -- scrive codice e mette in produzione sistemi AI da oltre un decennio. Quando dice che il suo flusso di lavoro di sviluppo ha appena subito la trasformazione più grande in 20 anni, vale la pena prestargli attenzione.

Il suo argomento centrale: strumenti come Deep Code non sono solo un autocomplete fantasioso. Sono un moltiplicatore di leva. Nello stesso tempo che prima dedicavi, puoi consegnare dieci volte tanto. Cosa ancora più importante, puoi prendere in mano progetti che prima sembravano del tutto fuori portata. L'AI sbaglia ancora -- strafà nelle soluzioni, fa supposizioni errate e non obietta quando dovrebbe -- ma il guadagno netto è innegabile. Prima ti adatti, più grande sarà il tuo vantaggio.

Nelle ultime settimane ho scritto un sacco di codice con Claude Code. Ecco cosa ho imparato.

Flusso di Lavoro di Coding

L'ultima ondata di miglioramenti nel coding con LLM ha sconvolto il mio flusso di lavoro. A novembre scrivevo ancora circa l'80% a mano con l'autocomplete dell'IDE e il 20% con l'agente. A dicembre era il contrario: 80% codice scritto dall'agente, 20% io a sistemare le cose.

Ora praticamente parlo il codice per farlo esistere. Descrivo quello che voglio in inglese semplice e lo guardo materializzarsi. Fa un po' male all'ego del programmatore, a essere onesti. Ma la capacità di operare su un intero codebase contemporaneamente -- refactoring, scaffolding, collegare le cose -- è troppo buona per lasciarsela sfuggire. Soprattutto una volta che impari il ritmo: regolare la configurazione, capire cosa azzecca e dove invece si schianta.

Questa è la singola trasformazione più grande nel mio flusso di lavoro di sviluppo in circa 20 anni che scrivo codice. Ed è successa nel giro di poche settimane. Direi che una porzione significativa di ingegneri (percentuali a doppia cifra) sta già passando per la stessa cosa. Il grande pubblico? Forse una percentuale a singola cifra bassa ha idea che stia succedendo.

IDE / Swarm di Agenti / L'Inevitabilità degli Errori

Girano due narrazioni: "Gli IDE sono morti" e "sciami di agenti autonomi faranno tutto." Penso che entrambe siano esagerate al momento.

I modelli sbagliano ancora. Se ti importa davvero del progetto, tieni d'occhio come vanno le cose. Tengo un IDE completo aperto in una finestra laterale e lo sorveglio come un falco.

Gli errori però sono diversi ora. Non sono errori di sintassi. Sono più subdoli -- errori concettuali, del tipo che farebbe un junior di fretta. Il modello riempie silenziosamente le supposizioni al posto tuo, le sbaglia, non le riconta mai e costruisce su quella premessa sbagliata fino in fondo.

Inoltre non gestisce bene la propria incertezza. Non si ferma a chiedere "ehi, vuoi A o B qui?" Non segnala le incoerenze. Obietta di rado. È un po' troppo zelante nel compiacere. Fargli scrivere prima un piano e poi eseguirlo rispetto a quel piano aiuta molto. Sinceramente penso ci sia un vero bisogno di una modalità di pianificazione leggera e inline.

Ama anche strafare dal punto di vista dell'architettura. Layer di astrazione ovunque. Codice che sembra gonfio. E quasi mai ripulisce il codice morto che crea.

L'ho visto sputare fuori un'implementazione mostruosa di mille righe -- lenta, fragile, piena di deviazioni inutili. Poi gli chiedo: "Possiamo fare questa cosa in modo più semplice?" e lui subito: "Ah, certo!" e condensa tutto in cento righe.

A volte cancella o riscrive commenti e codice che non c'entravano nulla con il task, solo perché non li capiva o non gli piacevano. Ho letteralmente aggiunto note nel mio CLAUDE.md dicendogli di non farlo, e succede ancora. Ma nonostante tutto questo, il miglioramento netto è enorme. Non riesco davvero a immaginare di tornare indietro.

Ognuno trova il proprio ritmo. Il mio: un paio di sessioni di Claude Code in Ghostty a sinistra, IDE a destra per leggere il codice e fare modifiche chirurgiche.

Tenacia

Guardare un agente insistere su un problema è davvero affascinante. Non si stanca. Non si scoraggia. Un essere umano avrebbe già detto "vabbè, riprovo domani" un'ora fa. Lui invece... continua e basta.

A volte lo guardi lottare per quella che sembra un'eternità. Poi, 30 minuti dopo, finalmente lo risolve. In quel momento provi questa sensazione reale di "cavolo, questa roba ha un'aria da AGI."

Ti rendi conto di una cosa: la resistenza mentale e fisica è un collo di bottiglia fondamentale nel portare a termine il lavoro. Gli LLM hanno appena fatto saltare il tetto.

Accelerazioni

È difficile mettere un numero su quanto gli LLM ti rendano più veloce. Sono sicuramente più veloce nelle cose che già facevo. Ma il cambiamento più grande è che ora faccio cose che non avrei proprio tentato.

Due motivi:

  1. Un sacco di piccoli task che prima sembravano "non valgono lo sforzo" ora sono banali.
  2. Codebase che avrei evitato -- perché mi mancavano le conoscenze o le competenze -- ora sembrano abbordabili.

Quindi sì, è accelerazione. Ma più di questo, è espansione. La gamma di cose che sono in grado di fare si è allargata.

Leva

Ecco una delle cose più potenti degli LLM: sono davvero bravi a iterare in un ciclo finché non raggiungono un obiettivo che hai definito. Molti di quei momenti dal "sapore AGI" nascono esattamente da questo.

La chiave: non fare microgestione. Dì cosa significa il successo e lascia che trovi la strada.

Puoi fargli scrivere prima i test, poi fargli superare i suoi stessi test. Collegarlo a un browser via MCP e fagli fare un ciclo. Scrivere un algoritmo semplice e ovviamente corretto e dirgli "ora ottimizza le performance mantenendo esattamente gli stessi risultati."

Il cambio di mentalità è dall'imperativo al dichiarativo. Invece di "fai A, poi B, poi C," dici "ecco come deve essere il risultato." L'agente itera da solo per qualche giro e ottieni un layer extra di leva gratis.

Divertimento

Non me lo aspettavo, ma programmare è diventato effettivamente più divertente. Tutto il lavoro noioso e ripetitivo viene assorbito dall'agente. Quello che rimane sono le parti creative.

Inoltre mi blocco molto meno. Bloccarsi fa schifo. Ora c'è quasi sempre una via per "collaborare con lui e almeno fare qualche progresso," il che rende più facile iniziare.

Detto questo, ho incontrato persone che provano l'opposto -- il coding con LLM le rende meno felici.

A lungo termine, penso che questo divida gli ingegneri in due campi: chi ama l'atto di scrivere codice e chi ama costruire cose.

Atrofia

Lo sento già: la mia capacità di scrivere codice da zero si sta lentamente affievolendo. Nel cervello, la "generazione" (scrivere codice) e la "discriminazione" (leggere e revisionare codice) sono due abilità distinte. Scrivere codice richiede di memorizzare un sacco di sintassi granulare. Leggere codice riguarda la comprensione di logica e struttura. Quindi, anche se il tuo muscolo della generazione si indebolisce, puoi ancora revisionare il codice in modo efficace -- notare cosa non torna, trovare i bug.

Slopacalisse

Mi sto preparando: il 2026 potrebbe essere l'anno della grande esplosione di scademia di contenuti.

GitHub, Substack, arXiv, YouTube, Reddit -- ogni piattaforma di contenuti digitali verrà inondata di materiale generato dall'AI. Vedremo un'onda di teatro della produttività potenziato dall'AI, demo spettacolari che sembrano incredibili ma non reggono. Sparpagliate lì in mezzo ci saranno anche vere e tangibili conquiste di produttività. Ma dovrai andarle a cercare.

Domande

Come sarà l'ingegnere 10x da qui in avanti? Il divario tra ingegneri medi e top si allargherà ancora di più? La mia ipotesi: molto più largo.

I generalisti inizieranno a superare gli specialisti? Gli LLM sono eccezionalmente bravi a riempire i dettagli (il micro) ma più deboli nel pensiero di insieme e nella strategia di lungo periodo (il macro). Questa inclinazione favorisce chi sa vedere l'intera scacchiera.

Come si proverà a programmare con gli LLM tra cinque anni? StarCraft? Factorio? Eseguire un pezzo di musica?

Quanta parte della società è in realtà limitata dal lavoro intellettuale digitale?

Conclusione: Dove Ci Lascia Tutto Questo?

Le capacità degli agenti LLM -- Claude Code in particolare -- hanno superato una soglia di coerenza generale intorno a dicembre 2025. Questo ha innescato una transizione di fase nell'ingegneria del software. Il modo in cui le cose vengono fatte è cambiato di un ordine di grandezza, praticamente dall'oggi al domani.

In questo momento sembra che l'intelligenza abbia corruto più veloce di tutto ciò che la circonda. L'integrazione degli strumenti non ha tenuto il passo. I team hanno bisogno di nuovi flussi di lavoro e modelli di collaborazione. L'industria sta ancora digerendo ciò che è appena successo.

Il 2026 sarà intenso. Tutti si stanno affannando per assorbire e interiorizzare questa nuova capacità. La finestra è aperta ora. Le persone che lo capiscono presto avranno un vantaggio enorme.