It seems obvious to say that happy developers will perform better than unhappy ones. After all, if that wasn't the case, why would tech companies like Google, Facebook and others design funky office spaces, full of all sorts of fun things to do and good things to eat? Partly, of course, it's to get software developers to want to come work there in the first place, but it's also to make sure they're happy so they will, presumably, do better work. But, is there is scientific evidence that happy programmers are better programmers?
Well, there is now, thanks to a newly published study from researchers at the Free University of Bozen-Bolzano, Bolzano, Italy. Collecting data from 42 participants, all of whom were computer science students at the university, the researchers set out to test their hypotheses that a person's “affective state” (that is emotion and mood) would affect both creativity and analytical problem solving ability. They didn't hypothesize how one's mood would affect these two things that software engineers require, only that there would be an effect, one way or the other.
To test their theories, the researchers first measured the emotional states of the participants, using a measure devised by psychologists, called the Scale of Positive and Negative Experience Affect Balance (SPANE-B) score. They then tested the creativity of each person by asking him or her to write captions for photographs, the results of which were scored for creativity by a panel of judges. To assess problem solving ability, participants were asked to play the Tower of London game; the results of the game and the time taken to complete it were used to generate an analytical problem-solving score.
The results? While the researchers failed to find a statistically significant effect of mood on creativity, they did find that participants who scored higher on SPANE-B (meaning they were in a better mood) were significantly more likely to score higher in the problem solving assessment.
"The empirical data supported a difference in the analytical problem-solving skills of software developers regarding their affective states. More specifically, the results suggest that the happiest software developers are more productive in analytical problem solving performance."
In other words, happy programmers are better problem solvers. Science says so!
Does this finding really apply to all software developers? The researchers point out that one limitation of their study is that the participants were all students; it may be that this effect doesn't actually exist in professional developers. They say more research needs to be done to further confirm their conclusions.
Nevertheless, these findings at least give credence to tech companies that provide foosballs tables, video game machines and lots of food that developers like in their offices. Until new research proves these results wrong, remember: keep your coders happy!
Read more of Phil Johnson's #Tech blog and follow the latest IT news at ITworld. Follow Phil on Twitter at @itwphiljohnson. For the latest IT news, analysis and how-tos, follow ITworld on Twitter and Facebook.