U.S. flag

An official website of the United States government

Dot gov

Official websites use .gov
A .gov website belongs to an official government organization in the United States.


Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.


Main content area

Proposed Standards for Peer-Reviewed Publication of Computer Code

Dennis Timlin, Olaf David, Timothy R. Green, David H. Fleisher, Soo-Hyung Kim, Laj R. Ahuja
Agronomy journal 2016 v.108 no.5 pp. 1782-1786
agricultural research, computer software, computers, cost effectiveness, education, models, publications, scientists
The use of computers in agricultural research has expanded rapidly in recent years. Such code can be considered a scientific product that has applications in both research and education. Usage of this code can be expanded to a wide range of potential end users. We propose that the Agronomy Journal peer review and publish software code in the form of small, self-contained modules. To do this, it is critical that the software used in agricultural research be well documented and written in a clear, easily understandable format. Our objective is to outline consistent standards that can be used to publish peer-reviewed computer code. The goal of documenting source code is to inform the reader of the logic, meaning of variable names, and purpose of the various components of the code. Users who are not familiar with the code should be able to easily comprehend and use it. The documentation should include test data and a driver such that users can run the model and compare output to published results. Parameters and other input and output variables should be described in detail and documented so their source in the literature can be identified. Use of models by members of the scientific community and other end users can increase the impact of the developer’s research and reduce costs of research devoted to modeling efforts. This article discusses necessary requirements to document and publish code that facilitates the reuse and modification of code.