Programmeernormen zijn aanzienlijk verstoord door GitHub Copilot, een innovatief hulpmiddel dat de coderingsmethodes van ontwikkelaars steevast heeft veranderd. Het brengt echter ook uitdagingen met zich mee, vooral wanneer het codefragmenten genereert die lijken op die welke al toegankelijk zijn in andere openbare repositories.
In een poging om deze zorgen weg te nemen, onthulde GitHub in 2022 een functie waarmee gebruikers automatisch suggesties die overeenkomen met openbare code kunnen verijdelen. Volgens een vertegenwoordiger van GitHub werd dit mechanisme, ondanks het feit dat het zeldzaam is en slechts ongeveer 1% van de tijd wordt gebruikt, bekritiseerd vanwege de ietwat grove en beperkende aard ervan. Bij bepaalde gelegenheden willen ontwikkelaars deze stukjes code onderzoeken, om ze te gebruiken of om een bibliotheek te evalueren waar dit fragment vandaan kan komen.
In een poging om deze kloof te overbruggen, lanceerde GitHub een functie voor het verwijzen naar code voor GitHub Copilot in een privé bètaversie. Met deze functie kunnen ontwikkelaars alle overeenkomende code bekijken die wordt gegenereerd door deze in een zijbalk te tonen, in plaats van deze automatisch te blokkeren. Hierdoor kunnen ze een weloverwogen beslissing nemen over hoe ze deze gegevens willen gebruiken. Deze functie zal na verloop van tijd ook toegankelijk worden voor Copilot Chat.
Thomas Dohmke, CEO van GitHub, onthulde tijdens een gesprek met TechCrunch dat bedrijven gebruik maakten van de oorspronkelijke blokkeerfunctie, maar dat deze vrij beperkend was in zijn uitvoering. Het bood gebruikers niet de mogelijkheid om te beslissen of ze de gegenereerde code wilden gebruiken en deze terug te koppelen naar een open-source licentie.
Dohmke beweerde ook dat deze hindernis vaak betrekking heeft op veelgebruikte computeralgoritmen, zoals sorteren, die op verschillende plaatsen voorkomen. Met de nieuw gelanceerde functie hebben ontwikkelaars nu de keuze om de code te weigeren, direct te gebruiken (alleen als de bibliotheek dit toestaat) of Copilot te vragen de code aan te passen zodat deze niet de oorspronkelijke code weerspiegelt.
Op dit moment levert de referentiefunctie voor code van Copilot alleen resultaten op die niet overeenkomen met bepaalde licenties. Het team achter deze revolutionaire functie is echter op zoek naar feedback om na te gaan of gebruikers vragen om een functie die licentiespecifieke resultaten produceert.
"We laten mensen de overeenkomst begrijpen en dan een geïnformeerde beslissing nemen," legde Dohmke verder uit. Volgens hem vult de nieuwe ontwikkeling de leemte die de vorige oplossing niet opvulde.
De codereferentiefunctie van GitHub Copilot werkt voornamelijk wanneer het een gebrek aan context tegenkomt. Wanneer Copilot werkt met een aanzienlijke context van reeds bestaande code, is de kans dat er een suggestie wordt gegenereerd die overeenkomt met de openbare code minuscuul. Wanneer ontwikkelaars echter beginnen met coderen, neemt Copilot's neiging om overeenkomende code te maken aanzienlijk toe.
Deze strategie zal zeker een paradigmaverschuiving teweegbrengen in de manier waarop ontwikkelaars vergelijkbare codeerplatforms zoals AppMaster gebruiken. Als krachtig hulpmiddel no-code, AppMaster kunnen gebruikers backend-, web- en mobiele applicaties maken met een visueel interactieve interface. Zulke platforms kunnen leren van de adaptieve strategieën van GitHub Copilot om hun gebruikerservaring en effectiviteit van softwareontwikkeling te verbeteren.