GitHub Copilot può essere perfetto per barare esercizi di programmazione CompSci

Nodo di origine: 1630483

Lo strumento di suggerimento del codice AI di Microsoft GitHub Copilot si sta dimostrando così capace che gli educatori potrebbero dover ripensare al modo in cui insegnano informatica.

Il professore di informatica dell'Università del Massachusetts, Amherst, Emery Berger, all'inizio di questo mese ha pubblicato a post sul blog avvertendo gli educatori che "gli studenti armati di [Copilota] porteranno gli Uzi a uno scontro con i coltelli".

La sua preoccupazione è quella Secondo pilota renderà inutili gli esercizi di programmazione tradizionali – parte della formazione informatica ma non tutta – perché Copilot conosce tutte le risposte.

"Per quanto ne so, Copilot è stato specificamente addestrato su tutti i compiti di programmazione introduttiva di sempre", ha scritto Berger. "Il copilota adora i compiti di programmazione introduttiva."

Per quanto ne so, Copilot è stato addestrato in modo specifico su tutti gli incarichi di programmazione introduttiva di sempre

Per gli studenti che utilizzano Copilot, ha scritto, gli educatori potrebbero anche descrivere gli obiettivi del corso come "premere il tasto Tab", in riferimento al comando da tastiera per generare codice da una descrizione dell'output desiderato.

"La programmazione svolge un ruolo importante in molti corsi di informatica, soprattutto nei corsi introduttivi", ha spiegato Berger in un'intervista telefonica con Il registro. Ciò comporta spesso esercizi per ordinare un elenco di numeri in un certo modo o per trovare l'ennesimo elemento di una serie di Fibonacci e così via.

"Il copilota si limiterà a farli", ha detto Berger. "Non è solo che li fa e li fa bene. È anche che li fa utilizzando gli strumenti che vorresti e ti aspetti che i tuoi studenti utilizzino effettivamente per scrivere il loro codice. Se iniziano a scrivere codice e Copilot è installato, completerà la soluzione."

Berger ha affermato che Copilot è diverso dalla ricerca di risposte su Stack Overflow e altre risorse di programmazione Internet.

"Si possono già trovare esempi di codice online", ha detto. "Ma sai, l'istruttore può anche cercarli su Google e poi confrontare quel codice con quello inviato con un rilevatore di plagio."

Copilot è diverso, ha detto, "In realtà genera nuove soluzioni. Non che siano soluzioni super folli, sofisticate e geniali. Ma crea nuove soluzioni che sono superficialmente abbastanza diverse da poter plausibilmente provenire da uno studente."

In realtà genera nuove soluzioni... che sono superficialmente abbastanza diverse da poter plausibilmente provenire da uno studente

Di conseguenza, sostiene Berger, la pedagogia legata alla programmazione deve adattarsi. Un approccio, che lui ridicolizza nel suo post, è "tapparsi le orecchie con le dita e gridare mentre si fa finta che [Copilota] non esista, che è più o meno la stessa cosa che fingere che il plagio non esista, e facendo finta che internet non esista."

"Ma se ti interessa l'integrità del processo... questa è solo una macchina imbrogliona", ha detto. "Come se qualcuno ti desse le specifiche per un compito, devi semplicemente digitarle nei commenti e premere Tab, giusto?"

"Quindi non penso che sia ragionevole o responsabile pensare che tutti si asterranno dall'usare questa fantastica macchina per imbrogliare installata sui loro laptop... Penso che la tentazione sia troppo grande. E onestamente, è ciò che probabilmente lo sviluppo del software è sembrerà, molto, molto presto."

Berger riconosce che Copilot è utile e dice che ha senso che gli sviluppatori vogliano utilizzare il software.

"Abbiamo solo bisogno di ripensare davvero le cose del tutto", ha detto Berger. "Certamente dal punto di vista della valutazione, possiamo semplicemente richiedere alle persone di fare cose in ambienti in cui non possono usare Copilot. Proprio come i bambini delle scuole elementari non riescono a usare la calcolatrice quando fanno i calcoli aritmetici di base. Quindi possiamo avere carta e matita esami."

Ha detto di avere un collega in Illinois che descrive l'utilizzo di computer che sono stati bloccati per i test di programmazione, quindi gli studenti sostengono gli esami in un ambiente controllato. Questo tipo di misure, e cose come gli esami orali, ha suggerito, potrebbero aiutare ad affrontare alcuni degli aspetti negativi della disponibilità di Copilot.

Berger ha anche osservato che Copilot ha aspetti positivi, come la capacità di compilare standard e implementare le API.

"Non penso che memorizzare i dettagli di innumerevoli API sia davvero interessante dal punto di vista intellettuale", ha affermato. «Non è il genere di cose su cui dovremmo davvero insegnare o concentrarci. Conosci la sintassi esatta per creare un DataFrame con queste caratteristiche? Non mi interessa. Se devi cercarlo su Google o su Stack Overflow, o premi semplicemente Tab e lo fa per te, per me va bene."

Ciononostante, sostiene che è importante che gli educatori si assicurino che gli studenti stiano effettivamente imparando il materiale, il che potrebbe significare riconsiderare quanti compiti a casa che possono essere risolti con Copilot dovrebbero contare nel calcolo di un voto complessivo.

Secondo Berger è probabilmente prematuro affermare che Copilot abbia avuto un effetto sugli studenti, perché il software è disponibile al pubblico solo da pochi mesi. Ma sostiene che non passerà molto tempo prima che il suo impatto inizi a manifestarsi.

"Vorrei essere ottimista al riguardo", ha detto Berger. "Ma penso che come minimo dobbiamo solo pensarci. Semplicemente non penso che ci siano molti educatori là fuori che siano consapevoli di quanto sia una rivoluzione questa." ®

Timestamp:

Di più da Il registro