Promoting Sustainable Software Practice

Posted by s.aragon on 21 March 2017 - 9:00am

Software Sustainability PracticeBy Blair Archibald, University of Glasgow, Gary Leeming, University of Manchester, Andy South, Freelancer, Software Sustainability Institute Fellows

Software plays a key role in a modern research environment with over 92% of academics reporting the use of research software. With such a large impact there is huge variation in the potential audience for the work of the Software Sustainability Institute across different disciplines. In some areas there already exists best practice, but many may find it difficult to understand the value or justification for making the effort to engage with software sustainability. Our mission, as fellows, is to help them.

As fellows, we need to interact with different stakeholders: the individual researchers who use and write software as part of their general practice, groups and disciplines who use software to enable new results to push their field forward, and policy makers who have global influence over the software conditions of funding and practice. We can target each of these stakeholders differently and provide a justification of improved software practice.

Reaching individuals

Individuals will make decisions about whether to invest time in learning good research practice based upon perceived benefits and costs. Benefits could be how much they think it will be good for them or their project. Costs could be the time or resource that they think will be needed to learn or adopt good practice. Thus, Institute fellows can work to promote software sustainability either or both by reducing perceptions of cost and or increasing perception of benefits. Different individuals and communities are likely to be differently susceptible to these different approaches. One can imagine a graduate student with a background in coding at the start of a project being more susceptible to promotion of benefits. They have time and know they can pick up new skills, thus the relative costs for them are lower. Such communities may know about the benefits of sustainable practice and be keen to attend an event if one comes up close to them. Conversely someone in a more senior position with less of a background in coding may not feel that they can justify the time or that they have the background to pick up new sustainability skills. In the latter case they may be more susceptible to activities targeted at convincing them that costs of learning new skills are relatively low and that it is achievable for them, or members of their teams.  

Activities promoting low costs could include entry level coding workshops, and blogs about coding techniques. Activities promoting the benefits include talks at domain conferences and blog posts on the benefits of good practice. Fellows need not feel that they have to do both of these at the same time.

Reaching Groups

It is not only individual researchers who benefit from improved software sustainability practice, but also research groups and disciplines who can make use of sustainable software to: increase collaborations with other institutions using software as a common theme, generate better research outputs, improve the rigour within their fields, and build common communities of shared practice.

Fellows can help push these ideas to groups by gathering case studies and data on how software has led to group collaborations and increased interest to specific institutions. Discipline-specific talks should be organised through existing peer networks which can use these case studies to highlight global software issues that can negatively impact research and describe how a collaborative and open effort can improve (re)use in areas such as reproducibility studies. Individual training is not the key role of these talks, rather to highlight issues both within the field and global issues where sustainable practises can help. These talks can be further developed to fit as short talks within domain conferences which might otherwise not fully appreciate the impact of software on their field.

Influencing Policy

It will be important as this develops to work with key influencers at policy level to understand the need to have a real grasp of sustainable software embedded in research culture at all levels. As the work of the Institute fellows progresses it will become more important to engage with organisations, such as the Research Councils and publishers, to ensure that requirements, such as open data and open sourcing of software, are an inherent part of research culture. This is not necessarily about producing guidance around best practice but in helping researchers in understanding what practices might be appropriate for them, depending on their role, discipline and requirements.

Conclusion

Focusing on key themes, including testing, sharing, and reproducibility of code within the context of “good enough practice” will be important to develop community interest in the work of the Institute. To support this fellows should work together to build a multi-disciplinary body of evidence, based on how fellows have benefitted from these practices, helping others to understand the value and opportunities these ways of working offer for future career development and for better science. These will build into an adaptable resource to support engagement at the three key levels fellows are seeking to influence.