When you talk about how best to run a software business, we tend to hear one line again and again.
“Build a product! There’s no future in custom development anymore!”
I, myself, have been guilty of recommending this course of action to quite a few people. Lately however, it got me thinking. Why is it that custom development is considered to be a track to failure, while product development is ruling the roost? Aren’t there quite a few product companies which are closing up as well, infact, even more quickly than custom development companies? A product is a risk. If you cannot find a large enough market for it, it doesn’t even justify its costs (ROI). Sometimes, you start out building a product with all the right market knowledge and even interested buyers, but by the time the first beta of the product rolls out, the market seems to have changed and your prospective leads have dried up. So many things can go wrong in the product area as well. So why?
The answer, it seems to me, comes from who you are targeting!
Take a look at the fashion industry. Every person wearing clothes is different, has different body contours, body shapes, preferences, likes and dislikes, as well as budget. Sounds familiar yet? In the fashion space, you have essentially two types of operators.
On are the pre-stitched providers, labels like Littlewood and Zara men (local) and Marks and Spencers, Gap and Old Navy (international) who use a certain fabric and a certain design and then mass produce their products (shirts, tshirts, trousers, jeans whatever) in pre-defined sizes which are just general enough to cover a large percentage of the consumer. Which is why, everytime we go and buy a pre-stitched garment we go through a ritual of trying on every piece to make sure it fits. These labels build their own designs, market them on their own and then even sell them at their own outlets or in partnership with other retailers.
On the other hand, we have the tailors. People who take whatever material you take to them, and stitch them up in whatever design you tell them and at the end of the day, they’ll make sure the clothes fit you precisely. (Barring all the horror stories about tailors which exist).
Now think about it, does the availability of labels and pre-stitched clothing (products) decrease your need to have custom fitting, unique and comfortable clothes (custom-development)? Infact, i’ve heard numerous people claim that if you want good clothes, its better to have them stitched than to go retail, all brands notwithstanding.
Lets dig a bit deeper into it. How to tailors make clothes which are just right for you? There’s a lesson here which would benefit everyone thinking of going into the custom-development model of building software. Have you ever considered why every tailor shop you go to is specialized to a particular segment of the consumer market? E.g. you have tailors for women clothes, for men clothes and for children. Then, you have some who specialize in making eastern clothes for women, while some specializing western clothes for women. The same is for men. You have tailors specializing in western suitings, while others in just shalwar qameezes and a third group which makes nothing but trousers. Then there are shops which aim to provide a one stop shop experience. They have various specialists who help tailor different aspects of an outfit, and then put it all together and deliver as one piece.
The key word, in all of the sentences above, is specialization! Pick a sector, a vertical, a domain and specialize in it! Figure out the needs of the market and fulfill them. That’s where both product based and custom development solutions pay off. One of the biggest problems we see with custom development organizations is the need to fulfill whatever need the customer comes up with. They want a website, you’ll build them a html one, then they want ecommerce support, so you build that in PHP, next they want an inventory system so you build a project in visual basic, then they need automated warehouse management, so you build embedded systems to control their shelves, then they say how about a wireless access the whole thing and you end up doing .NET mobile development… just so you don’t loose the customer. At the end, what is it that you would be known for? Sucking up to the customer? Everybody does that… how are you different?
The objective of tailors is to suit (pun intended) each individual need of the client, while the objective of labels is to suit generic needs of the consumer. The same holds true for software development as well. A product company will never be as good as covering the needs of their customers, just as a custom development company wouldn’t be as good as appealing to the masses.
How you choose which model you are going to follow, depends largely on how you want to satisfy your market. The need is there for both, just go and find it. You will find the market exists and is larger than you ever imagined.