Share
Embed
How to write a reproducible paper #2
Seminar for Data Science Hobart
Damien Irving
February 25, 2016
Transcript
20 slides
-
How to write a reproducible paper Damien Irving CSIRO @DrClimate
https://drclimate.wordpress.com -
Irving D, Simmonds I (2015). A novel approach to diagnosing
Southern Hemisphere planetary wave activity and its influence on regional climate variability. Journal of Climate. 28, 9041-57. doi:10.1175/JCLI-D-15-0287.1 Irving D (in press). A minimum standard for publishing computational results in the weather and climate sciences. Bulletin of the American Meteorological Society. doi:10.1175/BAMS-D-15-00010.1 -
The reproducibility crisis Our field has rapidly transitioned to
a computational science Conventions around communicating our methods have hardly changed Have you ever seen a paper provide (ancillary) code/software details? It’s impossible to replicate the results presented in journal papers today -
The crisis response Funding agencies + journals1 Some
progress on dataset disclosure ◦ Funders like NSF, ARC have policies ◦ Most weather/climate journals have policies ◦ Not consistently enforced Weak or non-existent code requirements It’s not all their fault No examples to base new standards on I set about addressing this deficiency… 1. Stodden et al. 2013. PLoS ONE, 8, e67111 -
A plan for change 1. Consult the literature Why
don’t people publish their code? Best practices for scientific computing 2. Devise and implement an approach Irving & Simmonds (2015) 3. Lobby journals Propose a communication standard (BAMS) Contact decision makers 4. Help scientists improve their skills Software Carpentry Research Bazaar -
1. The literature Barriers to overcome1 Perceived lack
of time Low computational competency è minimise time and complexity Computational best practice2 Write scripts Modularise, don’t copy/paste -> code library Use version control 1. Stodden (2010). doi:10.2139/ssrn.1550193 2. Wilson et al. 2014. PLoS Biol, 12, e1001745 -
Add a computation section that contains: Brief overview
of software packages ◦ Academic credit for software authors Link to collection of supplementary materials: ◦ Software description, code, log files ◦ Host with journal, institution or Figshare/Zenodo 2. The approach http://dx.doi.org/10.6084/m9.figshare.1385387 -
Software Description Name, version number, release date, institution and
DOI or URL i.e. sufficient detail to recreate environment -
Code [compulsory] Provide a copy of your version controlled
code repository [desirable] Link to an external hosting service Allows readers to view updates & submit pull requests Your everyday repository is fine github.com/DamienIrving/climate-analysis -
Log files Step-by-step account, download to result My
suggestion: the NCO / CDO approach Can generate timestamps with any language Features: Simple, read/writeable by anyone, easy to regenerate (no manual editing) -
3. Lobby decision makers Proposed minimum standard: Authors
must include brief computation section which cites software and points to supplementary materials: ◦ Software description ◦ Code (suggest version controlled, public) ◦ Log files Authors not obliged to provide assistance Reviewers only need to check availability Editorial discretion re code privacy -
AMS Board on Data Stewardship Still assessing impact
of data standards Follow community trends ◦ Will you try the approach for your next paper? https://drclimate.wordpress.com/2015/11/05/ a-call-for-reproducible-research-volunteers/ -
4. Helping scientists Software Carpentry AMOS Conference, 2013-15
DaSH, UNSW, 2015 Content (two-days): Unix Shell Programming (in Python) Version control Workflow automation (with Make) Data management: damienirving.github.io/capstone-oceanography/ -
Aim higher! Minimum standard is reproducible, but not very
comprehensible Ideas: README files Write packages ◦ e.g. eofs, windspharm, SkewT VisTrails / CWSLab workflow tool ◦ http://cwslab.nci.org.au/ Docker -
Why aim for reproducibility? To literally reproduce results /
catch people out Software evolves so quickly Most don’t have access to suitable hardware To build on each other’s ideas faster The risk of people doing nothing with your work is much greater than the risk of being “scooped” -
Summary There is a reproducibility crisis in weather/ climate/ocean
research This can be solved by adding a brief computation section to papers which points to supplementary materials: Software description Code (version controlled, public) Log files Journals could adopt this framework as a formal minimum standard