Fast forward to forward compatibility

December 17, 2004, 02:28 PM —  ITworld.com, Ebusiness in the Enterprise — 

"Prediction", Yogi Berra tells us, "is hard. Especially about the future."[1]

Enterprise IT budgets the world over stand up on a daily basis and pay homage to this linguistic Yogism. We all have an entry in our IT budgets for the Yogi factor. We call it 'maintenance'. What is maintenance? After all, IT applications are not like cars or lawnmowers. They do not require oil changes or spark plug replacements. Maintenance in this business is a euphemism for 'change'. Our needs change and consequently, our applications need to be, um, 'maintained', in order to meet our changed needs.

Maintenance is an expensive business. It can be argued that the expense is a fact of life. Business changes so rapidly these days. Technology moves on so rapidly these days. Isn't it just a fact of life that application maintenance is so expensive?

In many respects, yes. The volatility of business and the technology that supports it is not something any of us can control. However, there are some areas where I believe we are in control of our destinies. Areas where, with a little effort today, we can significantly impact the costs we will face tomorrow.

Take the area of compatibility between applications and data for example. Every programmer worth her salt worries about so called 'backward compatibility' - the ability to read yesterday's data with today's application. Backward compatibility is a very good thing as it can ensure that older applications can cohabitate with newer applications.

However, backward compatibility is only half of the story when it comes to predicting the future of change in our applications. The other half is the significantly less well-known concept of 'forward compatibility' - the ability to read today's data with yesterday's applications.

An example will help illustrate. Let us imagine you have an application that produces files on disk. Bill and Bob both have version 2 of that application installed. Bill and Bob create and share V2 files with each other.

Now, one bright spring morning, the future comes gambolling over the mountain top in the form of a sprightly new version 3 of the application. Bill installs the V3 application. Bob sticks with V2. All of Bill's 'old' V2 files load into the V3 application just fine. This is backward compatibility in action.

To illustrate forward compatibility, let's bring Bob back into the equation. Bob receives some new files from Bill. Do the V3 files from Bill open in Bob's V2 application? If they do, we have forward compatibility. If they do not, we do not have forward compatibility.

Today, applications that have provide backward compatibility are significantly more plentiful than applications that provide forward compatibility.

As per usual, a number of factors have conspired to get us into this situation. On one hand we have the technical issues. Adding support for forward compatibility is not easy. On the other hand, we have the commercial issues. Vendors have a keen interest in ensuring that customers can upgrade to the latest and greatest application. Moreover, if the Bobs of this world with their retro-application suites are incentivized to upgrade by an inability to work with new data files ... maybe that is good for business.

The technical issues around forward compatibility get rather technical but they are not insurmountable[2]. Awareness of the issues is much greater now than it used to be. There is no technical reason why developers cannot factor forward compatibility into their designs so that the Bobs and Bills of this world can continue to work together without keeping their application versions in lock-step.

The bigger issue is one of market forces. If enough customers insist on forward compatibility, it will find its way into the offerings of software vendors.

In the words of Peter Druker, "the best way to predict the future, is to create it"[3]. In this issue at least, our destiny is in our own hands.


[1] http://www.capnasty.org/taf/issue5/yogibera.htm


[2] http://www.xml.com/pub/a/2004/10/27/extend.html


[3] http://www.brainyquote.com/quotes/quotes/p/peterfdru131600.html



ITworld.com, Ebusiness in the Enterprise

I like it!
Post a comment
The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.
Free books

Build your tech library with our book giveaways.

Windows PowerShell 2.0 Unleashed
By Tyson Kopczynski, Pete Handley, Marco Shaw; Published by Sams

Windows PowerShell Unleashed will not only give you deep mastery over PowerShell but also a greater understanding of the features being introduced in PowerShell 2.0–and show you how to use it to solve your challenges in your production environment. Enter now!

 

Ubuntu Server Administration
By Michael Jang; Published by McGraw-Hill Osborne Media

Realize a dynamic, stable, and secure Ubuntu Server environment with expert guidance, tips, and techniques from a Linux professional. Ubuntu Server Administration covers every facet of system management -- from users and file systems to performance tuning and troubleshooting. Enter now!

Featured Sponsor

AISO founders envisioned a Web hosting company that was environmentally friendly. While the company employed energy-efficient innovations like solar panels, its infrastructure produced unacceptable power and cooling requirements. Find out how AISO leveraged AMD technology to overcome their challenge in this case study white paper.

In this whitepaper, Scalar explores the opportunity to change the landscape with respect to mission critical databases built around Oracle. Leveraging technologies such as Linux, high-end commodity processing power and Oracle RAC technology to architect, design, build and maintain database infrastructure that delivers maximum availability, reliability and performance at a fraction of traditional cost.

On a typical day, weather.com, the Web site for The Weather Channel in Atlanta, serves up between 15 million and 20 million page views. But in September 2004, when back-to-back hurricanes ransacked Florida, the peak traffic on one day more than tripled: over 70 million page views by more than 7 million unique visitors. Read the full success story now.

More Resources