« Today's Challenge: Debug Embperl | Main | How many calories? »

February 21, 2003

Development Thrashing

The number of problems brought to our attention during any given week varies, but rarely a day goes by without something coming up. The issues are typically entered into Anthill, a bug/feature tracking system, or in an emergency we might get a call, email or visit.

We've been discussing how productivity suffers from having a system set up where ongoing projects are stopped at the whim of incoming problems. I find that for the most part my projects are either small (one or two days), or that I break longer projects into small parts, knowing that I will undoubtedly have other issues that require a shift of gears. Another developer on our team argues that my approach inhibits the success of our ongoing projects.

He argues that not being able to dedicate a week (or more) without interruption on a project hurts the long-term development efforts. He proposes that without long chunks of time to work on a project you can't build momentum and the project suffers because the developer never gets fully immersed.

I can't decide what I agree with and why. I think I prefer to have a number of opportunities during a day or week to complete something. The reality is that with three developers doing sysadmin, programming and maintenance of a site with a large set of functions running on a handful of servers it's unrealistic to think there will be weeks of silence for us to work on the next big thing. That being said, it's important to prioritize the incoming issues and organize them such that one can spend more time focusing on a specific issue instead of thrashing between many.

Posted by mike at February 21, 2003 1:44 PM