If you work actively in modeling and simulation you will encounter the codes of bygone days. If I were more of a historian it could come in really handy although comments in these codes often leave much to be desired. These codes are the stuff of myth and legend, or at least it seems like. The authors of the codes are mythically legendary. They did things we can’t do any longer; they created useful tools for conducting simulation. This is a big problem because we should be getting steadily better at conducting simulations. This becomes an even bigger problem when these people no longer work, and their codes live on.

“What I cannot create, I do not understand.” – Richard Feynman

Too large a portion of the simulation work done today is not understood in any deep way by those doing the simulation. In other words the people using the code and conducting the simulation don’t really understand much about how the answer they are using was arrived at. People run the code, get an answer do analysis without any real idea of how the code actually got the answer. This is dangerous. This actually works to undermine the scientific enterprise. Moreover, this trend is completely unnecessary, but some deep cultural undercurrents that extend well beyond the universities, labs and offices where simulation should be having a massively positive impact on society drive it.

The people who created these codes are surely proud of their work. I’ve been privileged to work with some, and all of them are generally horrified with how long their codes continue to be used to the exclusion of newer replacements. It was their commitment to apply applied technical solutions to real problems that made a difference. Those that create those earlier technical solutions were committed to applying technology to solving problems, and they were good at it. The spirit of discovery that allowed them to create codes and then see them used for meaningful work has dissipated in broad swaths of science and engineering. The disturbing point is that we don’t seem to be very good at it any more. At least we aren’t very good at getting our tools to solve problems. The developers of the mythic codes generally feel quite distressed by the continued reliance on their aging methods, and the lack of viable replacements.


I don’t believe it is the quality of the people, nor is it the raw resources available. Instead, we lack the collective will to get these things done. Our systems are letting us down. Society is not allowing progress. Our collective judgment is that the risk of change actually outweighs the need for or benefit of progress. Progress still lives on in other areas such as “big data” and business associated with the Internet, but even there you can see the forces of stagnation looming on the horizon. Areas where society should place its greatest hope for the future is under threat by the same forces that are choking the things I work on. This entire narrative needs to change for the good of society and the beneficial aspects of progress.

Remarkably, the systems devised and implemented to achieve greater accountability are themselves at the heart of achieving less. The accountability is a ruse, a façade put into place to comfort the small-minded. The wonder of solving interesting problems on a computer seems to have worn off being replaced by a cautious pessimism about the entire enterprise. None of these factors are necessary, and all of them are absolutely self-imposed limitations. Let’s look at each of these issues and suggest something better.

All the codes were created in the day when computing was in its infancy, and supported ambitious technological objectives. Usually a code would cut its teeth of the most difficult problems available and if it proved useful, the legend would be born. The mythic quality is related to the code’s ability to usefully address the problems of importance. The success of the technology supported by the code would lend itself to the code’s success and mythic status. The success of the code’s users would transfer to the code; the code was part of the path to a successful career. Ambition would be satisfied through the code’s good reputation. As such, the code was part of a flywheel with ambitious projects and ambitious people providing the energy. The legacy of the code creates something that is quite difficult to overcome. It may require more willpower to move on than the code originally harnessed in taking on its mantle of legend.

We seem to have created a federal system that is maximizing the creation of entropy. It is almost as if the government were expressing a deep commitment to the second law of thermodynamics. Despite being showered with resources, the ability to get anything of substance done is elusive. Beyond this, the elusive nature of progress is growing in prominence. Creating a code that has real utility for real applied problems takes focus, ingenuity, luck and commitment. Each of these is in limited supply. The research system of today seems to sap each of these in a myriad of ways. It seems almost impossible to focus on anything today. If I told you how many projects I work on, you’d immediately see part of the problem (7 or 8 a year). This level of accounting comes at me from a myriad of sources, some entirely local, and some National in character. All of it tinged with the sense that I can’t be trusted.

It takes a great deal of energy to drive these projects toward anything that looks coherent; none of this equals the creation and stewardship of a genuine capability. Ingenuity is being crushed by the increasingly risk adverse and politically motivated research management system. Lack of commitment is easy to see with the flighty support for most projects. Even when projects are supported well, the management system slices and dices the effort into tiny bite-sized pieces, and demands success in each. Failure is not tolerated. Wisdom dictates that the lack of tolerance for failure is tantamount to destroying the opportunity for success. In other words, our risk aversion is causing the very thing that it was designed to avoid. Between half-hearted support, and risk aversion the chance for real innovation is being choked to death.

