The great time suck and the phantom deadline
Published July 24, 2007
Warning: This is a post about my job. If you think you may be offended by such a thing, now would be a good time to close this tab.
I have a friend who’s almost universally joshed for being the guy most likely to march into work early Monday morning and announce he hasn’t slept in days, because he’s been coding his way through some problem. For months I had no idea what he was talking about; I was able to turn work off if I wanted to once I walked through the door, so why couldn’t he? Slowly, given enough time pressure, almost any designer or developer can start doing the same thing. I realized this when I sat in front of my Mac Book Pro on Sunday and coded for fourteen straight hours—really only breaking for the bathroom and to eat. The reasons for this are myriad, and are the basis for an anecdote about deadlines and such.
Our company has a tendency to talk about things a lot. Given almost any project, we can find a way to have at least a dozen meetings just about how to get started. Once we’ve figured that out, we’ll have a dozen more to decide what the next steps are. The meetings we tend not to have are the ones about scope, requirements or audience. These things always seem to be someone else’s job. The head of the department I’m attached to has it far worse than me, however, as he gets pulled into essentially every meeting ever planned; it’s left to him to sit through them all offering advice and guidance where applicable, and making the hard choices about milestones and even some development issues. It’s fair to say that we have a ‘meeting culture’, and that we tend to manage by committee. This often leads to deadlines that are set by such committees.
What tends to happen when committees don’t know much about requirements or project scope is that boat docks get built in the desert; one hand is totally unaware of the difficulty (or triviality) of the tasks being performed by the other, unrealistic deadlines are set, and the end product is a mess. I found this out the hard way with my last product launch, which was governed by an arbitrary deadline that could only be met by means of several 90 hour work weeks in the dev room. The “extra time” needed to make things better after launch was almost exactly the amount of time the dev team asked for on the front end of the project. Score one for the immovable, immutable deadline. In the interest of fairness I do understand the business case for setting deadlines and/or milestones on major projects; in large organizations it’s often necessary to attach revenue to projects that haven’t happened just yet.
I guess the only advice I have for planning a project is this: understand that most of what you’ll be doing in the initial phases is really only a guess, and that you need to check your work frequently against your map to make sure you’re on track. You need to give your people the leeway to say “this map does not match this road”, and change the map. But I also understand why this is so hard to do. It’s very difficult, especially in an overcrowded and ever more cutthroat online market, to take the time to breathe through a milestone meeting where you hear things are slipping. It’s also difficult to trust that the project is worth the extra weeks of design and testing and coding and recoding; but if you show up for work everyday anyhow, then you must believe that at least a little, right?
Today when I sat in a meeting and heard all of those things happening—the deadline slipping, the map changing, the request for more time—I felt as though cooler heads had prevailed. I felt like the project managers were sticking their necks out for the dev team, and that my fourteen hour coding sprees might no longer be necessary. Even though I left the office tired of meetings I felt renewed to some degree, even if for a few minutes. Will we return to endless meetings and arbitrary deadlines? Of course we will, but for today we can pretend there is no phantom deadline. That’s worth a meeting or two for me.
Related update: I’ve just been directed to the WikiPedia entry for “Scrum“, a project management system that seems to have some really nice ideas. Your mileage may vary.