|Column Tag:||Inside Information
The Competition of The Future
Do you know any dinosaurs headed for extinction?
By Chris Espinosa, Apple Computer, Inc., MacTech Magazine Regular Contributing Author
In the personal computer software industry were extremely fortunate to have a couple of natural forces that help keep ahold of our customers. First, there is the normal upgrade cycle, where for a small amount of work we can make an improvement on the products our customers already own, and do a "trade-in" at a very low cost of goods. You cant do that with refrigerators, for example, because most of the costs are in materials and manufacturing. The revenue stream from upgrade products is what keeps most companies profitable in the software industry.
Second is the "switching costs" that keep customers on that upgrade path. Once youve bought a product, learned its interface and features, committed a lot of your data to its file format, and (consciously or unconsciously) designed your everyday habits around it, youre pretty reluctant to switch to another product, even if it promises to be A Whole Lot Better. It has to be so much better that it overcomes the pain of learning a new feature set and user interface, the time-consuming and inaccurate process of file conversion, and the discomfort of losing old habits and gaining new ones.
In many cases, the switching cost is always higher than the benefit. A modern application has so many features that its rare for a different product to completely satisfy its users. Everybody has one crucial feature that they love in one application and wont give up. Its hard for a competitor to cover all of the cherished features well enough to really steal customers from an established product.
As long as software remains large and hand-crafted, with each application having its own file format and user interface, the switching costs for users will remain high. That means that you can generally trust that your installed base will be a ready market for your upgrades, and you can focus most of your effort on adding features that please them, get the attention of new computer purchasers, and (maybe) attract some people who already own your competitors products.
But OpenDoc and the component software revolution change the technical basis for many of these switching costs. Because the information edited by part editors is stored in the Bento file format, itll be easier for one application to read anothers data. Because OpenDoc lets you add part editors to any document, you can keep the user interface and cherished features of the most important data, and integrate them easily into another application. So when someone creates a compound document with your application and a lot of OpenDoc part editors, its not that difficult for them to take those parts and move them to another application without a major upheaval in file format, user interface, or features.
It will be a long time before software components become truly interchangeable parts, but just a little interchangeability can make a serious difference in how you develop your products -- and how you keep a hold on your customers.
In development, you should see your application as a whole, not just (to use the cliché) the sum of its parts. For example, consider constructing your graphics-editing application so that the bulk of the work is done in a graphics part editor, but your container application adds automation, management, and control. Though people might be tempted to just use your part editor in other applications (as well they could), theyd soon miss the advanced features only available in the container.
Or focus on customizability. One of the tempting things about General Magics Magic Cap environment is that its terrifically personal, and people will get attached to it: not to the environment itself, but to what theyve done to it. When users personalize your software to the degree that moving away from it is like moving out of their homes, your chances of keeping them are stronger.
As software becomes interchangeable, the less it will cost to switch. Ultimately well have to deal with the fact that some kinds of software will become commodities, just like clone PC hardware today. And that means that a lot of the things that are important in todays software business (like upgrades and new features) may become less important, and things that are most important in other industries might become most important in software as well.
Things like great customer service, personal customer support, high quality (the first time, not in the .1 version), and heavy direct marketing. Things like licensing terms that are not only convenient, but understandable (have you even read the license agreement you put on the software you sell?). Things that make YOU different, not just things that make your product different.
For many technologists this will be extremely annoying. At its worst its a marketing-driven industry. At its best, its a great foundation for innovation, though your innovations of two years ago dont give you a natural customer base for next year. In any case, a lot of the things that we have gotten away with so far must end: bugs and instability, rampant featuritis, and upgrades that are bigger and slower than the current version. When your users can take their data and use a different product, theyll be less tolerant of your mistakes and foibles.
Perhaps this will never happen. Its possible that interchangeable software parts are still a long way away. If so, we can probably get away with proprietary data formats, buggy code, and feature bloat for a few more happy years, dragging our poor customers with us. But even if the component revolution doesnt happen on schedule, it might be a good idea to clean up our act anyway: remember that phones, TVs, and video games are creeping up on our personal computer industry just like we crept up on minicomputers ten years ago. If we dont pay attention to what people really want, we could be the next dinosaurs.