Un nuovo terreno di scontro si è aperto nel mondo dei big dell’AI: dopo il rilascio di Codex di OpenAI anche Anthropic ha rilasciato l’anteprima di Claude Code nella propria interfaccia, Google ha invece rilasciato un fork di VSCode integrato con l’AI chiamato Antigravity; tutti questi sistemi si affiancano a GitHub Copilot e alla sua integrazione in Visual Studio Code.
Il panorama dello sviluppo di software con il supporto dell’AI sta evolvendo rapidamente con una progressiva integrazione dell’AI in tutti gli aspetti dello sviluppo, delineando un futuro in cui il codice sarà sempre più spesso generato piuttosto che scritto da programmatori. Facciamo brevemente il punto sulle novità in questo campo e come questo cambierà il settore di sviluppo del software.
Indice degli argomenti
Strumenti per programmare con l’AI: coding rivoluzionato
Ci sono due approcci distinti nell’approcciare il codice:
- quelli AI-oriented in cui l’interfaccia assomiglia ad una chat ma con abilità specifiche per la manipolazione del codice,
- e quelli orientati all’integrazione con gli strumenti di sviluppo (editor e terminali).
La fine dell’anno ha visto nuovi strumenti in entrambi gli approcci.
Codex OpenAI
Codex di OpenAI che è partito come uno strumento prima open source capace di eseguire all’interno del terminale in Linux è stato poi implementato come servizio Web capace di collegarsi a siti come GitHub, scaricare in container allocati nel cloud i repository e analizzarne i contenuti proponendo pull request in risposta alle richieste dell’utente separando chiaramente il contributo dell’AI da altre attività connesse al repository.

Claude
Più recentemente anche Claude ha introdotto in via sperimentale un approccio simile nella propria interfaccia fornendo funzioni analoghe a quelle di Codex. Va detto che per lungo tempo Anthropic è stata la compagnia più attenta alla manipolazione del codice mediante l’AI, non è un caso che è stata proprio questa azienda a proporre il protocollo MCP che è poi divenuto uno standard industriale.
Ma per lungo tempo la manipolazione del codice è stata affidata a strumenti esterni (incluso GitHub Copilot che ha incluso i suoi modelli nelle opzioni per il suo uso) o attraverso l’uso di API. È quindi interessante che si siano decisi ad implementare anche un’interfaccia Web per l’interazione col codice analoga a quella di Codex, che nel frattempo ha rilasciato strumenti per il terminale e per Visual Studio Code.

Lo sviluppo con un’interfaccia orientata alla chat sembra supportare un modello di sviluppo in cui il codice è di fatto un affare della macchina e l’uomo ricopre il ruolo di program manager che interagisce con l’AI che svolge il ruolo di programmatore. Si tratta di una modalità interessante, ma quando l’AI ha allucinazioni o comunque genera codice che richiede raffinamenti presenta non pochi limiti. Pertanto è naturale che a questa modalità (ottima per l’analisi del codice) si affianchi l’uso dei modelli di AI integrati negli strumenti di sviluppo.
Google Antigravity
Ecco che strumenti come Visual Studio Code sono stati rapidamente estesi con plugin e strumenti capaci di consultare i modelli e interagire con il codice. Si tratta di un approccio così importante che Google per non perdere terreno ha creato un nuovo editor basato su VSCode chiamato Antigravity ed ovviamente modificato per mettere al centro del funzionamento l’AI. Così come in VSCode GitHub Copilot è integrato e consente di utilizzare sia modelli in cloud che on-premises anche Antigravity segue la stessa filosofia, ovviamente proponendo Gemini come modello di default.
Usandoli entrambi l’impressione che si ha è che Google abbia agito in modo più aggressivo nel modificare l’editor per portare l’AI in primo piano nel processo di sviluppo rispetto a quanto avviene in VSCode, ma in ogni caso penso che sarebbe stato meglio che avessero contribuito allo sviluppo del primo piuttosto che fratturare un ecosistema di sviluppo che per la prima volta aveva messo d’accordo i più.


In effetti quando si prova l’integrazione di OpenAI Codex in VSCode non si rimpiangono le funzioni di Antigravity pur ricevendo servizi analoghi, a testimonianza che quella di Google sembra più essere un’azione di marketing piuttosto che sostanziale (e in effetti il nome Antigravity non è per niente male). In figura si vedono (a sinistra VSCode con Codex e a destra Antigravity).


