  The world is becoming increasingly complex, both in terms of the rich sources
of data we have access to as well as in terms of the statistical and
computational methods we can use on those data. These factors create an
ever-increasing risk for errors in our code and sensitivity in our findings to
data preparation and execution of complex statistical and computing methods.
The consequences of coding and data mistakes can be substantial. Openness
(e.g., providing others with data code) and transparency (e.g., requiring that
data processing and code follow standards) are two key solutions to help
alleviate concerns about replicability and errors. In this paper, we describe
the key steps for implementing a code quality assurance (QA) process for
researchers to follow to improve their coding practices throughout a project to
assure the quality of the final data, code, analyses and ultimately the
results. These steps include: (i) adherence to principles for code writing and
style that follow best practices, (ii) clear written documentation that
describes code, workflow and key analytic decisions; (iii) careful version
control, (iv) good data management; and (iv) regular testing and review.
Following all these steps will greatly improve the ability of a study to assure
results are accurate and reproducible. The responsibility for code QA falls not
only on individual researchers but institutions, journals, and funding agencies
as well.
