“We build our [businesses] the way we build our cities—over time, without a plan, on top of ruins.” ― Ellen Ullman, Life in Code: A Personal History of Technology
Like cities and computer systems, our business processes grow over time based on the processes in place at the time. These legacies can be difficult to deal with, but deal with them we must.
Twenty years ago, I spent a significant amount of time working on a computer system whose purpose was to fill out, print and send, via traditional mail, completed forms that businesses required from their customers. Just like how many cities’ basic layouts are still influenced by cow paths from years or centuries ago, what the product had evolved into decades later still harbored strong legacies of the past that hindered almost every proposed enhancement.
A few short decades ago, when most business was done on paper, many processes were designed to print as few pieces of paper as possible to keep printing and shipping costs low. This forced a number of design choices. All of us of a certain age remember trying to fill out a paper form with boxes far too small to fit the requested data. The computer system I worked on had this issue as well, strictly limiting the length of many inputs to ensure it all fit on a single page. Even in the digital age, where fitting things on a single page is rarely needed, many businesses’ systems and databases still have those constraints built in.
This naturally raises the question: Why? Why are they still bound by the past? Why not change this even if it means tearing everything down and starting over? Forget where the cow paths were; raze everything to the ground and rebuild ‘correctly.’
The problem boils down to two things: time and money. Like the costly and disruptive process of repairing a house’s foundation, overhauling a system that has evolved over years and has other extensive systems relying on it is extremely expensive. Moreover, if you decide to redo it, there will be unexpected issues with any connected system, making it a risky and costly endeavor. You might be replacing something that ‘just works’ with something much more expensive that doesn’t.
Major banks that have been around for decades, if not centuries, are often examples of businesses struggling with the legacy of past decisions. One prominent bank I worked with initiated a project to modernize its IT infrastructure, only to discover that its core banking system was a tangled web of patchwork solutions. This system had been continuously built upon since the 1970s, with layers of technology stacked upon each other to accommodate new banking products, regulatory requirements, and customer needs. As a result, any attempt to introduce digital banking services or streamline processes was severely hampered by the limitations of the old system. Upgrading or replacing that system was not only a mammoth task in terms of complexity and cost but also risked disrupting daily operations and customer services. The bank’s situation mirrors the challenges faced by cities built on ancient foundations, where every attempt at modernization must carefully navigate the remnants of what came before.
In many ways, redoing business processes is more complex than renovating a house. Although renovations are inconvenient, you can temporarily live in a hotel or with friends or family while they occur. For many businesses, their processes are the business, and they cannot simply shut down, often requiring an even more costly and time-consuming step-by-step transition.
I want to stress that these challenges rarely arise from any mistakes or misdeeds by the initial builders. More often, the system and technology, as a whole, has grown in ways that were unpredictable. You can’t blame the original settlers of Boston for not foreseeing the need for multi-lane highways any more than you can fault the original computer system builders for not anticipating a day when paper would no longer be part of the process. So, while it’s important to note where things are and how the actions of the past are hampering your desires for the future, it would be incorrect to say the predecessors “did it wrong.”
Our journey forward is not just about simply getting rid of the old in favor of the new. It’s about understanding the layers of history beneath our feet and using that knowledge to build more resilient, flexible, and efficient systems. The ruins upon which our modern cities and businesses are built serve as a testament to human ingenuity and adaptability. They remind us that while the paths of the past may shape our journey, they do not define our destination.
Embracing this legacy offers us the foundation upon which to innovate and the wisdom to avoid past pitfalls. As we look towards the future, let us do so with a respect for what has come before and a bold vision for what is yet to be achieved. By acknowledging the complexity of our past, we can forge a future that is not limited by the constraints of yesterday but is inspired by the potential of tomorrow.
Just keep in mind that today’s innovations will be tomorrow’s ruins, today’s cow paths tomorrow’s highways (if they even still have highways!). We must build for our own needs today and cannot know what needs there might be in the future. After all, our cows and our children need safe places to walk in the world we have today if there is to be a future.
The ruins of the past constrain us, but they also empower us. Without them we would not be here.

Leave a Reply