From Generic to Personalized: Exploring Persona-Aware Code Review Explanations
Dit artikel onderzoekt het potentieel van gepersonaliseerde uitleg bij code reviews door de eerste bevindingen te presenteren van een mixed-methods gebruikersstudie die onthult dat de voorkeuren van ontwikkelaars voor feedbackstijlen variëren op basis van hun probleemoplossende benaderingen, ervaring en rollen, wat uiteindelijk pleit voor mensgerichte AI-systemen die reviewcomments aanpassen aan individuele behoeften.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat je een chef bent die een groep nieuwe koks probeert te leren hoe ze een mislukt recept kunnen herstellen. Je hebt twee zeer verschillende soorten studenten in je keuken. De ene student, laten we hem "Tim" noemen, is een zelfverzekerde, avontuurlijke ontdekkingsreiziger die ervan houdt om direct in het vuur te springen, met nieuwe kruiden te experimenteren en dingen uit te zoeken door te doen. De andere student, "Abi", is een zorgvuldige, procesgerichte planner die zich veiliger voelt als je haar een stapsgewijze kaart geeft, precies uitlegt waarom een stap belangrijk is, en haar waarschuwt waar de hete pan staat voordat ze zelfs maar een pan aanraakt.
Jarenlang is code review (waarbij ontwikkelaars elkaars computercode controleren op fouten) geweest als een chef die dezelfde generieke instructie naar iedereen schreeuwt: "Los dit op!" of "Maak het korter!" Het artikel suggereert dat deze "one-size-fits-all"-aanpak als proberen Tim en Abi te onderwijzen met exact hetzelfde receptenkaartje. Dit leidt vaak tot verwarring, frustratie en het feit dat de code vastloopt in een lus van heen-en-weer discussies in plaats van dat het wordt opgelost.
De onderzoekers achter deze studie stelden een simpele vraag: Wat als we de feedback magisch konden herschrijven om aan te sluiten bij de stijl van de student? Ze wilden zien of een "Tim-stijl" commentaar (kort, actiegericht, stimulerend voor onafhankelijkheid) beter zou werken voor Tim, en of een "Abi-stijl" commentaar (gedetailleerd, risico-bewust, stapsgewijs) beter zou werken voor Abi.
Om dit te testen, hebben ze niet alleen maar gegokt; ze hebben een kleine, echte experiment uitgevoerd. Ze verzamelden 16 ontwikkelaars (een mix van studenten en professionals, en een mix van mensen die code schrijven en mensen die code reviewen). Ze lieten deze ontwikkelaars drie verschillende stukken code zien en vroegen hen naar twee versies van feedback voor elk: één die klonk alsof het geschreven was voor een "Tim" en één die klonk alsof het geschreven was voor een "Abi".
Dit is wat de studie suggereert dat er gebeurde, gebaseerd op hun metingen:
- De "Abi"-groep hield van de kaarten: Wanneer de ontwikkelaars die zichzelf identificeerden met de "Abi"-stijl (vooral de minder ervaren) de gedetailleerde, stapsgewijze uitleg zagen die risico's en leermogelijkheden benadrukte, voelden zij zich veel meer ondersteund. Ze wilden niet dat de feedback kort en krachtig was; ze wilden het "waarom" en het "hoe".
- De "Tim"-groep was kieskeuriger: De "Tim"-ontwikkelaars, die meestal zelfverzekerder zijn, vonden de "Tim-stijl" feedback niet altijd zo prettig als je zou verwachten. Sterker nog, de minder ervaren "Tim"-types hadden soms moeite met de korte, enkel actiegerichte notities omdat ze de ervaring misten om de gaten in te vullen. Echter, de ervaren "Tim"-ontwikkelaars leken de beknopte, directe stijl wel meer te waarderen dan de gedetailleerde versie.
- De meesten wilden diepgang boven snelheid, maar voorkeuren varieerden: Hier is een belangrijke bevinding uit de data: terwijl ontwikkelaars over het algemeen meer waarde hechtten aan "leersupport", "praktische suggesties" en "risicobewustzijn" dan aan beknoptheid, was dit geen universele regel voor iedereen. De "Abi"-deelnemers vonden korte commentaren echt niet prettig, maar de "Tim"-deelnemers hadden gemengde meningen over beknoptheid; sommigen vonden het acceptabel of zelfs prettig, terwijl anderen minder zeker waren. Het lijkt erop dat in de wereld van code, duidelijk en behulpzaam zijn belangrijker is dan snel zijn, maar de mate waarin beknoptheid gewaardeerd wordt, hangt af van wie je bent.
Het artikel beweert niet te hebben uitgesloten dat een enkel type uitleg ooit zou kunnen werken, maar presenteert eerder voorlopige bevindingen en een visie dat één enkele soort waarschijnlijk niet perfect is voor iedereen. De studie laat expliciet zien dat wat voor de één als vanzelfsprekend voelt, voor de ander een verwarrende bende kan zijn, afhankelijk van hun probleemoplossende stijl, wat suggereert dat een "one-size-fits-all"-aanpak waarschijnlijk onvoldoende is voor diverse teams.
Dus, wat is de grote les? De onderzoekers suggereren dat we op de drempel staan van het bouwen van een nieuw soort "slimme assistent" voor code reviews. Stel je een AI voor die niet alleen je code op fouten controleert, maar ook controleert wie jij bent. Als je een zorgvuldige planner bent, geeft het je een gedetailleerde gids. Als je een dappere ontdekkingsreiziger bent, geeft het je een duwtje in de juiste richting.
De auteurs waarschuwen echter dat dit nog maar het begin is. Ze hebben deze voorkeuren gemeten bij een kleine groep van 16 mensen, en hoewel de resultaten veelbelovend zijn, is het nog geen afgewerkt product. Ze waarschuwen dat we voorzichtig moeten zijn om zaken niet te simplificeren of de diversiteit van perspectieven te verliezen. Het doel is niet om menselijk oordeel te vervangen, maar om tools te bouwen die mensen helpen elkaar beter te begrijpen, zodat geen enkele ontwikkelaar zich achtergelaten voelt omdat de feedback in een taal werd geschreven die zij niet spraken.
Kortom, de studie suggereert dat de toekomst van code review niet gaat over sneller zijn; het gaat over persoonlijker zijn, empathischer zijn, en net een beetje meer lijken op een docent die precies weet hoe zijn student het beste leert.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.