Per gran parte della storia dell’informatica, programmare è stato un atto di traduzione: comprendere un problema in termini umani, progettarne la soluzione in termini astratti e infine renderlo in una sintassi che una macchina potesse eseguire. Oggi, questo modus operandi sta svanendo. Stiamo entrando in un’epoca in cui l’interfaccia principale non è più la grammatica dei linguaggi di programmazione, ma l’intento.
L’ascesa del Vibe Coding
Tutto è iniziato con il cosiddetto “Vibe Coding”, un termine reso popolare all’inizio del 2025 per descrivere un approccio quasi magico alla programmazione. In questa modalità, il programmatore descrive ciò che vuole in linguaggio naturale, accetta l’output dell’intelligenza artificiale e, se qualcosa non funziona, copia l’errore nel prompt chiedendo all’AI di risolverlo. È un processo guidato dalle “sensazioni” (vibes), rapido e gratificante, perfetto per prototipi, piccoli script o progetti personali. Tuttavia, il Vibe Coding ha un lato oscuro: il debito nascosto. Sebbene l’investimento iniziale (CapEx) sia minimo, i costi operativi (OpEx) esplodono rapidamente a causa di cicli infiniti di correzione degli errori, scarsa coerenza del codice e rischi di sicurezza. In breve, ciò che “sembra funzionare” non è detto che sia pronto per la produzione.
Il salto di qualità: L’Agentic Engineering
Per superare i limiti del Vibe Coding, l’industria si sta spostando verso l’Agentic Engineering. Non si tratta solo di usare l’AI, ma di quanto metodo, verifica e giudizio umano circondano l’output della macchina. In questo paradigma, l’AI agisce come un potente motore di implementazione all’interno di un sistema rigoroso di vincoli e test. Mentre nel Vibe Coding la verifica è opzionale, nell’Agentic Engineering la correttezza è garantita da due meccanismi: test automatizzati per le parti deterministiche ed evaluations (evals) per verificare che l’agente abbia seguito il percorso corretto.
Il Modello Factory e l’importanza dell’Harness
Il cuore metodologico di questa rivoluzione è il Modello Factory (Fabbrica). In questa visione, l’output principale del programmatore non è il codice, ma il sistema che produce il codice. Perché questa “fabbrica” funzioni, il modello AI (il motore) ha bisogno di un’impalcatura esterna: l’Harness (l’imbracatura). Un’equazione fondamentale definisce questo concetto:
Agente = Modello + Harness
L’Harness comprende tutto ciò che circonda il modello: istruzioni, strumenti (API), ambienti di esecuzione isolati (sandboxes), logica di orchestrazione e guardrails (vincoli di sicurezza). Senza un Harness ben configurato, i fallimenti dell’AI sono quasi sempre errori di configurazione del programmatore, non limiti intrinseci del modello.
Come cambia il Ciclo di Vita del Software (SDLC)
L’introduzione dell’AI non rende il vecchio SDLC più veloce ma lo trasforma radicalmente.
- Requisiti e Progettazione: Diventano una conversazione in cui i documenti si trasformano direttamente in criteri di valutazione per l’agente.
- Implementazione: Quella che prima richiedeva settimane ora si contrae in minuti o ore.
- Test e Manutenzione: L’AI non solo genera test, ma permette di navigare e modernizzare codebase legacy che prima erano considerate “troppo rischiose da toccare”.
L’evoluzione del programmatore: Conduttore e Orchestratore
Il ruolo del programmatore sta mutando in due modalità fluide:
- Il Conduttore: Lavora in tempo reale nell’IDE, guidando l’AI colpo su colpo. È ideale per logiche complesse e debug critico.
- L’Orchestratore: Opera a un livello di astrazione superiore. Definisce obiettivi, assegna compiti a più agenti in background e revisiona i risultati finali.
Il programmatore moderno deve gestire il cosiddetto “Problema dell’80%”: l’AI può generare rapidamente l’80% di una funzionalità, ma l’ultimo 20% (casi limite, sicurezza, integrazione fine) richiede ancora il profondo giudizio umano.
Il giudizio è la nuova maestria
Siamo di fronte a un cambio di paradigma: la generazione di codice è ormai un problema risolto; la verifica, il giudizio e la direzione sono la nuova arte. Il futuro non appartiene a chi scrive più righe di codice, ma a chi sa progettare i sistemi migliori per produrlo. Le vibrazioni iniziali ci hanno aperto la porta, ma è l’ingegneria disciplinata che ci permetterà di costruire il software affidabile di domani.

