Do the boring stuff
Spending some of your spare time doing boring stuff has several benefits, and it takes less time than you might think.
This post was first published on Øysteins private blog blixhavn.dev
Often when I've promoted doing code reviews, cleaning up branches or doing other maintenance work, a reply has been that "it takes so much time". Especially with code reviews, I get the impression that developers really believe this will dig severely into their effective coding time. I've worked in a team of four, where two code reviews were needed for every pull request (of which there were at least four a day), and code review has never taken more than 15 minutes of my day. In exchange, we got better code quality and a more distributed code knowledge. While this is anecdotal, I'm afraid that if you spend a lot of time doing code reviews, the problem might lie somewhere else.
Writing code isn't everything
I have a feeling a lot of developers grossly overestimate the time they spend actually writing code. It varies, of course, but I'd estimate that on a typical day, I spend between 2-3 hours on this. This might surprise you, but if you think about the number of code lines in a project, and divide them by the number of days you have been working on it, you end up at a surprisingly small number of lines per day. As software developers, we are primarily problem solvers - and to solve problems, writing code is not our primary activity. In a full workday, more than half of my time, I am thinking, researching, doing supportive work, relaxing, and communicating with coworkers. On days where I code intensely, I'm completely spent after 6-7 hours, and I can't keep this up many days in a row. Working efficiently as a developer is a lot more than simply writing code. As I'm sure I've read somewhere: the best line of code is the one not written.
Maintaining flow
However, boring stuff should not take priority over high octane work. Maintaining flow is important, and as such, slot in your boring stuff in between - after coffee and toilet breaks, or after lunch. Use some of this time to make your life easier when you are focused on producing code, so that you're not distracted when it counts. On a related note: take breaks. If you struggle with focusing, there's a good chance you're simply in need of a 5-10 minute break, some fresh air and a glass of water. And then, do some boring stuff before you dive down into the code. Set up that IDE properly. Learn keybindings. Get to know your terminal.
Keep it clean
As an IT consultant, I am in the peculiar position where I start at a new workplace regularly. And because my time there is limited, it is important to hit the ground running getting to know the existing technical situation and solutions. However, I also think this applies to the social situation. The quicker I can get on my peers' wavelength, the quicker I can be a productive part of the team. In this regard, doing the boring stuff can also give me a head start. Being diligent in maintenance of code and repositories, following procedure and adhering to existing standards reduces friction and helps your reputation in the office. Likewise, spend a few seconds of your day keeping your desk tidy, and do a little extra at the office kitchen.
Ok, enough admonition. The end note is: you probably spend more time than you realize doing nothing in particular. Utilize this time to stay on top of things, and you'll soon reap the benefits both in your programming and in your general work life.