Curse of the icebox

I used to use Pivotal Tracker to manage my development tasks. I had tickets booked for the current integration, my backlog would include everything for the next few iterations and then there was the dreaded icebox.

As a solo developer I tracked everything in one “project” and used epics to separate all my projects. Every couple of weeks, I would go through my backlog and re-order my tasks. The priority of tasks changes over time, there are bugs, user feedback or simply new features you want to add. During these “reviews”, I’d occasionally come across a task that wasn’t as important as the rest. It should be completed at some point but not now or anytime soon. These tasks would get moved into the icebox.

Task priority

I have numerous active projects and deciding which tasks are the most important is difficult. I’ve always found it is easier to decide which tasks aren’t as important, this made the icebox easy to fill.

My backlog was always “full”. I’d work through everything for the iteration and then new work would come in. The churn was surprisingly good. I’d typically have 4-6 iterations of work lined up. The icebox though, it kept growing. There was this light blue list of tasks which kept growing. It just sat there getting bigger and bigger, staring at me, occasionally laughing.

Eventually, I’d had enough. I was looking at the icebox and saw lots of tickets, many years old. The tickets were still relevant, but they just weren’t as important as everything else, hence their consignment to the icebox.

Good-bye icebox

I went through the icebox and transferred anything interesting (most of it) to a text file labelled “future ideas”. I still have the list, but it no longer stares me in the face every single day.

As soon as I had disposed of the icebox, Pivotal Tracker didn’t make much sense. I had two lists, but it was really one list ordered by priority. I decided to ditch Pivotal Tracker and switch to the free tier of Pivotal Tracker is pretty feature rich, I no longer needed labels, epics, or anything else, I just wanted a simple list. At its simplest, is a list of tasks which can be grouped, it was perfect.

I only add a ticket to Monday if I think I will get to it within about two weeks. This is complicated with multiple projects as I might not work on a specific project for a couple of months, but the rule still applies. The “two weeks” is based on project time. If by the time I next work on this project, I expect to get to this task with two weeks, it goes on the list.

Everything else goes in the future ideas file. I review my future ideas file every now and again to see if there is anything I need to pull out or anything which can be deleted. I’ve found that often I delete entries from the future ideas text file as I’ve already done them. I’ve created and prioritised tasks because the idea was fresh in my mind, and I fit it in when I had space.

Simpler works

I’ve no idea why it works this way, but I’ve found that this simpler system makes me feel more productive. I really wish I’d switched sooner.

When I’m working on a freelance project for a client or in the preliminary stages of development for a new project, the process changes. The need to focus on one thing means I have less time for everything else. Whilst I focus on one project my inactive projects get more tickets and the “work” for each group grows. Once my time is freer, I try to get back to two weeks of planned work for each project.