Ogni giorno viene scritto sempre più codice con l'aiuto dell'IA. Secondo Sundar Pichai, CEO di Google, alla fine del 2024 oltre il 25% del codice di Google era stato scritto dall'IA. Il CEO di Robinhood afferma che la maggior parte del codice distribuito da Robinhood è ora scritto dall'IA. Il termine "vibe coding" (reso popolare in un tweet da Andrej Karpathy) è entrato nel lessico comune: significa quando ci si abbandona completamente alle "vibrazioni" della programmazione e si lascia che l'IA prenda il comando e scriva il codice al posto nostro.
Startup come Cursor, Lovable e Replit stanno cercando di abbattere le barriere all'accesso alla programmazione: in pratica, avvicinarsi alla programmazione è così facile che chiunque in azienda può scrivere codice, o addirittura realizzare un sito web o un'app completi senza alcuna conoscenza di Python o React.
Il sondaggio StackOverflow 2025 tra gli sviluppatori rivela quanto questa tendenza sia ormai diffusa. L'84% degli sviluppatori utilizza o intende utilizzare strumenti di intelligenza artificiale nel proprio flusso di lavoro, mentre il 51% degli sviluppatori professionisti li utilizza quotidianamente. Ciò rappresenta un cambiamento significativo nel modo in cui viene scritto il codice in tutto il settore.
Tuttavia, l'indagine mette in luce anche alcune difficoltà legate a questa fase di transizione verso lo sviluppo assistito dall'IA. Sebbene il 52% degli sviluppatori affermi che gli strumenti basati sull'IA abbiano influito positivamente sulla propria produttività, il grado di soddisfazione nei confronti di tali strumenti è sceso da oltre il 70% al 60% nel 2025. Dopo un iniziale periodo di entusiasmo e sperimentazione con questi strumenti generati dall'IA, sembra che ora gli sviluppatori abbiano un atteggiamento più neutrale nei loro confronti.
La causa della frustrazione è eloquente: il 66% degli sviluppatori è frustrato da «soluzioni di IA che sono quasi giuste, ma non del tutto», mentre il 45% ritiene che il debug del codice generato dall'IA richieda più tempo del previsto. Solo il 3% degli sviluppatori «si fida ciecamente» dei risultati forniti dagli strumenti di IA, mentre il 46% nutre una forte sfiducia nei confronti della loro accuratezza.
Ciò crea un paradosso interessante: gli sviluppatori si affidano sempre più all'IA per scrivere codice, ma non si fidano completamente di ciò che essa produce. Come sottolinea il sondaggio, il 75% degli sviluppatori chiederebbe comunque aiuto a un essere umano quando «non si fida delle risposte dell'IA», ponendosi come «arbitro finale della qualità e della correttezza». Secondo Simon Willison, lui "non userebbe codice generato dall'IA per progetti che intende rilasciare a meno che non ne abbia rivisto ogni riga. Non solo c'è il rischio di allucinazioni, ma il desiderio del chatbot di essere accondiscendente significa che potrebbe dire che un'idea inutilizzabile funziona. Questo è un problema particolare per chi di noi non sa come modificare il codice. Rischiamo di creare software con problemi intrinseci".
Sebbene il codice generato dall'intelligenza artificiale sia ormai una realtà consolidata, ci sono sicuramente alcuni casi in cui è ancora opportuno verificare che il codice sia stato scritto da un essere umano.
Nel processo di selezione, quando si assume uno sviluppatore di software, è importante verificare che il programmatore sia pienamente in grado di scrivere codice di alta qualità senza l'ausilio dell'intelligenza artificiale. Inoltre, è importante valutare la sua comprensione del codice, affinché sia in grado di eseguire con successo il debug e la diagnosi di codice difettoso generato o assistito dall'intelligenza artificiale nel corso del proprio lavoro.
Nel campo dell'istruzione, è importante insegnare agli studenti a programmare senza l'ausilio dell'intelligenza artificiale. Con un'assistenza AI eccessiva, gli studenti possono perdere di vista i concetti fondamentali e tralasciare l'apprendimento delle competenze necessarie per diventare ingegneri del software di successo. Sebbene sia probabile che questi studenti abbiano accesso all'assistenza AI durante il loro lavoro, come accennato dal sondaggio tra gli sviluppatori di StackOverflow, senza una solida base, gli studenti non saranno in grado di correggere il codice errato generato dall'AI né di capire cosa c'è di sbagliato in primo luogo.
Conformità e sicurezza. Molti quadri normativi in materia di conformità considerano il codice generato dall'IA come un elemento a rischio più elevato a causa di potenziali "allucinazioni" e bug. Vi sono inoltre importanti aspetti da considerare in materia di licenze e diritti d'autore: i modelli di IA potrebbero riprodurre inavvertitamente codice con licenze incompatibili, causando violazioni della conformità. Inoltre, resta ancora da chiarire se il codice generato dall'IA possa essere considerato di proprietà esclusiva o soggetto a diritti d'autore.
Provenienza e tracciabilità del codice. Prima dell'avvento dell'IA, strumenti come `git blame` consentivano di risalire facilmente a chi avesse scritto ogni riga di codice e al motivo delle modifiche apportate. Con l'IA che genera grandi quantità di codice, diventa più difficile per gli sviluppatori ricordare il contesto e il ragionamento alla base di ogni riga. Essere in grado di individuare e tracciare il codice generato dall'IA aiuta nella manutenzione del codice, nel debug e nella gestione delle risorse. I CTO e i responsabili dell'ingegneria possono utilizzare queste informazioni per valutare l'efficacia dei diversi modelli di IA e garantire che i loro team stiano utilizzando i migliori strumenti disponibili.
Nel complesso, Pangram è in grado di individuare in modo prudenziale la maggior parte del codice generato dall'IA, specialmente quando il codice supera le 40 righe. Pangram adotta un approccio prudenziale perché raramente segnala il codice scritto da esseri umani come generato dall'IA, ma non rileva circa l'8% del codice generato dall'IA, classificandolo erroneamente come scritto da esseri umani.
Se si considerano tutti i frammenti di codice, Pangram non rileva circa il 20% del codice generato dall'IA, poiché la maggior parte dei frammenti brevi generati dall'IA sono modelli standard indistinguibili dal codice scritto dall'uomo oppure semplicemente non presentano caratteristiche sufficienti per essere individuati.
| Metrico | Punteggio |
|---|---|
| Precisione | 96,2% (22.128/22.997) |
| Tasso di falsi positivi | 0,3% (39/13.178) |
| Tasso di falsi negativi | 8,5% (830/9.819) |
| Metrico | Punteggio |
|---|---|
| Precisione | 89,4% (41.395/46.319) |
| Tasso di falsi positivi | 0,4% (99/25.652) |
| Tasso di falsi negativi | 23,3% (4.825/20.667) |
Per eseguire questa analisi utilizziamo il set di dati di GitHub. Per il codice di IA, utilizziamo una semplice fase di mirroring sintetico in due fasi:
Per creare il set di dati utilizziamo GPT-4o, Claude Sonnet, Llama 405b, Mistral 7B, Gemini 1.5 Flash e Gemini 1.5 Pro.
Il codice generato dall'IA è più difficile da individuare rispetto ai testi generati dall'IA, poiché presenta un numero significativamente inferiore di gradi di libertà: un programmatore ha infatti meno possibilità di scelta stilistica rispetto a uno scrittore. Notiamo nei falsi negativi che osserviamo che molti file semplicemente non lasciano molto spazio alla creatività o alla flessibilità, come il codice boilerplate generato automaticamente o i file di configurazione. Anche i linguaggi di basso livello, come il C, l'Assembly e il codice del compilatore, sono molto più rigidi nella loro sintassi e quindi ci sono meno segnali in grado di indicare quando il codice è generato dall'IA.
Se state cercando indizi che indichino che il codice sia stato generato dall'intelligenza artificiale, vi consigliamo quanto segue:

Bradley è un ricercatore nel campo dell'intelligenza artificiale ed è esperto nello sviluppo di prodotti basati sul deep learning per il settore industriale. Recentemente ha guidato il gruppo di ricerca sul deep learning presso Absci, un'azienda che si occupa di scoperta di farmaci tramite intelligenza artificiale generativa, mentre in precedenza ha fatto parte del team principale di visione artificiale di Tesla Autopilot.
Durante gli studi universitari, Bradley è stato autore di numerose pubblicazioni nel campo della ricerca sul deep learning presso lo Stanford Vision Lab. Ha conseguito una laurea in fisica e un master in intelligenza artificiale presso l'Università di Stanford. Oltre all'intelligenza artificiale, nutre un grande interesse per l'istruzione e la filosofia ed è un appassionato giocatore di golf.






