What Ruins A Developer's Day
Written by Janet Swift   
Wednesday, 16 June 2021

The quick answer to this is interruptions and meetings. GitHub has taken a detailed look at what helps developers have good days in the Good Day Project and discovers that simply taking a few minutes to reflect at the end of the working day made a big difference to how they felt.


Introducing the results of the Good Day Project, Eirini Kallimvako writes: 

Developers want to make their work days better — and to make them better consistently and reliably. It feels great to get into a flow and have an awesome day or an awesome week, but can be frustrating to fall out of that flow and find ourselves looking back on our days wondering: what was it that made things “click” into place? 

Acknowledging that its hard to work out what makes one work day good and another one awful prompted an internal GitHub investigation involving 40 participants. All the participants, whose jobs spanned a range of levels at varying geographic locations worked remotely. To take part in the study they were prompted once or twice a day over a 2-week period to take a couple of minutes to complete a quick survey that asked them first characterize their day as Awesome, Good, OK, Bad, or Terrible  and then supply some information using the SPACE productivity framework.

SPACE is an acronym for satisfaction, performance, activity, communication, and efficiency and the framework is a new approach to defining, measuring and predicting developer productivity by researchers at GitHub, the University of Victoria, and Microsoft Research led by GitHub vice-president of research & strategy Nicole Forsgren and written up in an article,The SPACE of Developer Productivity published in the March/April 2021 issue of acmqueue. 

According to the researchers, each of the five SPACE dimensions is key to understanding and measuring productivity and they have devised metrics for each of them at individual, team and system level. For the purposes of the Good Day Project the individual metrics were used - for example Activity encompasses number of number of commits, code reviews completed, coding time and lines of code.

Using the SPACE productivity framework and asking questions about stress, breaks, meetings, interruptions, if they worked with or helped others, and how much work they got done, the researchers classified the type of day experienced by developers as "Flowing" or "Disrupted":


They concluded that:

What distinguished Flowing days from Disrupted days was an average of less than three meetings a day and interruptions being contained to a small part of the day. Flowing days were also more likely to be rated as good days, so managing to safeguard our focus can help us have better days. Being able to make progress toward goals much of the day also impacted how developers felt about their days.

 In return for completing the survey the participants they were given personalized reports including charts to help them spot patterns. Out of seven charts included in the report, developers found the one below most interesting. It shows a developer’s level of meetings, interruptions, and activity on github.com each day:


The days developers reported as Good Days were highlighted in light grey. This layout helped developers see how meetings and interruptions (measures of efficiency and flow from the SPACE framework) affect both their activity metrics and how well they felt overall that day:

Overall the key findings of the study were: 

  • Interruptions are more disruptive than we think 
    With minimal or no interruptions, developers had an 82% chance of having a good day, but when developers were interrupted the majority of the day, their chances of having a good day dropped to just 7%. 
  • To many meetings get in the way of our progress
    Going from two to three meetings per day lowered the chances of developers making progress toward their goals from 74% to just 14%. And developers who averages just one meeting per day had a 99% chance of knocking out high quality work..

Another interesting finding was that the simple act of taking a few minutes at the end of each work day to reflect made a big difference in how they felt. It turned out that being asked to complete surveys noting key activities and how they felt about the day helped developers gain insight and many of the developers wanted to extend the survey beyond 2 weeks.

According to Eirini Kallimvako:

One of the core benefits developers got out of the Good Day project was developing the habit of self-reflection.


More Information

The Good Day Project—Personal analytics to make your work days better

The SPACE of Developer Productivity by Nicole Forsgren, GitHub; Margaret-Anne Storey, University of Victoria; Chandra Maddila, Thomas Zimmermann, Brian Houck, and Jenna Butler, Microsoft Research


Related Articles

Working At Home: Does It Impact Developer Productivity?

What Eats Your Programming Time

Happy Programmers Produce Better Apps 

On the Unhappiness of Software Developers 

Five Ways to Improve Your Personal Productivity as a Developer

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.



The Experience AI Challenge

The Raspberry Pi Foundation in collaboration with Google DeepMind has announced the Experience AI Challenge. Its intention is to guide young people under the age of 18, and their mentors, through [ ... ]

JetBrains Launches IDE Services

JetBrains has launched a new product suite for enterprises. JetBrains IDE Services is designed for use by large organizations with the aim of boosting developer productivity at scale.

More News

raspberry pi books



or email your comment to: comments@i-programmer.info


Last Updated ( Tuesday, 22 June 2021 )