  Independent computational reproducibility of scientific results is rapidly
becoming of pivotal importance in scientific progress as computation itself
plays a more and more central role in so many branches of science.
Historically, reproducibility has followed the familiar Popperian [38] model
whereby theory cannot be verified by scientific testing, it can only be
falsified. Ultimately, this implies that if an experiment cannot be reproduced
independently to some satisfactory level of precision, its value is essentially
unquantifiable; put brutally, it is impossible to determine its scientific
value. The burgeoning presence of software in most scientific work adds a new
and particularly opaque layer of complexity [29]. In spite of much recent
interest in many scientific areas, emphasis remains more on procedures,
strictures and discussion [12, 14, 16, 29, 30, 37, 41], reflecting the
inexperience of most scientific journals when it comes to software, rather than
the details of how computational reproducibility is actually achieved, for
which there appear to be relatively few guiding examples [6, 10, 17]. After
considering basic principles, here we show how full computational
reproducibility can be achieved in practice at every stage using a case study
of a multi-gigabyte protein study on the open SwissProt protein database, from
data download all the way to individual figure by figure reproduction as an
exemplar for general scientific computation.
