When working on a project, do you try to think about what could go wrong or do you wait for the problem to manifest itself before fixing it?

When looking back on your career, did you try to see or create opportunities for yourself and yor organization, or did you trust life to send you the right challenges?

When managing a product, do you try to anticipate where your users will have issues, or do you fix those issues as they are reported?

Does it have to be either/or?  

Think ahead: be proactive 

There are numerous benefits to being proactive. It avoid problems down the road. It minimizes the damages a problem could cause. It makes you, your team and your business look good. It's very trendy to be proactive. After all, it makes sense to solve the cause of potential problems before they spawn actual problems.

However, sometimes being proactive makes you spend too much energy on a potential problem which may not have the estimated impact. Sometimes, by trying to look so hard into the future, you end up neglecting the present.

A good way to be proactive when developing a new product is to look at the problems reported with previous version or even with the competition. Even though being proactive is about looking into the future and preventing problems, it can also be about learning from your mistakes and working to avoid repeating them.

For example, when we detect a problem with AceProject's hosted accounts, we will send the fix to all our source code clients, even though they may not be affected by the problem. Just covering all bases.  

Think now: be reactive

Being reactive had a bad reputation these days. It's seen as slow and not customer-centric. Waiting is not popular in 2008. However, going ahead of the customer's needs has its limits. Sometimes, no one could have guessed event would unravel in a certain way. Or that someone would use the product in that specific way.  Sometimes, only one person will have that problem. 

It's all about fixing the problem. If there is no problem, there is nothing to fix. In terms of customer satisfaction, fixing someone's problem may make you rank higher in their minds, because you fixed it. No because the product was perfect. Not because you foresaw every possible delay in the project. Not because you guessed when the time was perfect to send you resume. But because you were quick to react.

At Websystems, we make a point of fixing customer issues as quickly as possible, even if it's a small problem experienced by only one account. It's not the customer's fault she's doing something unique with AceProject. It's our responsibilty to ensure that AceProject works correctly for her too. 

The curve balls are always there

No matter how proactive you are, life will always throw you curve balls. Being reactive cannot be avoided. Reacting quickly and reacting well when a situation arises is as important as being able to see things coming.