Models Methods Software

Dan Hughes

Coding Standards Finally Appear

Steve Easterbrook has provided a list of coding standards that are associated with some of the climate models. The first one is for the NASA / GISS ModelE model and code.

Professor Easterbrook states,

Two followup tasks I hope to get to soon – (1) analyze how much these different standards overlap/differ, and (2) measure how much the model codes adhere to the standards.

Here are a few leads relative to Task (2):

  • A GISS ModelE code fragment
  • Coding Guidelines and Inline Documentation
  • Another NASA/GISS ModelE Code Fragment
  • an extra thousand coe checkers
  • Pattern Matching in NASA/GISS ModelE Coding
  • Yet Even More NASA/GISS ModelE Coding
  • The first of these posts was written almost four years ago. The date on the NASA / GISS ModelE document is February 2010. I’m not hopeful that Better late than never will work out in this case. It’s very difficult to retro-fit coding standards to code that is several decades old.


    November 8, 2010 - Posted by | Uncategorized | , , , , ,


    1. November 8th, 2010 at 11:29 #3 Steve Easterbrook said:

      Josh: Dan doesn’t seem to have much to show so far if he’s been at this for several years. The title he used for the post you link to is very telling: “coding standards finally appear”. Obviously, they were very cleverly hidden before, because nobody (least of all Dan) would ever think of typing “climate model coding standards” into Google.

      How does The Google work when you’ve searching for NASA/GISS ModelE information in 2006 for documents made available in 2010?

      Comment by Dan Hughes | November 8, 2010 | Reply

    2. Hi Dan,

      I find Easterbrook’s quote above hard to understand. If these older coding standards predate your 2008 documentation analysis, and were widely available, doesn’t that bring up the SQA issue that “coding standard or no, we coders are just going to do our own thing”?

      I would have thought ignoring standards would more alarming than choosing to code without standards. The former may be unfixable, the later easily fixable.

      I personally would want to give stakeholders the confidence that model coders have a corrective action program in place and they can be counted on to follow the documented process improvements such a program would produce. Such as better and better coding standards — THAT ARE ACTUALLY, DEMONSTRABLY IMPLEMENTED.

      Instead, a “trust but verify” type of stakeholder is left with the impression that these documents are produced periodically just to keep up the illusion of process improvement. Don’t want to seem untrustworthy. Too much at stake.

      What am I missing here?

      And can’t pass up a remark on Steve’s google-fu. (Sorry.) It is incorrect to assume that a document dated 1999 means that it was immediately available on the Internet and that a Google search would have returned it back in 1999. (Google was what — about a year old back then?) Or in 2008 for that matter.

      Comment by George Crews | November 8, 2010 | Reply

    3. Thought you’d appreciate this (emphasis mine):

      The academic community seems to judge the validity and significance of any contribution by the number of papers published and the number of citations they get. To find funding, to get credit, you have to publish or perish. However, the natural output of software development tends not to be an article (people who confuse articles and documentation do a poor job of both, IMHO).

      Scientific publication for software development

      Comment by jstults | January 9, 2011 | Reply

    4. Josh,

      My experiences have been that publishing papers does buy a few points, but other documentation efforts were equally rewarded. There’s no way that the code manuals that represent the specifications for real-world engineering software will be published in a journal. So, the internal technical memos, white papers, and project reports that lead to the manuals and the manuals themselves are very important. I found that actively participating in these activities was rewarded on par with so-called peer-reviewed papers in journals. I say so-called because all these internal documents were peer-reviewed to a level that’s not approached by any journal. When doing private consulting, the contract will explicitly state that reports shall be written. Otherwise, the customer doesn’t have anything to show for its money. Our work for a variety of government agencies, both national and international, also always called for reports.

      On a related issue, we always had to have an accepted paper in order to attend technical conferences and workshops. Abstract-only or posters wouldn’t get us there.

      Typical models / codes in my industry run to thousands of pages. The models and methods volume alone will have have 5 to 10 equations per page for about 700 to 1000 pages. won’t fit in a journal.

      Comment by Dan Hughes | January 10, 2011 | Reply

    Leave a Reply

    Fill in your details below or click an icon to log in: Logo

    You are commenting using your account. Log Out /  Change )

    Facebook photo

    You are commenting using your Facebook account. Log Out /  Change )

    Connecting to %s

    %d bloggers like this: