Countless articles, self-help books and general discussions have been written in an attempt to shed more light on the ways in which one’s productivity can be increased. In my opinion, there is no one solution for every person in the world. There is a different method for every person out there that seems to increase that internal drive, which in turn gives a boost of productivity. Software development, on the other hand, is a very specific profession. Some of the methods used in other professions can’t be applied to this one. Therefore, here are some of the techniques I’ve used as well as techniques I’m currently implementing in order to increase the amount of work that gets done. Perhaps there are software developers out there that will find these useful.
This is the root of every good performance out there. You need to make a commitment that you will do the work, hard work. By this, I don’t mean that you should make a commitment to your boss, or colleagues, or anyone else but yourself. There is no specific technique that can help you with the commitment per se; it is just your choice. You should choose to be driven by that gut feeling that, hell or high water, will make you complete everything. Without this, no productivity boosting method will help you.
You want to get to that place where you jump-start your internal drive. Also, you’ll rip yourself apart from that mindset, promoted by countless self-help books, that you should work smart, not hard, meaning that you can enjoy the fruits of hard work without lifting a finger. By this, I don’t mean that you shouldn’t work smart; I just mean that you should be ready to do some heavy lifting in life in general.
Usually, when I get a large project that needs to be done, I get sort of intimidated. Most people are intimidated by the large amount of work and this is completely natural. The big thing is scary. That is why I adopted a practice of breaking down big tasks and creating lists of things that need to be done, and I have been doing this from a very early age.
Of course, in high school and during college I had no problem with this system because I could finish everything on the list with no problem. However, once I started my career as a professional developer, I wanted to quantify how much I actually got done and how I can increase that quantity. One of the problems was that I just didn’t know how big each task on the list was. I could finish fifty small tasks or two big ones, and that, in terms of job quantity, meant nothing to me. Often, this would cause a feeling of unfulfillment, because I couldn’t realize that I had finished two large tasks and that I should be satisfied with that. So, breaking down a big project into smaller parts helped reduce that feeling of intimidation, but it didn’t help me with measuring my progress.
Another problem with making lists is that it’s a form of procrastination. Yes, you’ve read that correctly. I noticed that sometimes, when my motivation is on the low end, I turn to making plans and lists just to avoid real work. Then I found out that, according to a professor of psychology at Carleton University in Ottawa, Timothy Pychyl, PhD., silly humans, after some period of time, start considering lists an achievement and allow themselves to feel like they’ve done something useful without taking on any real work. So, I limited my list-making routine to the very beginning of the workday.
Yet another state I wanted to avoid is the state of being busy but not being productive. I realized that this was happening due to the false notion that people can multitask. I was a young and proud self-proclaimed multitasker myself until I realized that I was just deluding myself. First of all, what I was doing wasn’t really multitasking, it was task-switching. A lot of people mistake these two terms, and I was certainly one of them. Also, I realized that when I switch from one task to another I lose focus. It took me a while to get “in the zone” for the new tasks that I had just started. This kind of behavior had to be nipped in the bud. I’d heard of this neat technique called Pomodoro, so I decided to try it out. If you are not familiar, Pomodoro is a technique in which you work for twenty-five minutes (which is considered one Pomodoro), after which you take a five-minute break. After four Pomodoros, you take a fifteen-minute break. It was developed by Francesco Cirillo in the late 1980s.
So, I downloaded Tomighty, and started doing my work in twenty-five minute intervals. During this time, I don’t check my emails or my chat applications, or my social media profiles; I just do what needs to be done.
In the beginning, I made a few mistakes when using this method. Firstly, I used it just for focusing purposes, not for quantifying the amount of work. Secondly, I wasn’t really taking breaks. After one Pomodoro cycle, I would just start the next one. Then, on the fifteenth minute of that new Pomodoro cycle, I got really tired and unfocused, meaning I was in a more vulnerable state in which I might just succumb to checking whether I had received any new emails. This was not something I wanted to happen.
Now I track the amount of work by the number of Pomodoros I get done in a day. If you try this, you’ll probably be shocked by two things. First is the amount of work that gets done in twenty-five minutes of focused activity. Second is the fact of how many of those cycles a person is able to finish in a day. When I started using this method, I would finish ten Pomodoros in eight hours! And that was on a good day! I am still learning how to increase that number. In order to combine my love for lists with Pomodoro, I now also use Kanbanflow. It gives me a really good way of tracking the time spent on each task, and the number of Pomodoros I finish each day. Also, I have something that I call weekly epics. These are bigger tasks which I commit to complete in a week. Here is an example of what my board looks like:
And yes, I take every Pomodoro break now. During these intervals, you can finish all those activities that you’ve been avoiding in those twenty-five minutes of focused work.
As you can see, I’ve been experimenting quite a bit in order to find what actually works for me in terms of increased productivity. Still, I’m not there yet, and avoiding traps of my own mind is the one thing I have difficulties with.
If you’re looking for one method to try out, I definitely recommend Pomodoro. The worst that could happen is that it sends you on a journey of finding out what works out for you.
Nikola is a big fan of extreme programming practices and agile methodologies. He is proficient in several programming languages and frameworks, but prefers .NET technologies. Read more his texts here.