Software & best practices to facilitate open science
Scott Chamberlain (@sckottie/@ropensci)
UC Berkeley / rOpenSci
Incentives are for:
no citations needed
Papers
Grants
More papers
And more papers
maybe teaching
so, software is essentially not even on the list
how do we change incentives?
are there lessons from history?
Resistance to change
Some academics tend towards non-open tools (b/c what they know?)
Convincing PIs difficult b/c above, and they're busy
Reach out to graduate students -> they can change from below
culture clash: open source software vs. academic culture
Gov't Funders: All the new are belong to us!
Funders want new findings - that is, new software
Few ways to fund infrastructure sustainably
Universities don't want to pay salaries for software engineers
Evidence of above: vibrant non-profit culture surrounding academia funded by private foundations
There are hopeful signs though ...
Open science ecosytsem
rOpenSci origin
formed from ad-hoc conversation over blogs/Twitter
by the need to make research easier/more reproducible
now worldwide community
Data acquisition
data manipulation/analysis/viz
writing
publish
Data acquisition
data manipulation/analysis/viz
writing
publish
Data acquisition
data manipulation/analysis/viz
writing
publish
Data acquisition
data manipulation/analysis/viz
writing
publish
Data acquisition
data manipulation/analysis/viz
writing
publish
use case 1
McGee, M. D., Borstein, S. R., Neches, R. Y., Buescher, H. H., Seehausen, O., & Wainwright, P. C. (2015). A pharyngeal jaw evolutionary innovation facilitated extinction in Lake Victoria cichlids. Science, 350(6264), 1077–1079
use case 3: OKMaps
Software Best Practices
continuous integration
unit testing
consistent style (within reason)
thorough documentation (can always be better though)
DRY code
teach these to community
best practices for many small pieces?
a lot of practices around large projects
hard to keep track of all the projects
bigger chance of reinventing wheels
many small, makes easy for people to get involved
how to make a resilient contributor base?
be really nice!!!
> 1 contributor
direct access to dedicated contribs
contributor diversity
turn users into contribs
Make software work easier: incentives
make software count for tenure/grad school
more funding opportunities
more jobs making software in academia
Make software work easier: remove barriers
make path academia to industry easy
provide software training
rOpenSci Software Review
Completely open source tools
Free to run
All reviews/conversations in the open
Reviews are/can be linked to code changes
Paired with submission to a journal - JOSS
Software Review: Rising Tide Raises All Boats
People really like software review
Software Review: Spread it Around
we're experimenting with how to package up the workflow and make it easy to deploy
let us know if you have any feedback on the process
similar groups
rOpenGov
Algorithms for Computational Social Science and Digital Humanities
Wrap Up
Software is important for (open) science
But software not appreciated
Para-academics/rOpenSci model for long-term software sustainability
Wrap Up: rOpenSci
rOpenSci: software best practices, community based
rOpenSci: software review
Moving forward
rOpenSci: expand to more disciplines
use rOpenSci model in other disciplines