Mumbai is probably the only city where the distance is measured in time. If you ask, “How far is Andheri (a suburb) from Borivali (another suburb)?”, you will usually get answers like 45 mins or 1.5 hrs. Sounds absurd. But it is quite useful when you want to go the distance. Why? Because the speed with which you would be able to go will heavily depend on time of the day. It can actually vary anywhere between 1.5 hrs to 30 mins depending on when you are traveling.
However, the answer can also be wrong a lot of times, because it inherently makes a lot of assumptions. Like,
- You want to actually travel between the two suburbs.
- You are going to travel now.
- You are going to use a specific mode of transport.
The answer will be wrong if you are interested in the geographical distance or if you are going to travel sometime later or if you are going to walk or just transwarp. This works in Mumbai because most of the time the assumptions are right.
Unfortunately I see this a lot in the software development world as well. Companies want to instantly know cost of a software project. And then you make similar assumptions about the need, the deadlines, the team, the tools and come up with an answer, and start digging the grave for the project.
The only way we can solve this is to convert those assumptions into questions and get their answers. Without them you the best you can do is come up with the safest answer – 1.5 hrs for the travel. I find this as worse as not having an answer at all. But that is what I see happening. Clients ask for the cost, software development companies give the safest quote.
Decisions based on such information will tend to get wrong, and projects based on these decisions will tend to fail. Somehow this seems to be a norm, even in some of the big companies. No wonder, the chaos in software development world is not much different than the Mumbai traffic. Actually worse, because the impact can be much more dreadful on businesses.