Jo flere banneord i koden, jo bedre kode

Tysk bacheloroppgave har analysert over 3.000 GitHub-prosjekter med banneord.

I følge en tysk bacheloroppgave kan banning i kode være et tegn på bedre kodekvalitet. 📸 : Jørgen Jacobsen
I følge en tysk bacheloroppgave kan banning i kode være et tegn på bedre kodekvalitet. 📸 : Jørgen Jacobsen Vis mer

(Artikkelen ble først publisert 15. februar 2023)

Nå kan du måtte tenke to ganger før avslår en pull request med banneord i seg.

Student Jan Strehmel, ved tyske Karlsruher Institut für Technologie, har nemlig funnet tegn på at kodeprosjekter med banneord i seg har en signifikant høyere kodekvalitet en dem uten.

I en bacheloroppgave datert 1. februar skriver Strehmel at funnet kom etter en analyse av over 3.800 prosjekter på GitHub med banneord i koden.

Sammenlignet C-kode

Strehmel skriver i konklusjonen til oppgaven at prosjektene med banneord i seg ble sammenlignet med 7.600 prosjekter på GitHub som ikke inneholdt grove ord.

All kode ble hentet ut via GitHub sitt Git-API, i følge oppgaven.

Deretter ble kodelinjene analysert med open source-verktøyet SoftWipe, som brukes til å sjekke kodekvalitet på programvare skrevet i C og C++. Det var kun C-kode som inngikk i undersøkelsen.

Forbedrer ikke koden automatisk

Strehmel skriver i introduksjonen til bacheloroppgaven at hypotesen de la til grunne for undersøkelsen var at bruk av banneord vitner om "høyere emosjonell involvering av programmereren i kodens kompleksitet".

Og at dette altså skal gi bedre kvalitet. Noe resultatene ser ut til å støtte.

image: Jo flere banneord i koden, jo bedre kode

Snittet fra SoftWipe viser nemlig at kode med banneord får en gjennomsnitt-score på 5,87, mens kode uten banneord bare har et snitt på 5,41. Skalaen i SoftWipe går fra 0 til 10.

Strehmel skriver i oppgaven at med disse resultatene konkluderer de at det finnes en korrelasjon mellom banning og forbedret kodekvalitet.

Men samtidig kommer han med en advarsel:

"Denne korrelasjonen impliserer ikke kausalitet. Altså vil ikke banning automatisk forbedre koden din".