Not too long ago the concept of software portability seemed to be a lot more important than it is today, at least from the perspective of the major vendors.
Both IBM again this week and Oracle last month, in the wake of its acquisition of Sun, are promising to more tightly integrate their database and middleware technologies with the underlying hardware in the name of faster performance. There's no doubt that the more software is embedded in the processors, the faster the system will run.
But what nobody really seems to be talking about in any great detail is what tradeoffs will have to be made in terms of portability. There's no doubt that that you could still move an IBM DB2 or Oracle database from an IBM Power or Sparc processor to and Intel or AMD processor. But how much impact would such a move have on performance if the middleware is tightly coupled to the hardware?
The case that both Oracle and IBM are making concerning tightly coupling middleware to the underlying hardware also assumes that the vendors doing this will always have the best technologies in both areas, and that no outside issue, such as exorbitant licensing fees or a merger, is ever going to compel a customer to switch hardware platforms. Hewlett-Packard, in its latest technology alliance with Microsoft, is also essentially making a similar case.
But in the case of IBM's Power processors, the loss of a couple of key contracts for gaming systems that use those processors would adversely affect its ability to compete with Intel in terms of scale and pricing. And in Oracle's case, the loss of Fujitsu as a development partner for Sparc would be catastrophic.
Although portability as we know it today is far from perfect, it's the only insurance that a customer really has when it comes to not being locked in by a vendor. Without a credible threat in terms of switching vendors, the customer, for all intents and purposes, becomes hostage to the vendor, which could become an even bigger problem if the vendor falls behind in a key technology area.
Alan Ganek, IBM vice president for autonomic computing, suggests that the issue of portability has moved past the middleware layer. If the database can, for example, run Oracle applications on top of DB2, then that's what most customers really want in terms of portability. But right now, there are precious few examples of where portability at the application layer actually works, and there are no standards to speak of in this area.
It may be desirable in some application instances to embedd software into the hardware, But there will most certainly come a day when being tied too closely to a vendor is going to create a business problem. There's an old adage that says while you may need to marry your software vendor, you should only date your hardware provider. Such adages get old because they are derived from hard-won experience.