The most exciting thing about this world is its ever changing quality.

Saturday, August 29, 2009

Get those words right

We all lie every single day. As harsh as it might sound but most of us know this is true, damn true. Personally, I have no problems in believing a lie itself does not necessary do evil or good. It is only a choice of communication, a matter of intention, to get message across.

To understand the meaning beyond the line would be extremely helpful for us to achieve better communications. As let's admit it, we can not really survive if everybody just tells the truth all the times, well at least politician, lawyers and state agencies can't :-). Sometimes we say them as more of a professionally trained reaction rather than results of complicated thinking process.

From engineers, these are some typical lines I have heard, and my interpretations to them after many years of learning :p

We have a quick work around to this problem, which will not affect the rest of system at all.
Maybe this time I can get away without sufficent testing, especially regression test. With a bit of luck no one will find out the caveat. The worst could happen is for me to explain to customer how it was a new feature rather than a 'side effect'.

I have thoroughly tested it on my machine.
Well, I forgot to do a proper clean test. Let's start over again.

Source control messed up my codeline.
I forgot/felt too lazy to follow the update->test->checkin->test routine.

I will write test code later.
I will try not to worry about test code until someone important puts a gun in my head.

The code is a mess, we will be much better off start over.
I can't find a better way to refract the code, or I don't understand the use cases of this product, or it isn't my fault there are always so many bugs, it is the code's fault...

Product manager never tells me what he wants, and always changes his mind.
I can't work out the intuitive approach and cool functionality, maybe I can shift the blame and responsibility to someone else, an easy target.

It will take me 5 minutes to fix this bug.
I really don't mean 5 minutes! I only say so to justify why we should not do this. So do not put this as task estimate in your project plan.

For managers, here we go,

We are almost there.
We have not achieved our target. This is not good enough

Next release will be on time.
Whenever I say it, don't take my words on it, pay attention to what I am about to say next, "If..."

All tests passed for this release.
We have cut off some failed tests. With limited time, we can only assume some test codes have not been updated or have bugs in.

Let's work together on this.
I will let you know my decision out of courtesy.

It's not my call.
I am not taking responsibility for the decision.

We have no resource to do this.
I have different understanding of the task priority.

You are the most important customer.
We have more than one customer to support.

No comments: