Sachin Sharma
Thank you for visiting X a c h i n

What's News?

Only a Sith deals in absolutes. I will do what I must.
- Obi Wan Kanobi
- StarWars III - Revenge of the Sith


Shareware: How much customer interference is good?

The Shareware Industry is huge. Go to and search for something like “Video Editor”, “Converter” or “Online Diary” and you will know what I mean. There are tons of products out there. Believe it or not, but most of these products are made by relatively smaller companies. When a 20 odd employee company like ours can manage about 6 shareware products in the market, I think shareware product development is not a big feat at all. To cry out loud, Nick Bradbury designed and coded successful products like HomeSite (sold to Macromedia-Adobe), TopStyle and FeedDeamon alone. He was known as a “one man software company” before he sold out to Newsgator

Early on in my career, I got similar opportunities. Along with my colleagues, I designed and coded products that are there on the market. I was never told how well they are doing, but I get a lot of satisfaction when I get customer feedback on forums and via e-mail. Starting with new products was great. But (there is always a “but”) products tend to mature. With increasing customer base, you have to start worrying about existing customers. Soon, customers start requesting their requirements. Then the management, wanting to make their products more acceptable, forces the requirement’s implementation first. Eventually the product’s plan, if you have one, goes down the drain.

Here is how the story goes: The developer is working on a feature or enhancement. And “bang”, there comes a customer’s request or query. The management tries to figure out what is wrong with the product. They reach a quick decision about implementing the feature, putting in more content or altering the flow of the application. The decision is then forced for implementation “in this version”. Then the obvious happens – the developers’ flow breaks down. To give “production”, the developers alter tasks and puts off a feature to the next version. This continues and the management says “there are no new features since the last x versions. Who is responsible for this?”

I am not against customer feedback for shaping a product’s future. In fact, I think that it is crucial for building a successful product. But, how should a company handle customer feedback? Here are my thoughts. As a developer, I feel that once you have decided the features, enhancement and bug-fixes for a particular version, you should stick to it. Now, one might ask. What happens if there is a serious bug in the release? I say, serious bug in the release! What was your QA team doing? Well, that is quite extreme. Things will happen, but “serious bugs in product releases” should happen only rarely. If this happens frequently then the company does not realizes the importance of QA guys. Microsoft has one QA to every developer, I heard. And the QA guys are responsible for screw-ups.

Now, how to deal with customer feedback? According to me, collect the feedback but do not spend time formulating a plan about their implementation just yet. Let the developers do what they are doing just fine. Let them complete the current version first. Have the version tested to the point where there are no serious bugs in the release and then release the product. Now you get the time to plan all that you want in the next release. Go back to customer feedback. See what is important. Plan changes, enhancements, bug-fixes, flow changes and everything else for the next release. Again, once the plan is ready and the developers start working on the new release, do not, and I mean, do not disturb the developers until the new version is done.

For a small company like ours, developers and QA can ship a new version of a product within 2 months. The product will have sufficient new features, enhancements and bug-fixes. It will also go through a complete and healthy QA process. The management will get its production, the customer their requirement’s implementation, the developer their satisfaction and the company its progress. For bigger companies and larger shareware products, a 3 and 6 months version cycle ought to be ideal.

So, how much customer interference is good? I say, “Every bit of it”. What makes the difference is, as always, the “planning” (Planning is not a word, it means something).
Monday, May 01, 2006 at 2:41 AM. Comments: 1.
Post/View comments

This page is powered by Blogger. Isn't yours?

Copyright © Sachin Sharma. All rights reserved.