Source: OSTI | Release | March 12, 2017

Log for DOE CodeWhat would a modern software center look like?

We posed that question to Department of Energy (DOE) researchers across the complex in an effort to continue making our scientific and technical information (STI) tools and services best in class.  The answers we received were both enthusiastic and enlightening:  to be most useful, a modern DOE software platform must connect researchers in meaningful ways to their software, data, and research documents; embrace open source; not duplicate but complement existing community practices and platforms; provide for social coding; and enable social media that incorporates sharing and notification systems for software news and updates as well as links to author profiles.

We at the DOE Office of Scientific and Technical Information (OSTI) are happy to announce that this platform, called DOE Code, is now under planning and development.

Why is this important to DOE?

Software is a critical form of STI and instrumental to scientific research.  It allows scientists to achieve day-to-day tasks, perform complex modeling and simulation, execute big data analytics, and control some of the largest scientific instruments in the world; in other words, software is essential to every aspect of modern scientific research.

Why is it important for OSTI to ensure a robust software platform?

OSTI is charged with fulfilling the Department’s responsibilities to collect, preserve, and disseminate scientific and technical information emanating from DOE R&D activities.  The STI that we collect and make available includes software, as well as technical and workshop reports; journal article manuscripts, citations, and articles; scientific research data; videos; patents; books and monographs; conference papers and presentations; program documents; and theses and dissertations.  We provide access to this STI using web-based searchable databases, offering ever expanding sources of R&D information to the DOE research enterprise and the science-attentive public.

The current software center at OSTI, the Energy Science and Technology Software Center (ESTSC), is the centralized software management facility for the DOE, and it licenses and distributes scientific and technical software packages developed by DOE contractors, national laboratories, and other facilities.  The center currently contains over 3,500 distinct pieces of software resulting from DOE R&D, as well as selected software from the Nuclear Energy Agency of the Organization for Economic Cooperation and Development.  The ESTSC was officially started at OSTI on October 1, 1991, and before that it was housed at Argonne National Laboratory, where it was known as the National Energy Software Center.  The National Energy Software Center, originally called the Argonne Code Center, was started by Margaret Butler in 1960, in part to support the American Nuclear Society and the development of new reactor physics codes.

Today, with the rise of open source software (OSS) and the proliferation of social collaboration networks, OSTI and researchers across the DOE complex recognize the need for a more robust, community-focused software management system.

To guide this transformation, we are collaborating with Jay Jay Billings, a software architect at Oak Ridge National Laboratory (ORNL).  An astrophysicist by training, Jay is active in the open source community, particularly the Eclipse Foundation, and contributes to many online software repositories, making him a valuable asset in the evolution of DOE Code.  He is on-site at OSTI on a weekly basis, leading the effort to gather requirements and to begin developing specifications for the DOE Code architecture.

Understanding that community engagement is crucial to the success of DOE Code, Jay has organized multiple DOE and external stakeholder teams to pitch in on this project.  In addition, we have identified conferences and workshops where OSTI personnel have been and will continue to be on hand to socialize DOE Code and to gain insights from a wide range of researchers and developers.  For example, DOE Code was featured at a Technical Activities Coordinating Committee (TACC) workshop that I chaired during International Data Week in September.  The workshop was part of the International Council for Scientific and Technical Information (ICSTI) General Assembly, held in Colorado.  The DOE Code concept will also be featured in November at the Supercomputing 2016 (SC16) conference in Salt Lake City.

DOE Code will seamlessly interface with code repositories such as GitHub, not impeding current or emerging community practices but making DOE-affiliated software code more discoverable and citable.  As OSTI now does for numeric datasets, we will issue digital object identifiers (DOIs) for software code, making it easier to cite and locate software and for developers to get credit for their work.  This will also allow us to more easily link from software to the resulting datasets and papers associated with the software; that is, being able to tell the full “story” of research outcomes and making those outcomes more reproducible.

A firm “release date” for DOE Code has not been established, but we plan incremental releases of capabilities, which will allow us to release early, often, and iteratively so that we can quickly respond to changes in requirements.  Each iteration will include requirements analysis, code development, community engagement, increased support for providing repositories, and improvements in our archival services.

We look forward to this transformation to DOE Code, and we anticipate many more feature requests and ideas from the community.  We invite and encourage the DOE software community to participate in and contribute to the development of DOE Code.  If you would like to know more about the project, please reach out on Twitter (@OSTIgov or @jayjaybillings) or email directly at