Programming productivity: GitHub sheds light on when developers get most done

GitHub has put together a snapshot of developer activity that hints at when they are most productive during the week.

Video: What is the fastest growing programming language?

So many factors affect your productivity during the working week that it's often difficult to predict when you're likely to do your best work.

Now GitHub has put together a snapshot of developer activity that hints at when they get most done during the week, based on the proportion of code submitted to the service each day.

Perhaps unsurprisingly, the greatest proportion of code is submitted to private repositories on GitHub is midweek, with dips on both Monday and Friday.

Image: GitHub

During each working day, the proportion of code contributions also rises and falls, with two main surges each day.

Image: GitHub

"When it comes to daily routines, activity in private, public, and open source repositories all follow a similar pattern during daytime hours," writes Thomas Elliott, data scientist at GitHub about the data from this year's Octoverse report.

"We've found that work increases hour by hour in the morning, with activity hitting an initial peak at around 11:00 local time. This is followed by a noticeable dip of several hours before the day's second activity spike at 15:00."

Of course, there's more to a developer's role than adding code to repositories, the proportion of code submitted may have little to do with how much the developer got done that day, and, to some extent, the timing of when code is submitted may be as much due to working practices as it is due to overall productivity. Moreover, the number of lines of code written has been found to be a poor measure of developer effectiveness.

SEE: Hiring kit: Python developer (Tech Pro Research)

However, interestingly, studies of the wider workforce have also tagged 3pm on a Wednesday as the most productive time of the week, and found that software development productivity peaked between 2pm and 6pm. There are even some who argue for a five-hour day for software developers, based on the number of hours of peak output. A complicating factor is that time at work doesn't equal time spent working, with some developers using the Pomorodo technique to keep on track when a task is proving particularly unengaging.

Developers will also typically spend long hours in front of a computer, with this year's Stack Overflow survey of more than 70,000 developers finding the majority spent most of the day, between 9 to 12 hours, sat at a computer.

Also see