Saturday, February 14, 2009

Are we there yet? ... Are we there yet?


I'm brushing my older daughter's hair one night (well, this happens on most nights) and even though I try to be gentle and use that spray in conditioner, she still winces and cries "ouchie" at each stroke. I'm tired and the only response I can give her is "We're almost done!" Same coaching technique I use when I'm clipping my kids toenails, walking with them somewhere in bad weather, or doing any other unpleasant task that I know they just want to be over.

But, I realize that I'm a hypocrite when I say "we're almost done" a few times before we're actually done, or something like "just one more brush" when I know there might be more than one. I mean, I want to keep her spirits up, but I'm also being misleading and not holding up to my side of the bargain by not my promises. She hasn't yet said back to me "but Mommy, you said one more and you're still brushing my hair!"...but she's 4, give her time and I'm sure she'll figure it out.

I worked for many summers at an overnight camp in northern Wisconsin. Campers of mine from the summer of 1996 told me a story of the year before, when their head counselor took them on a 'short hike' one night after a day of fasting (it was a Jewish holiday that required a fast) and repeatedly told them it was going to be just 10 more minutes, until the hike ended 1 hour later. You could imagine the kids weren't thrilled, and I think there might have been some fainting and worse that evening.

So, this reminds me of the problem we face when reporting project status to the client, senior management or any other stakeholders. As the project is heading through system test and approaching launch, it's easiest just to say "the project is almost ready to launch." But, this isn't good enough, this doesn't provide an any helpful measure of time to allow the stakeholders to plan. On the other side of the spectrum though, I have a hard time accepting the report that a project is "87% complete" or some arbitrary number like that. Of course, this number probably comes from looking through all the tasks completed and the ones remaining and doing the math that way. But, we know software, it's impossible to predict with 100% accuracy when something will be complete until it's actually complete. Books and blogs I've read support the idea that nothing is ever 75% complete or 50% complete, it's either finished or 0% done. How many times have you found yourself checking in with programmer's who report a task 95% complete, every week for 3 weeks! It's always 'almost' done, and something else always comes up to delay things once again.

So, I prefer to rely on ranges. In the same way it's best practice to make task estimates in ranges when possible, the remaining time should also be reported as a range. So, rather than say that launch will be on March 1st and then a few days later report that launch will be March 5th, keep the launch date as a range of dates for as long as possible. Of course when the launch needs to be a hard date or stakeholders are pushing for a solid commitment this flexibility won't be available. In an ideal scenario, the project manager can set realistic expectations from the start and keep those final dates in a comfortable range rather than commit to an exact date very early on.

So, I don't see myself saying to my daughter "I will finish brushing your hair after 3 - 10 more strokes", but I'm sure I can find some way to stop leading her on, and should try to soon before she calls me out on it!