Ho utilizzato il repository open source di Eligere (https://github.com/Unipisa/eligere), un sistema open di voto elettronico che ho sviluppato durante la pandemia e che quindi conosco. Ho condotto le stesse analisi nei vari sistemi e Claude Code è il sistema che ha generato subito il risultato che mi aspettavo, seguito da Codex che ha svolto un’analisi assolutamente paragonabile ma ha richiesto un prompt in più per ottenere lo stesso livello di dettaglio che Claude mi ha generato al primo prompt.


Ho effettuato analoghe prove in VSCode e Antigravity ed ottenuto risposte paragonabili, ma decisamente più difficili da fruire nei pannelli di toolbox dell’editor.
Interessante è che sia Anthropic che OpenAI consentono di utilizzare sia l’abbonamento a pagamento che una chiave API per l’uso dello strumento. Si tratta di una mossa decisamente sensata poiché per piccoli progetti uno sviluppatore può usare i modelli top senza dover pagare niente in più dell’abbonamento. Ovviamente questi abbonamenti sono limitati e quindi se si dovesse finire la quota di token inclusa è necessario passare al modello pay per use in cui si usa una API key connessa al sistema di pagamento.
Come cambia lo sviluppo software con l’intelligenza artificiale
Questa rapida maturazione degli strumenti di sviluppo ci impone di tornare periodicamente sull’argomento per fare il punto e capire se vi siano cambiamenti di traiettoria negli sviluppi.
Da quello che si può osservare il settore sembra evolversi nella direzione di un mondo in cui il codice viene sviluppato dall’AI con la supervisione di programmatori.
Bisogna però fare attenzione perché man mano che si usa l’AI nel ciclo di sviluppo emergeranno limiti dello strumento che in parte potranno essere risolti (in pochi anni i modelli sono passati da generare codice sintatticamente errato a codice che spesso funziona alla prima).
Già ora si trovano le prime notizie di codice generato totalmente inadeguato, si tratta spesso di software meno “mainstream” e per cui probabilmente l’AI ha meno informazioni statistiche che possono aiutare nella generazione.
Sicuramente sistemi che espongono database per operazioni CRUD saranno sempre più generati automaticamente ridefinendo il mercato del lavoro con una riduzione del numero di software engineers e developers necessari (trend già palese nel 2025).
Formazione nuova per lo sviluppo codice con AI
Questi cambiamenti non potranno non riflettersi sul ciclo della formazione dove sarà necessario puntare più sulle competenze fondazionali e meno su quelle tecniche, fornendo gli strumenti per comprendere il codice generato piuttosto che scrivere nuovo codice. Si tratta di un passaggio epocale nella formazione che richiederà una revisione completa di una struttura che si è formata negli anni novanta. E anche i numeri dovranno cambiare in un mondo in cui serviranno sempre meno sviluppatori iunior e un numero limitato di figure senior capaci di supervisionare l’operato dell’AI.
Per questo motivo nel corso di laurea magistrale in Computer Science dell’Università di Pisa abbiamo rivisto il corso di Advanced Programming introducendo le tecnologie AI durante tutto il percorso, puntando sugli aspetti più fondazionali della programmazione che consentano una comprensione degli aspetti tecnici, delegando all’AI sia gli approfondimenti specifici di un linguaggio e la generazione del codice.
Per assicurare che l’approccio tenga conto dei limiti della tecnologia agli studenti è stato chiesto come progetto di fine corso di far generare all’AI la soluzione ad problema allegando al contempo i prompt usati per la generazione e le tecniche di verifica usate per assicurare la correttezza dell’output generato.
Sviluppare con l’AI: otto cose da sapere e che si tende a sottovalutare
L’AI rende lo sviluppo più facile e veloce. Ma ci sono alcune implicazioni spesso sottovalutate e che cominciano a emergere in queto periodo.
L’AI non sostituisce il programmatore, lo amplifica
Gli agenti di coding sono bravissimi a scrivere funzioni, abbozzare interfacce, creare giochi o tool partendo da una descrizione in linguaggio naturale. Ma non sanno:
definire una buona architettura;
valutare l’impatto di una scelta tecnica nel tempo;
gestire debito tecnico, versioni, test, rollback.
Tutto questo resta responsabilità umana.
Chi ha già esperienza di sviluppo ottiene risultati eccellenti: l’AI diventa un moltiplicatore di produttività. Chi non ha basi solide rischia invece di produrre sistemi fragili che “sembrano” funzionare, finché non vanno in crisi.
Potentissimi dentro i dati, fragili fuori
Questi strumenti brillano dove hanno visto migliaia di esempi: web, applicazioni moderne, linguaggi diffusi.
Quando però si entra in territori meno battuti – vecchie piattaforme, linguaggi rari, vincoli hardware stretti – la magia svanisce. L’agente comincia a tentare e ritentare, cambia approccio, genera varianti, ma spesso rimane bloccato.
Per sbloccarlo servono:
strumenti aggiuntivi (emulatori, script, tool di analisi) costruiti ad hoc;
istruzioni meticolose;
molta pazienza umana nel guidare il processo.
In pratica, l’AI non elimina il lavoro di “sporcarsi le mani”: lo sposta a un altro livello.
La vera originalità resta un lavoro in salita
I modelli tendono a riprodurre ciò che hanno visto. Se una certa combinazione di parole evoca schemi consolidati (per esempio “gioco di dama” e “scacchiera”), il codice generato tenderà a seguire quella strada, anche quando si chiede esplicitamente qualcosa di diverso.
Cambiare punto di vista, modificare la metafora con cui si descrive il problema, evitare termini “carichi” di significato per il modello: tutto questo è parte del lavoro creativo del programmatore. Non basta dire “fammi qualcosa di nuovo”: bisogna imparare a progettare anche il linguaggio con cui si parla alla macchina.
Il 90% arriva in un lampo, il 10% ti sfinisce
Un agente di coding può generare in pochi minuti:
un prototipo funzionante;
una demo giocabile;
un tool con interfaccia grafica completa.
È la parte entusiasmante: si vede qualcosa girare subito.
Poi arriva il conto:
rifinire i dettagli;
gestire gli edge case;
rendere il sistema robusto;
integrare con altri componenti esistenti.
Qui l’AI si inceppa, si contraddice, rompe quello che funzionava mentre prova ad aggiustare altro. L’ultimo 10% del lavoro, quello che separa un giocattolo da un prodotto affidabile, richiede ancora competenza umana, metodo e tempo.
Troppo facile aggiungere, troppo difficile fermarsi
Quando chiedere una nuova funzione è questione di una frase, il rischio di “feature creep” esplode.
Ogni idea in più diventa:
una nuova modalità di gioco;
un pannello in più nell’interfaccia;
una regola aggiuntiva nel motore.
L’AI obbedisce e riscrive blocchi interi di codice per adattarsi alla nuova richiesta, spesso introducendo bug in sistemi che erano stabili. Servono disciplina e capacità di dire “basta così”: competenze più manageriali che tecniche, che nessun agente automatizza.
Non è intelligenza generale, è memoria a breve termine potenziata
Questi sistemi non “imparano” davvero dai propri errori in modo stabile.
Possono:
ricordare il contesto finché la sessione resta entro certi limiti;
usare il trial-and-error per migliorare una soluzione nel breve termine.
Ma:
dimenticano ciò che è successo in sessioni precedenti;
rifanno gli stessi errori se non si archiviano manualmente le soluzioni e gliele si rifornisce al momento giusto.
Per renderli più efficaci, bisogna trattarli come collaboratori smemorati: documentare, far scrivere report dettagliati, costruire una memoria esterna da cui farli ripartire. Ancora una volta, lavoro umano in più.
Quando “molto veloce” ci droga alla velocità
All’inizio è sbalorditivo: ciò che era un progetto da mesi diventa un prototipo da pomeriggio. Ma la psicologia si adatta in fretta.
Una volta abituati alla velocità dell’AI:
ci si irrita per qualsiasi “pausa” del sistema;
il livello di aspettativa sale;
aumenta la pressione a consegnare sempre di più, sempre prima.
Il tempo risparmiato non si traduce in calma: viene riempito con nuovi obiettivi.
Più produttività, più rischio di burnout
Con questi strumenti è possibile portare avanti molti progetti in parallelo. Ogni idea che prima rimaneva in un cassetto oggi sembra “fattibile” subito.
Il risultato tipico:
giornate spezzate tra decine di thread di lavoro;
alternanza continua tra contesti diversi;
sensazione di non “chiudere” mai davvero un progetto.
Il rischio è lavorare come l’operatore di una macchina che non si stanca mai, senza però avere le stesse riserve di energia. Senza limiti chiari, l’AI non toglie lavoro: lo moltiplica finché ci si esaurisce.















