Thinking before coding

I’ve been recently working more often on personal projects.

Being a developer that I am, I have a tendency to think that if I am not actively writing code, then I am not working. The thing is, when working on personal projects that have no set of pre-defined list of requirements, it’s difficult to code productively without knowing what feature I need to build first.

When I work, I tend to use the Pomodoro technique. For those of you who don’t know, it’s just a way of working where you focus for 25 minutes, take a 5 minute break, focus for 25 minutes, take a 5 minute break, and repeat. Each 25 minute and 5 minute breaks count as one pomodoro. And I tend to do around 8 pomodoros per day, which equates to around 4 hours of focused work session.

The problem I noticed recently is that I feel guilty when I’m not actively writing code while the Pomodoro clock is counting down when the truth is, if I’m not actively writing code, then that means that I have no idea what I’m supposed to be building and the best thing to do is sit there and think about what I need to build next.

I started thinking about this after reading this tweet.

Before this actualization, my naive brain would think that (while it’s obviously not true), that any time I spend not coding is not considered to be work. I decided to change this thinking and began including the time I think about what to built and how to write my applications into the pomodoro time blocks. I believe that this will ultimately end up with me building better products and frankly be more productive with my time.

About the Author Chris Jeon

Software developer currently focusing on Android development.