Sunday, August 22, 2010

I am going short on Apple, Microsoft and Google

It is interesting to see how things come full circle.

A few years back, an industry defining moment arrived when Microsoft decided to package its browser free along with the OS.  Netscape didn't stand much of a chance - who can beat free?

Microsoft itself, however, failed to subsidize on the value of the browser and missed being the market leader on the internet bandwagon. After all, how valuable can a "free" asset be?  The browser was just an add-on acting as a garnish to its core business of selling the Windows OS.  The issue with this view was that Microsoft completely underestimated the revenue potential of a new world opened up through the browser.

Google was one of the few companies who benefited from this. And apparently is now going about the same route. By providing Chrome OS and its variant - Android - as an open platform, it has thrown the gauntlet to Microsoft where it might hurt the most - the core business of Operating System.  By subsidising the Operating System itself through its core search based revenues, Google is aiming at preventing the competitive thoughts Apple and Microsoft might have towards dominating the "search" business.

It has supplementary impacts too - let me be adventurous and list down potential scenarios.

1. Apple, while being the most valuable technology company today, will find itself losing market share both in mobile space and in the desktop/laptop space due to the popularity of Android and Chome based tablets and mobile phone.  Apple might be forced to open up its stack to retain market share, but might be too late due to the number of players who might have already embraced Chrome/Android.  How many "iPads" can Jobs pull off after all?

2. Microsoft's second biggest revenue generator, its Office suite of products, faces revenue decline from the onslaught of Chrome extensions and applets...this will be exacerbated by the potential price war that could erupt with Apple as the third player. With both its core revenue components under decline, Microsoft might have to aggressively look at a third source of revenue - probably its Azure line - or risk getting split or going under.

3. In its quest for a universal search engine, spanning visual media and internet, Google itself might find its search business reeling under the onslaught of new players who can lease bandwidth and leverage Chrome for far savvier and user friendly applications.  Just like Microsoft failed to let go its inhibitions around Windows OS to embrace internet, Google might find it difficult to let go its core search revenue and latch on to new streams, particularly related to social networking.

The common theme among all these scenarios and examples being the inability of successful companies to let go of their winning themes and jump on to the next ones.  Focusing on core competence no longer wins the game, especially when the game itself changes.

And what does this mean for the customer?
- An integrated information world at last..an Internet 3.0 spanning all media types. I can probably use my TV, mobile device, laptop and tablet as interchangeable and completely linked technology devices that can access my personal and corporate information seamlessly through self-provisioning enabled by cloud service providers and players like dropbox.  From a social perspective, this would also mean the end of private life as we see it today.

We are indeed living in interesting times.  Whether this is a curse or boon, only time can tell.

Monday, August 16, 2010

Wisdom of Testivus - Testivus on Test Coverage

Early one morning, a young programmer asked the great master:

“I am ready to write some unit tests. What code coverage should I aim for?” 

The great master replied: “Don’t worry about coverage, just write some good tests.”

The young programmer smiled, bowed, and left.

Later that day, a second programmer asked the same question.

The great master pointed at a pot of boiling water and said: “How many grains of rice should I put in that pot?”

The programmer, looking puzzled, replied: “How can I possibly tell you? It depends on how many people you need to feed, how hungry they are, what other food you are serving, how much rice you have available, and so on.”

“Exactly,” said the great master.

The second programmer smiled, bowed, and left.

Toward the end of the day, a third programmer came and asked the same question about code coverage.

“Eighty percent and no less!” Replied the master in a stern voice, pounding his fist on the table.

The third programmer smiled, bowed, and left.

After this last reply, a young apprentice approached the great master:

“Great master, today I overheard you answer the same question about code coverage with three different answers. Why?”

The great master stood up from his chair:

“Come get some fresh tea with me and let’s talk about it.”

After they filled their cups with smoking hot green tea, the great master began:

“The first programmer is new and just getting started with testing. Right now he has a lot of code and no tests. He has a long way to go; focusing on code coverage at this time would be depressing and quite useless. He’s better off just getting used to writing and running some tests. He can worry about coverage later.

The second programmer, on the other hand, is quite experienced both at programming and testing. When I replied by asking her how many grains of rice I should put in a pot, I helped her realize that the amount of testing necessary depends on a number of factors, and she knows those factors better than I do – it’s her code after all. There is no single, simple, answer, and she’s smart enough to handle the truth and work with that.”

“I see,” said the young apprentice, “but if there is no single simple answer, then why did you tell the third programmer ‘Eighty percent and no less’?”

The great master laughed so hard and loud that his belly, evidence that he drank more than just green tea, flopped up and down.

“The third programmer wants only simple answers – even when there are no simple answers … and then does not follow them anyway.”

The young apprentice and the grizzled great master finished drinking their tea in contemplative silence

- Courtesy google testing blog