Chapter 93. You Can't Future-Proof Solutions

Richard Monson-Haefel is an independent software developer who coauthored all five editions of Enterprise JavaBeans and both editions of Java Message Service (all O'Reilly). He's a multitouch interface designer/developer and a leading expert on enterprise computing.

Richard Monson-Haefel
image with no caption

Today's Solution Is Tomorrow's Problem

NO ONE CAN PREDICT THE FUTURE. If you accept this as a universal truth, then the question becomes, how far ahead is the future? One decade? Two years? Twenty minutes? If you can't predict the future, then you can't predict anything beyond right now. This very moment and the ones that preceded it are all you are know until the next moment occurs. This is the reason we have car accidents; if you knew you were going to have an accident on Thursday, you would probably stay home.

Yet we see software architects try to design systems that will be, for lack of a better term, "future-proof" all the time. It's simply not possible to future-proof an architecture. No matter what architectural decision you make now, that choice will become obsolete eventually. The cool programming language you used will eventually become the COBOL of tomorrow. Today's distributed framework will become tomorrow's DCOM. In short, today's solution will always be tomorrow's problem.

If you accept this fact—that the choices you make today will most certainly ...

Get 97 Things Every Software Architect Should Know now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.