Techstars London day 36: Avoid frustration with communication

Today was one of those weird days. I wouldn’t say it was good, but I wouldn’t say it was bad either. It was the definition of “meh” day.

On the one hand, I am pretty excited about the project I just started (which is super secret and I cannot talk about it just yet), but at the same time, today was the first time I sat down to really research how the hell I am gonna implement the thing. Way long after my original estimation. Alarm bells!

Run away from people estimating projects without doing any preliminary research...
Run away from people estimating projects without doing any preliminary research…

Planning software projects is a complicated task. Estimation is incredibly hard, almost to the point that I consider it an art (and I am pretty shit at it, quite frankly(*)). There are so many uncertainties it is difficult to account for everything needed at the beginning of the project.

I am not the only one out there with estimations issues though. During my work years I have seen everything, but projects delivered exactly on estimation, very few times. You either underestimate, or you overestimate.

Developers tend to underestimate under pressure to deliver something fast, when they haven’t had enough time to think about the problem they are trying to solve. Underestimating is pretty dangerous, for obvious reasons. At best you end up with someone in your team pretty frustrated. But at worst, it could cost you a bunch of paying customers (and that could mean whether you make it or break it as a company).

Better to overestimate and finish early. Though that never happens. Ever. People will tend to use as much time as they estimated, even if they finish early. Try to reach balance <– Like I said, an art.

You know that sensation at the beginning of a project where you are like “I think I can do this or that to solve X”, but then you start doing some research and you end up like the I have no idea what I am doing dog? That was me this morning.

Me after the first coffee and early research for the project, but just after my second coffee.
Me after the first coffee and early research for the project, but just before my second coffee.

During our roadmap meeting not long ago, I estimated I could finish this project in a couple of weeks at full speed. I knew this estimation was (potentially totally) wrong: it was solely based on the idea of what we want to achieve and what we already have in place; my knowledge of the codebase. However, it didn’t include things like design, UX review, testing, etc. It’s practically impossible to foresee all the risks and uncertainties. It was an optimistic estimation: I should have known better and waited until I knew more. Not all, but more.

Luckily, with perseverance and another cup of coffee it all started to make sense. I still have to do some more research and start prototyping tomorrow, but we are onto a good start. The trick is to break down the project into small enough chunks that you can complete in a day or max two. Ah yes, and constant communication to avoid frustration. And definitely a good pair of headphones you can hide behind and submerge in the wonderful world that is coding. I remain optimistic – will report if this changes.

After second coffee
After second coffee

The best thing is that the project has started and I am sure we’ll see good (some kind of) progress.

And now, I am gonna hit the hay because I am dead tired and I am almost losing the plot myself. Good night peeps!

Summary of the day:

Time I fell asleep last night: 1:42
Total hours of sleep: 5:17
Mood: Ok. Not good, not bad. Meh. Best thing about today was catching up with my good friend Nick from Osper!
Soundtrack of the day: latest music obsession (Major Lazer, who knew?!)

(*) And by shit I don’t mean I don’t deliver projects on time. But it depends on the project! It’s all a question of practice really.. like all in life.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.