Negli ultimi due anni, i modelli di frontiera dell'AI hanno fatto una promessa audace: che l'uso degli assistenti di codifica porta a una scrittura di codice più veloce, meno bug e meno lavoro faticoso per gli sviluppatori. Strumenti come GitHub Copilot e Cursor, basati su modelli linguistici di grandi dimensioni (LLM) come Claude o GPT, sono progettati per automatizzare le parti noiose della programmazione, così che i programmatori umani possano concentrarsi sui problemi più difficili e creativi della loro base di codice.
Almeno, questa è stata la proposta finora. Ma METR (abbreviazione di Model Evaluation and Threat Research e pronunciato "meter"), un'organizzazione no-profit di Berkeley che valuta le funzionalità dei modelli di frontiera, voleva vedere se esistevano prove reali a sostegno di questa affermazione. Quello che hanno scoperto ribalta la narrazione: gli assistenti di codifica potrebbero effettivamente rallentare gli sviluppatori.
I ricercatori del METR hanno osservato il lavoro di 16 sviluppatori esperti che avevano contribuito a grandi repository open source a cui lavoravano da diversi anni. Ogni sviluppatore ha fornito una lista di attività reali che normalmente affronterebbe, dalle correzioni di bug alle nuove funzioni. I ricercatori poi hanno suddiviso casualmente i compiti in due gruppi: uno in cui gli sviluppatori potevano usare strumenti di AI e uno in cui non potevano.
Quando l'AI era consentita, gli sviluppatori potevano scegliere gli strumenti che volevano; la maggior parte sceglieva Cursor Pro abbinato a Claude 3.5 o 3.7 Sonnet. Registravano gli schermi mentre completavano ogni attività, poi riportavano ciò che pensavano fosse il tempo totale di implementazione. I risultati dello studio sono stati sorprendenti. "Quando agli sviluppatori viene consentito di utilizzare strumenti di AI, impiegano il 19% di tempo in più per completare le attività, un rallentamento significativo che va contro le convinzioni degli sviluppatori e le previsioni degli esperti", hanno scritto gli autori del documento.
Abbiamo chiesto a PJ Hagerty, AI Advocacy Lead di IBM®, e a Chris Hay, Distinguished Engineer, di dare un'occhiata allo studio di METR e di condividere le loro impressioni.
Hagerty ha avvertito del fatto che l'entusiasmo intorno agli assistenti AI potrebbe superare la loro utilità reale. "La promessa che l'AI renda le persone più produttive deriva dalla leadership tecnologica e dalle aziende di gen AI che cercano di capitalizzare l'esaltazione per l'AI", ha detto a IBM Think. "In realtà, l'AI sta apprendendo man mano e probabilmente utilizza le stesse risorse che potrebbe usare uno sviluppatore junior, ovvero stack, Github e ricerche generali su Google, ma senza alcun contesto."
"Penso che sia un risultato rilevante", ha aggiunto Hay. "Ma non penso che dovremmo dire 'Wow, l'AI è inutile. Sono più veloce se faccio da solo'. Penso che ci sia un punto, però, in cui per certe attività è forse più veloce fare da soli piuttosto che convincere l'AI."
Newsletter di settore
Ricevi insight selezionati sulle notizie più importanti e interessanti sull'AI. Iscriviti alla nostra newsletter settimanale Think. Leggi l'Informativa sulla privacy IBM.
L'abbonamento sarà fornito in lingua inglese. Troverai un link per annullare l'iscrizione in tutte le newsletter. Puoi gestire i tuoi abbonamenti o annullarli qui. Per ulteriori informazioni, consulta l'Informativa sulla privacy IBM.
L'altra metà dei risultati dello studio è altrettanto interessante: gli sviluppatori si aspettavano che l'AI accelerasse il loro lavoro del 24% prima di iniziare. Eppure, anche dopo aver sperimentato un rallentamento del 19%, continuavano a credere che l'AI li avesse accelerati del 20%.
Quindi, cosa c'è dietro questo divario di percezione? Abbiamo chiesto a Nate Rush di METR, uno degli autori dello studio. "Questa è una grande domanda, e il nostro lavoro non risponde pienamente", ha detto Rush a IBM Think. "Idealmente, il lavoro futuro esplorerà ulteriormente come le aspettative degli sviluppatori sull'utilità dell'AI influenzano il modo in cui utilizzano gli strumenti [e] perché esiste questo divario di percezione."
Oltre al problema della percezione, lo studio solleva una serie di domande importanti: il risparmio di tempo è comunque l'unico modo per misurare la produttività degli sviluppatori? Come si inseriscono metriche come la qualità del codice e l'impatto sul team nel quadro generale?
"Il nostro studio si concentra solo sul risparmio di tempo, che è solo una misura di un aspetto della produttività", ha affermato Rush. "Non esiste una 'metrica giusta', ma probabilmente esiste una serie di metriche che forniscono informazioni sull'impatto degli strumenti di AI." Ha aggiunto che, sebbene questo studio si sia concentrato sul tempo, il suo team ha trovato il framework SPACE per la produttività degli sviluppatori (SPACE è l'abbreviazione di Soddisfazione, Prestazioni, Attività, Comunicazione ed Efficienza) utile per pensare alle direzioni future.
Un'altra domanda: le versioni dei modelli (in questo caso, Claude 3.5 e 3.7 Sonnet) potrebbero aver influito sulle prestazioni? "Ecco la realtà", ha detto Hay. "Penso che le versioni abbiano importanza. Claude 4 Sonnet è decisamente migliore. Claude 4 Opus è decisamente migliore. Non stiamo parlando di essere migliori di poco. Stiamo parlando di una differenza notevole."
Secondo Quentin Anthony, uno dei 16 partecipanti allo studio, l'elemento umano è un'altra considerazione importante. "Ci piace dire che gli LLM sono strumenti, ma li trattiamo più come un proiettile magico", ha scritto su X. "Gli LLM sono un grande pulsante scorciatoia di dopamina che potrebbe eliminare in un colpo il tuo problema. Continua a premere il pulsante che ha una probabilità dell'1% di risolvere tutto? È molto più piacevole dell'alternativa estenuante, almeno per me." (Anthony ha aggiunto che le distrazioni dei social media sono un altro modo semplice per causare ritardi).
Quindi, man mano che gli assistenti di codifica AI si evolvono e migliorano, dove avranno l'impatto più sostenibile e a lungo termine sullo sviluppo software? "Una volta che saranno diventati stabili, affidabili e utili, penso che gli assistenti di codifica saranno più adatti a livello di QA, ovvero test, garanzia della qualità, accessibilità", ha affermato Hagerty. "Le cose vincolate e basate su regole sono la migliore applicazione di questi strumenti."
Questo perché, ha affermato, scrivere codice è fondamentalmente diverso dal controllarlo. "La codifica stessa è un'attività creativa. Si tratta di costruire qualcosa dal nulla in un ecosistema unico. Gli assistenti AI non colgono questa sfumatura. Ma è probabile che possano effettuare test utilizzando un sistema di regole più generali e universali."
Esplora la libreria IBM di foundation model nel portfolio di watsonx per scalare in sicurezza l'AI generativa per la tua azienda.
Metti l'AI al servizio della tua azienda grazie all'esperienza leader di settore e alla gamma di soluzioni di IBM nel campo dell'AI.
Reinventa i workflow e le operazioni critiche aggiungendo l'AI per massimizzare le esperienze, il processo decisionale in tempo reale e il valore di business.