Humor - en viktig ingrediens i mjukvaruutveckling
Humor och kulturella influenser spelar en viktig roll i de flesta mänskliga relationer och så även i mjukvara. Deepika Tiwari, doktorand vid KTH, upptäckte detta när hon tillsammans med sina handledare Benoit Baudry och Martin Monperrus, professorer i programvaruteknik, började studera om humor och kulturella referenser förekom i olika programvaruprojekt.
– Det som förvånade oss mest när vi började leta efter humor i programvara är att den alltid har funnits där. Till och med i koden för Apollo-uppdraget hittade vi skämt, vilket var roligt, säger Deepika Tiwari, doktorand i programvarutestning.
Det hela började som en rolig grej. Deepika, Benoit och Martin började titta på koden i java-faker, ett bibliotek som används för att lägga till falska data för användning i programvarutester. De blev roade av att så många utvecklare från hela världen hade bidragit till den humoristiska koden i java-faker.
– Vi hittade allt från dialoger från The Big Lebowski, till referenser från Harry Potter, samt låttexter. Vi blev nyfikna och ville ta reda på om vi kunde hitta sådana kulturella uttryck i andra, mer seriösa programvaruprojekt. Varför inte sikta högt och skicka in en artikel om humor i programvaruutveckling till en av de främsta konferenserna inom programvaruteknik?, undrade de.
För att ta reda på mer kontaktade de programvaruutvecklare via forum som Reddit och HackerNews och bad dem delta i en undersökning om huruvida de hade stött på eller använt sig av humor i programvaruprojekt. Undersökningen fick ett gott mottagande och de träffade även fem utvecklare för djupintervjuer.
Tidigare i år presenterade Deepika, Benoit och Martin sin artikel ”With Great Humor Comes Great Developer Engagement” på International Conference on Software Engineering.
– Vi gjorde vår presentation med både humor och ödmjukhet. Men vi har knappt skrapat på ytan och vill titta närmare på det här ekosystemet. Vi vet till exempel redan att memes är ett stort fenomen i den globala gruppen av mjukvaruutvecklare, och det skulle vara kul att utforska, säger Deepika Tiwari.
– Att utveckla programvara är en kreativ process, och vi letar alltid efter exempel på hur utvecklare använder kulturella referenser och humor, hur de underhåller sina projekt och ser till att de gör det på ett ansvarsfullt sätt. En viktig insikt från vårt arbete är att humor inte förtar den allvarliga sidan av att utveckla högkvalitativ programvara.