Many companies that develop software do so on the grounds that licensing or maintenance fees will cover the costs of developing and supporting the software, as well as bring in some profit. But in many cases, a good product will not generate the revenue it needs to survive. Following the news that Microsoft will not support or sell Microsoft Money in the future, ZDNet blogger Jason Perlow suggests that Microsoft open source it. This got me thinking about what companies do with applications that are no longer something they want to continue to develop or support but are not actually dead.
One route that is being taken more and more is to open source the software. I think this is a good choice in many cases, but management teams need to be realistic about their expectations. If the goal to an open source move is to simply allow those who love the software to keep using it, that's fine. But all too often, you see a report that a particular product is being open sourced, and the executives and analysts talk about how this is going to be a "disruptive" move in the market or somehow cause the market leader to go into a state of panic. The reality is, 99% of the time when this happens, that press release is the first time you hear about that product in years, and your first reaction to it is, "that product is still around?" and no one adopts the product even if it is free. Making a dead product open source will not somehow rejuvenate it (I would love to see a counter example, by the way), and it will not steal market share from the competitor who killed it.
Some companies opt to keep the product in its catalog, but no longer develop the product. Sometimes the company will keep charging money for the product, and other times the company will give it away for free. This is a good strategy in many cases, because it allows the company to possibly make money from it without the overhead of supporting it and still have the option of selling it or making it open source down the road. It can also generate a fair amount of goodwill amongst customers if handled right.
Another option is to sell the software to a competitor or to someone looking to break into a market. This is how Microsoft built its empire: finding "also-ran" products that worked decently, repackaging the products, and giving the products some marketing push. As far as I know, this is where every component came from in Office, FoxPro, most of its "enterprise stack" (including Exchange and SQL Server), its "Dynamics" products, and more. There are two problems with this strategy. First, you need to sell at the right time. If the product is still too strong in the market, your asking price may be higher than people are willing to pay. If the product is dying too quickly, no one will want to touch it. The other issue at play here is finding a buyer. If you could easily sell a product that was losing revenue and becoming unprofitable, you probably would not need to sell it in the first place!
Some companies choose to spin off products or services that seem to be on the decline to insulate the parent from the losses. This rarely works well from what I can tell; a spinoff is usually a polite way of saying, "We would feel badly about laying you off, so we are going to put some distance between us so it is not us laying you off." After all, if the division, department, or product is struggling within the cocoon of the parent company, what makes anyone think it can survive (let alone thrive) on its own? It's like kicking the runt of the litter out on their own and expecting it to become a superdog.
It is always possible to just end support for the product, like Microsoft is doing with Money. This happens all of the time. The trick is to do it quickly enough to not lose real money on the dying product (it becomes a zombie product as soon as you announce the end) but not so quickly that you alienate customers. Depending on the product, it may take your customers months (if not years) to find a suitable alternative and migrate to it. And some products are essentially useless (or close to it) without the manufacturer's support or continued development (for example, an iPod without iTunes). That is the kind of situation that irreparably harms your reputation for years to come.
Each situation is different, and there are no right answers here. No matter what, I think that the decision making process should be to find the solution that best serves the existing customer base but to give the well being of the company priority in any decision.
J.JaDisclosure of Justin's industry affiliations: Justin James has a working arrangement with Microsoft to write an article for MSDN Magazine. He also has a contract with Spiceworks to write product buying guides.
———————————————————————————————————————————-Get weekly development tips in your inbox Keep your developer skills sharp by signing up for TechRepublic's free Web Developer newsletter, delivered each Tuesday. Automatically subscribe today!
Justin James is an OutSystems MVP, architect, and developer with expertise in SaaS applications and enterprise applications.