Legacy Systems: Why History Matters
Do you understand the history that shapes the systems and technology in your organization and your industry?
IT tends to be an aggressively anti-historical field, focusing instead on the Next New Thing. Even in a world driven by constant technological change, George Santayana's famous dictum that "those who cannot learn from history are doomed to repeat it" remains true, perhaps now more than ever. As far back as 1968, computer scientist R.W. Hamming in his Turing Award acceptance speech observed that our disdain for history leads to the aggressive repetition of mistakes.
Indeed, one of my major complaints about the computer field is that whereas Newton could say, "If I have seen a little farther than others it is because I have stood on the shoulders of giants," I am forced to say, "Today we stand on each other's feet."
In a field where the popular (or at least ubiquitous) Moore's Law focuses on the future, why bother to study history? Specific technology solutions of even a few years ago are hopelessly obsolete. There certainly appears to be more than enough new things to learn. What do we gain by looking backward?
For one, past technology decisions shape and constrain the decisions we can make today. They form the context within which we work. To use economist Kenneth Boulding's observation, "Things are the way they are because they got that way." Studying why and how can yield insight into decisions we face now.
The time when we could think of "legacy" as a pejorative term within the technology field is gone. As more and more of our technology efforts connect to (and integrate with) existing systems both inside and outside our organizations, the more we must cope with legacy systems. Beyond this immediate benefit, we can develop a deeper understanding of the patterns of problems and patterns of practice that can help guide our actions even as the specifics of technologies evolve.
Tactically, there is much we can do to learn from recent and local history. Time spent at the water cooler listening to stories of other projects or other customers is time well spent. More formally, both developing and examining project phase- or post-implementation reviews will add to your store of vicarious experience.
Avoiding Traps, Building Guideposts
Beyond tactical efforts to make recent experience useful as history, you also want to think strategically about learning from history more distant in time and space. It's important to develop an understanding of the people, institutions, ideas, and events that have shaped the forces acting on you today. One good starting point is to inventory and map the individuals, institutions, and events dominating current conversations in a field. Second, as your mapping proceeds, construct a timeline of recent events and players and begin to work backwards to understand their origins.
As you build the timeline, you will be seeking out, collecting, and making sense out of a variety of supporting source materials. Nicely researched and packaged histories will be the exception, although you will discover classic references in most fields that you should become familiar with. Instead, turn to trade papers and publications, teaching cases from business schools, and supplemental materials from introductory and survey courses at universities.
With this material you can construct conceptual models of the forces that underlie the changes and trends you are dealing with in the present. Moreover, they will help you identify recurring themes, seductive traps, and other guideposts to action.
A distinguishing characteristic of the human animal is our ability to learn from experience and, better yet, learn vicariously from the experience of others. We can do this learning haphazardly—adding to our inventory of stories and cases more or less at random. This is the source of what knowledge management theorists label tacit knowledge.
I suggest that we instead choose to be more systematic about how we build and develop our experience base. The benefits can include a better sense for mistakes to avoid or look for, richer design choices, and techniques for handling common or unusual problems. Moreover, for each of these situations we will have more compelling arguments for how and why they are appropriate to the problems we face now.