Humour - a key ingredient in software development
Humour and cultural influences play an important role in most human relationships and, indeed, in software. Deepika Tiwari, a PhD student at KTH Royal Institute of Technology, discovered this when, together with her supervisors Benoit Baudry and Martin Monperrus, professors of software engineering, she started to study whether humour and cultural references were present in different software projects.
"What surprised us most when we started looking for humour in software is that it has always been there. Even in the Apollo mission code, we found jokes, which was funny," says Deepika Tiwari, a PhD student in software testing.
It all started as a bit of fun. Deepika, Benoit, and Martin began looking at the code in java-faker, a library used to add fake data for use in software tests. They were amused by the way so many developers from around the world had contributed to humorous code in Java-Faker.
”We found everything, from dialogues from The Big Lebowski to references from Harry Potter, as well as song lyrics. We got curious and wanted to find out if we might find such cultural expression in other, more serious software projects. Why not aim high and submit a paper on humour in software development to a premier software engineering conference?" they wondered.
Barely scratched the surface
To learn more, they contacted software developers through forums such as Reddit and HackerNews, asking them to participate in a survey on whether they had encountered or exercised humour within software projects. Their survey was well-received, and they also met with five developers for in-depth interviews.
Earlier this year, Deepika, Benoit, and Martin presented their paper "With Great Humor Comes Great Developer Engagement" at the International Conference on Software Engineering.
”We made our presentation with both humour and humility. But we have barely scratched the surface and want to look closer at this ecosystem. For example, we already know that memes are a big phenomenon among the global community of software developers, and that would be fun to explore," says Deepika Tiwari.
"Developing software is a creative process, and we’re always looking for examples of how developers use cultural references and practice humour, about how they maintain their projects, and make sure they do so responsibly. A key insight from our work is that humour doesn't detract from the serious side of developing high-quality software.”