The management of the Labs where I work is becoming ever more intrusive. Take for example the financial system. Every year my work is parceled into ever-smaller chunks. This is done in the name of accountability. Instead the freedom to execute anything big is being choked by all this accountability. The irony is that the detailed accounting is actually assuring that less is accomplished, and the people driving the micromanagement aren’t accountable for the damage they have caused in the slightest. The micro accounting of my time is also driving a level of incrementalism into the work that destroys the ability to do anything game changing. This incrementalism goes hand-in-hand with the lack of any risk-taking. We are dictated to succeed by fiat, and by the same logic success on a large scale will also be inhibited.

When it comes to code development the incremental attitude results in work being accreted onto the same ever-older code base. The low risk path is to add a little bit more onto the already useful (legacy) code. This is done despite the lack of real in-depth knowledge of how the code actually works to solve problems. The part of the code that leads to its success is almost magical, and as magic can’t be tampered with. The foundation for all the new work is corrupted by the lack of understanding which then poisons the quality of the work built on top of the flawed base. As such, the work done on top of the magical foundation is intrinsically superficial. Given the way we manage science today superficiality should actually be expected. Our science and engineering management is focused almost to exclusion on the most superficial aspects of the work.

The fundamental fact is that a new code is a risk. It may not replace or improve upon the existing capability. Success can never be guaranteed, nor should it be. Yet we have created a system of managing science that cannot tolerate any failure. Existing codes already solve the problem well enough for somebody to get answers, and the low risk path is to build upon this. Instead of building upon the foundation of knowledge and applying this to better solutions, it is cheaper and lower risk to simply refurbish the old code. Like much of our culture today the payoff is immediate rather than delayed. You get new capability right away rather than a much better code later. Right away and crummy beats longer term and great every time. Why? Short attention spans? No real accountability? Deep institutional cynicism?

A good analogy is the state of our crumbling physical infrastructure. The United States’ 20th Century infrastructure is rotting before our eyes. When we should be thinking of a 21st Century infrastructure, we are trying to make the last Century’s limp along. Think of an old bridge that desperately needs replacement. It is in danger of collapse and represents a real risk rather than a benefit to its users. More often than not in today’s America, the old bridge is simply repaired, or retrofitted regardless of its state of repair. You can bumble along this path until the bridge collapses. Most bridges don’t, but some do to tragic consequences. Usually there is a tremendous amount of warning that is simply ignored. Reality can’t be fooled. If the bridge needs replacing and you fail to do so, a collapse is a reasonable outcome. Most of the time we just do it on the cheap.

We are doing science exactly the same way. In cases where no one can see the bridge collapse, the guilty are absolved of the damage they do. Just like physical infrastructure, we are systematically discounting the future value for the present cost. The management (can’t really call them leaders) in charge simply is not stewards of our destiny; they are just trying holding the crumbling edifice together until they can move on with the hollow declaration of success. Sooner or later, this lack of care will yield negative consequences.

All this caution is creating an environment that fails to utilize existing talent, and embodies a pessimistic view of man’s capacity to create. This might be the saddest aspect of the overall malaise, the waste of potential. Our “customers” actually ask very little of us, and the efforts don’t really push our abilities; except, perhaps, our ability to withstand work that is utter dreck. The objectives of the work are small-minded with a focus on producing sure results and minimizing risks. The system does little to encourage big thoughts, dreams, or risks behind creating big results. Politicians heighten this sense by constantly discussing how deeply in debt our country is as an excuse for not spending money on things of value. Not every dollar spent is the same; a dollar invested in something of value is not the same as a dollar spent on something with no return. All of this is predicated on the mentality of scarcity, and a failure to see our fellow man or yourself as engines of innovation and unseen opportunities. History will not be kind to our current leadership when it is realized how much was squandered. The evidence that we should have faith in man’s innate creative ability is great, and the ignorance of the possibility of a better world is hard to stomach.

The first step toward a better future is change in the assumptions regarding what an investment in the future looks like. One needs to overthrow the scarcity mentality and realize that money invested wisely will yield greater future value. Education and lifetime learning is one such investment. Faith in creativity and innovation is another investment. Big audacious goals and lofty objectives are another investment. The big goal is more than just an achievement; it is an aspiration that lifts the lives of all who contribute. It also lifts the lives of all that are inspired by it. Do we have any large-scale societal goals today? If we don’t, how can we tolerate such lack of leadership? We should be demanding something big and meaningful in our lives. Something that is worth doing and something that would make the current small-minded micromanagement and lack of risk taking utterly unacceptable. We should be outraged by the state of things, and the degree to which we are being led astray.

All of us should be actively engaged in creating a better world, and solving the problems that face us. Instead we seem to be just hanging on to the imperfect world handed to us. We need to have more faith in our creative problem solving abilities, and less reverence for what was achieved in the past. The future is waiting to be created.

“If you want something new, you have to stop doing something old” ― Peter F. Drucker