Nel mondo dello sviluppo software esiste una pratica consolidata chiamata pair programming, in cui due programmatori lavorano insieme allo stesso codice: un metodo che da anni garantisce risultati di qualità superiore, riducendo gli errori e favorendo lo scambio di competenze.
Oggi però l'intelligenza artificiale sta rapidamente sostituendo il collega umano in questa attività collaborativa, e così un team di ricercatori tedeschi ha deciso di indagare con un approccio scientifico rigoroso sui cambiamenti in corso. I risultati, che verranno presentati alla 40esima conferenza internazionale IEEE/ACM sull'ingegneria del software automatizzata a Seoul, rivelano aspetti preoccupanti di questa trasformazione digitale.
L'indagine empirica condotta all'Università del Saarland ha coinvolto 19 studenti con esperienza di programmazione, suddivisi in coppie di lavoro con una configurazione specifica: sei hanno collaborato con un partner umano, mentre sette si sono affiancati a un assistente basato su intelligenza artificiale. La metodologia per misurare il trasferimento di conoscenze è stata sviluppata da Niklas Schneider nell'ambito della sua tesi di laurea, utilizzando GitHub Copilot, lo strumento di assistenza alla programmazione lanciato da Microsoft nel 2021 e ormai ampiamente adottato nel settore.
Sven Apel, professore di informatica che ha coordinato lo studio, sottolinea come la collaborazione tra esseri umani nel pair programming tradizionale generi benefici tangibili: i programmatori si ispirano reciprocamente, evitano soluzioni problematiche e condividono competenze che si diffondono nell'intera organizzazione. L'esperimento ha voluto verificare se questi vantaggi possano replicarsi quando uno dei due partner viene sostituito da un'intelligenza artificiale, assegnando ai partecipanti il compito di sviluppare algoritmi e integrarli in un ambiente di progetto condiviso.
I dati raccolti evidenziano differenze significative nella qualità delle interazioni. Mentre le coppie umane tendono a discutere continuamente i problemi in corso, cercando insieme le soluzioni e condividendo spontaneamente strategie di programmazione efficaci, nei team assistiti dall'AI gli scambi risultano meno intensi e più limitati nel raggio d'azione. La conversazione si concentra quasi esclusivamente sul codice, perdendo quella ricchezza di divagazioni e discussioni più ampie che caratterizza la collaborazione tra colleghi umani.
In altre parole con l'IA non si "chiacchiera", il che è sicuramente un segno di sanità mentale. Tuttavia le chiacchiera, la conversazione fine a se stessa, portano un valore aggiunto al prodotto finale che finisce per perdersi.
Certo, secondo alcuni è il risultato perfetto, perché per ogni minuto di lavoro si sta lavorando "davvero". Ma così facendo - e questo studio lo conferma - si finisce per creare qualcosa di minor valore. E se alla fine l'unica cosa che interessa è l'ultima riga del bilancio, magari non è la migliore delle notizie.
I programmatori accettano il codice dell'AI senza valutazione critica
La scoperta più sorprendente riguarda però l'atteggiamento mentale dei partecipanti. I programmatori affiancati da assistenti AI mostrano una tendenza marcata ad accettare i suggerimenti generati automaticamente senza sottoporli a una valutazione critica, presumendo che il codice funzionerà come previsto. Al contrario, le coppie umane si pongono domande più critiche ed esaminano con maggiore attenzione i contributi reciproci, mantenendo uno scetticismo costruttivo che rappresenta una salvaguardia contro gli errori.
Secondo Apel, questa fiducia eccessiva nei confronti dell'intelligenza artificiale potrebbe estendersi anche ad altri ambiti e riflette una forma di compiacenza: la tendenza a dare per scontato che l'output dell'AI sia probabilmente adeguato, nonostante la consapevolezza che anche questi strumenti possono commettere errori. Il rischio concreto è l'accumulo di debito tecnico, ovvero i costi nascosti del lavoro futuro necessario per correggere questi errori, che finiscono per complicare lo sviluppo successivo del software.
Insomma, salta fuori che alla fine per i programmatori la carta vincente potrebbe essere proprio la loro umanità,forse anche più della loro competenza. Per alcuni di loro potrebbe essere una doccia fredda, ma a pensarci bene forse non è una sorpresa.
Le implicazioni pratiche dello studio suggeriscono che gli assistenti AI, pur utili per compiti semplici e ripetitivi, non sono ancora in grado di replicare la ricchezza della collaborazione umana nello sviluppo software. Per problemi complessi, lo scambio di conoscenze rimane essenziale e funziona ancora meglio tra esseri umani, con l'intelligenza artificiale relegata eventualmente a un ruolo di supporto. Gli strumenti come GitHub Copilot hanno certamente accelerato i tempi di sviluppo e consentono di generare grandi volumi di codice rapidamente, ma questa velocità porta con sé il rischio che gli errori passino inosservati, manifestandosi solo in fasi successive del progetto.
Il gruppo di ricerca tedesco sottolinea la necessità di ulteriori studi su come umani e intelligenza artificiale possano collaborare efficacemente preservando al contempo quello sguardo critico che caratterizza l'interazione tra colleghi. La questione non è tanto se utilizzare o meno questi strumenti tecnologici, ormai parte integrante del panorama professionale, ma come integrarli senza perdere quelle competenze e quella capacità di giudizio che solo l'esperienza umana può garantire nel lungo periodo.