5
A Course in Reproducible Research Some content is generic, some is domain specific Generic content must be illustrated by domain specific examples Meta issues Where should these topics be taught? Single generic course is unlikely to gain traction (at least in established institutions), so piecemeal inclusion into other computationally oriented courses is more likely to work How can we share course material that is developed? Creative commons (but be careful about NC restrictions) Examples: Software Carpentry bootcamps, reproducible science winter school in Geilo Norway, HPC course at U Washington, computational science course at KAUST, Dec 2012 1

A Course in Reproducible Research Some content is generic, some is domain specific Generic content must be illustrated by domain specific examples Meta

Embed Size (px)

Citation preview

Page 1: A Course in Reproducible Research Some content is generic, some is domain specific Generic content must be illustrated by domain specific examples Meta

A Course in Reproducible Research• Some content is generic, some is domain specific• Generic content must be illustrated by domain

specific examples• Meta issues

– Where should these topics be taught? Single generic course is unlikely to gain traction (at least in established institutions), so piecemeal inclusion into other computationally oriented courses is more likely to work

– How can we share course material that is developed? Creative commons (but be careful about NC restrictions)

– Examples: Software Carpentry bootcamps, reproducible science winter school in Geilo Norway, HPC course at U Washington, computational science course at KAUST, others?

Dec 2012 1

Page 2: A Course in Reproducible Research Some content is generic, some is domain specific Generic content must be illustrated by domain specific examples Meta

Hands-on Topics (1)• Software Carpentry

– version control– scripting– databases– build systems– unit testing

• Testing– system / regression– V&V / UQ– continuous integration

• Provenance• Reproducibility in statistical and probabilistic

computations

Dec 2012 2

Page 3: A Course in Reproducible Research Some content is generic, some is domain specific Generic content must be illustrated by domain specific examples Meta

Hands-on Topics (2)• Research documentation

– lab notebook– research compendium– literate programming

• Programming (not in SWC)– debuggers– how to write good code– floating point / nondeterminism– documentation

• Big challenges– high performance computing– big data– cloud computing– complicated SW stacks / toolchains (solution is VMs)

Dec 2012 3

Page 4: A Course in Reproducible Research Some content is generic, some is domain specific Generic content must be illustrated by domain specific examples Meta

Lecture Topics• IP / licensing• Citation / attribution• examples of RR (both good & bad; ideally domain

specific)• publishing / repositories / archives• generic scientific software requirements

Dec 2012 4

Page 5: A Course in Reproducible Research Some content is generic, some is domain specific Generic content must be illustrated by domain specific examples Meta

Participants• Juliana Freire• Andrew Davison• David Ketcheson• Aron Ahmadia• Randall LeVeque• Ian Mitchell• Yihui Xie• Andre Brodtkorb

Dec 2012 5