To avoid criticism say nothing, do nothing, be nothing.

― Aristotle

One warning there will be some bad words in the post today. If you don’t like it, don’t go on. It is the way most of us really talk about stuff!

legacy-code-1Earlier this week I gave a talk on modernizing codes to a rather large audience at work. The abstract for the talk was based on the very first draft of my Christmas blog post. It was pointed and fiery enough to almost guarantee me a great audience. I can only hope that the talk didn’t disappoint. A valid critique of the talk was my general lack of solutions to the problems I articulate. I countered that the solutions are dramatically more controversial than the statement of the problems. Nonetheless the critique is valid and I will attempt to provide the start of a response here.

Here are the solutions I would propose at a high level:

  1. Constantly question ourselves on whether we are going in the right direction. Today we follow directions mindlessly, and refuse to make reasonable course corrections. (this point was a part of the talk! I think it is the vital starting point)
  2. Micromanagement is killing us; we need to macromanage at focus on large objectives.
  3. Focus on improving reality and stop focusing on large-scale projects that produce impact in the real world.
  4. Destroy the mediocrity, obedience and compliance cultures that have arisen because of fear-based management and decision making
  5. Allow failure, encourage risk, and celebrate mistakes
  6. If something is really failure, allow it, say it and be all right with it. No more bullshit statements of success where reality is a train wreck.
  7. Create a learning environment where failure and mistakes create opportunity for growth
  8. Focus on excellence rather than subservience and mediocrity.
  9. Stop using money as a measure of success
  10. Rid us of short-term thinking and measurement of success. Start looking toward long-term success
  11. Rid ourselves of the vast amount wasted effort going into menial tasks that serve no purpose (obedience and compliance related)
  12. Get rid of project management of science. This concept is utterly and completely destructive for the conduct of science.
  13. We are never prepared for serendipitous outcomes and the change of direction they should provide.
  14. We are ruled by fear and use this fear as the reason to avoid risk and fail to reach highly for achievements.
  15. Quit allowing our system to turn failure into success. Let failure happen. Celebrate. Learn move forward. By allowing failure to be rebranded as success lets failure serve the wrong purpose.

If failure is not an option, then neither is success.

― Seth Godin

bullshit_everywhere-e1345505471862ASC is a prime example of failing to label and learn from failures. As a result we make the same mistakes over and over again. We are currently doing this in ASC in the march toward exascale. The national exascale initiative is doing the same thing. This tendency to relabel failures as success was the topic of my recent “bullshit” post. We need failure to be seen as such so that we do better things in the place of repeating our mistakes. Today the mistakes simply go unacknowledged and become the foundation of a lie. Such lies then become the truth and we lose all contact with reality. Loss of contact with reality is the hallmark of today’s programs.

Remember the two benefits of failure. First, if you do fail, you learn what doesn’t work; and second, the failure gives you the opportunity to try a new approach.

—Roger Von Oech

6767444295_259ef3e354One of the serious problems for the science programs is their capacity to masquerade as applied programs. For example ASC is sold as an applied program doing stockpile stewardship. It is not. It is a computer hardware program. Ditto for the exascale initiative, which is just a computing hardware program too. Science or the stockpile stewardship missions are mere afterthoughts. The hardware focus becomes invariant to any need for the hardware. Other activities that do not resonate with the hardware focus simply get shortchanged even when they have the greatest leverage in the real world.

[Warning foul language ahead!]

In other words, when things are fucked up, someone needs to say so, and the fuck up needs to be acknowledged. If we don’t we can’t learn and we end up fucking up again. The general bullshit way of reporting success for things that are not successful creates the environment where fuck ups are not viewed as such. Good fuck ups should not end careers they should be highlights as long as you learn from it. If you don’t learn from your mistakes then you have a problem. Today we have the bigger problem of never allowing ourselves to ever learn from a genuine mistake, which only plants the seeds of ever greater fuck ups in the future.


The ubiquity of the humor of the Dilbert comics lends perspective to all of this. Dilbert is dominated by issues from the corporate world and seems to indicate that the issues we are having a pervasive society-wide. Corporate governance is as messed up as government funded research. I’m almost certain that academia is in a similar or worse shape. Some places like NASA are envious of the screwed up state of affairs we have in DOE. I probably don’t court too much controversy by saying that money is at the root of many problems largely because it’s become the universal way of keeping score of success.

Judge a man by his questions rather than by his answers.

― Voltaire