GitHub Copilot is misschien perfect voor het valsspelen van CompSci-programmeeroefeningen

Bronknooppunt: 1630483

De AI-codesuggestietool GitHub Copilot van Microsoft laat zien dat het zo capabel is dat docenten misschien moeten heroverwegen hoe ze informatica onderwijzen.

Emery Berger, hoogleraar computerwetenschappen aan de Universiteit van Massachusetts Amherst, publiceerde eerder deze maand een blogpost warning educators that "students armed with [Copilot] will be bringing Uzis to a knife fight."

Zijn zorg is dat Copilot zal traditionele programmeeroefeningen – onderdeel van de opleiding informatica, maar lang niet alles – zinloos maken omdat Copilot alle antwoorden kent.

"As far as I can tell, Copilot was specifically trained on all the intro programming assignments ever," Berger wrote. "Copilot frickin’ loves intro programming assignments."

Voor zover ik weet, is Copilot specifiek getraind in alle intro-programmeeropdrachten ooit

For students using Copilot, he wrote, educators might as well describe their course objectives as "hitting the Tab key," in reference to the key command to generate code from a description of the desired output.

"Programming plays a role in a lot of computer science classes, and especially in introductory computer science classes," explained Berger in a phone interview with Het register. Vaak gaat het om oefeningen om een ​​lijst met getallen op een bepaalde manier te sorteren of om het n-de element van een Fibonacci-reeks te vinden, enzovoort.

"Copilot will just do them," said Berger. "It's not just that it does them and it does them well. It's also that it does them using the tools that you would want and expect your students to actually be using to write their code. If they start writing code and Copilot is installed, it will fill out the solution."

Berger zei dat Copilot anders is dan het zoeken naar antwoorden op Stack Overflow en andere bronnen voor internetprogrammering.

"You can already find examples of code online," he said. "But you know, the instructor can also Google for them and then compare that code against the code submitted with a plagiarism detector."

Copilot is different, he said, "It actually generates novel solutions. Not like they're super-crazy, sophisticated, genius solutions. But it makes new solutions that are superficially different enough that they plausibly could have come from a student."

It actually generates novel solutions ... that are superficially different enough that they plausibly could have come from a student

As a result, Berger argues, pedagogy related to programming needs to adapt. One approach, which he ridicules in his post, is "to plug our ears with our fingers and kind of shout while pretending [Copilot] doesn't exist, which is more or less the same thing as pretending plagiarism doesn't exist, and pretending that the internet doesn't exist."

"But if you care about the integrity of the process … this is just a cheating machine," he said. "Like somebody gives you a spec for an assignment, you just type in this back in comments and hit Tab, right?"

"So I don't think that it's reasonable or responsible to think that everybody is going to refrain from using this amazing cheating machine that's installed on their laptops … I think that the temptation is too great. And honestly, it's what software development is probably going to look like, very, very soon."

Berger erkent dat Copilot nuttig is en zegt dat het logisch is dat ontwikkelaars de software willen gebruiken.

"We just need to really rethink things altogether," said Berger. "Certainly from the evaluation standpoint, we can obviously just require people to do things in environments where they can't use Copilot. Just like elementary school kids don't get to use calculators when doing basic arithmetic. So we can have paper and pencil exams."

Hij zei dat hij een collega in Illinois heeft die beschrijft hoe ze computers gebruiken die zijn vergrendeld voor programmeertests, zodat studenten hun examens in een gecontroleerde omgeving afleggen. Dit soort maatregelen, en zaken als mondelinge examens, suggereerde hij, zouden kunnen helpen om enkele van de negatieve aspecten van de beschikbaarheid van Copilot aan te pakken.

Berger merkte ook op dat Copilot positieve aspecten heeft, zoals de mogelijkheid om boilerplate in te vullen en API's te implementeren.

"I don't think that memorizing the minutia of countless APIs is really interesting intellectually," he said. 'It's not the kind of thing we should really be teaching or focusing on. Do you know the exact syntax to create a DataFrame with these characteristics? I don't care. If you have to look it up on Google or on Stack Overflow, or you just hit Tab and it just does it for you, that sounds fine to me."

Nonetheless, he argues it's important for educators to make sure students are actually learning the material, which may mean rethinking how much homework assignments that can be solved with Copilot should count when calculating an overall grade.

Berger said it's probably premature to say that Copilot has had an effect on students, because the software has only been publicly available for a few months. But he argues it won't be long before its impact starts to show.

"I would like to be optimistic about this," said Berger. "But I think at minimum, we just need to be thoughtful of it. I just don't think that there are many educators out there who are aware of how much of a revolution this is." ®

Tijdstempel:

Meer van Het register