I just landed in Oakland, where I’ll be participating in a two-day workshop exploring the role of software and training for earth and environmental science. The meeting is convened by the Institute for Sustainable Earth and Environmental Software (ISEES), and supported by the National Science Foundation.
Over the course of the meeting we’ll discuss the needs of the community and the evolving role of software as an enabler in advancing the field, with the aim of honing a vision for a “software institute” for environmental science. Whether that’ll be modeled after the Software Sustainability Institute in Edinburgh, I’m not sure – but looking forward to seeing how the conversation unfolds. Also keen to hear if/how training may fit into their vision as a cornerstone for supporting better practice in the discipline.
This is the last in a series of workshops convened by ISEES (with an impressive group behind it, including Trisha Cruse, Peter Fox and Bruce Caron). Stay tuned for more about the event, and for information on ISEES, visit their website.
This is the first is a series of posts over the coming months about treating code as a fundamental component – or a first-class citizen – of modern-day research. Research is becoming increasingly reliant on code and analysis, and we’ve come a ways in getting data recognized as a “research object”. But what about the software needed to regenerate analyses? How do we shift the conversation to also recognize the code used to conduct the experiment as a critical piece of research?
The Software Sustainability Institute in the UK has some excellent posts outlining the ideal world many of us are striving for in open science. Here’s an excerpt from their longer post on this entitled “Publish or be damned” that I found especially interesting. (Do give the full post a read when you have a chance, too. It outlines a number of the key issues we need to be cognizant of.)
And, as always, I welcome your thoughts (keep them constructive, please. 🙂 )
The Research Software Impact Manifesto
As those involved in the use and development of software used in research, we believe that:
- Open science is a fundamental requirement for the overall improvement and acheivement of scientific research.
- Open science is built on the tenets of reuse, repurposing, reproducibility and reward.
- Software has become the third pillar of research, supporting theory and experiment.
- Current mechanisms for measuring impact do not allow the impact of software to be properly tracked in the research community.
- We must establish a framework for understanding the impact of software that both recognises and rewards software producers, software users and software contributors; and encourages the sharing and reuse of software to achieve maximum research impact.
To enable this, we subscribe to the following principles:
- Communality: software is considered as the collective creation of all who have contributed
- Openness: the ability of others to reuse, extend and repurpose our software should be rewarded
- One of Many: we recognise that software is an intrinsic part of research, and should not be divorced from other research outputs
- Pride: we shouldn’t be embarassed by publishing code which is imperfect, nor should other people embarass us
- Explanation: we will provide sufficient associated data and metadata to allow the significant characteristics of the software to be defined
- Recognition: if we use a piece of software for our research we will acknowledge its use and let its authors know
- Availability: when a version of software is “released” we commit to making it available for an extended length of time
- Tools: the methods of identification and description of software objects must lend themselves to the simple use of multiple tools for tracking impact
- Equality: credit is due to both the producer and consumer in equal measure, and due to all who have contributed, whether they are academics or not
This does not rescind the values of the current credit system, but reinforces them by acknowledging that there are many forms of output that can lead to indicator events.