From a single-use script to a reusable Python package - Assisting researchers in creating FAIR software
Creators: name: Baarda, Tijmen Christiaan
name: van Boheemen, Jelte
Publisher: name: Zenodo
Year: 2023
Subjects: FAIR software
Open access
Research Software
Code reusability
Code literacy

description: Recently, it has become more and more common that individual researchers in the humanities create pieces of software to support their research. Research councils today often require all output to be available in open access, which implies that output in the form of software should be available as open source software. However, for various reasons, publishing source code itself is generally not enough to allow others to replicate the research results or to reuse it for their own purposes. In this poster presentation, we want to show that with the right professional but low-key technical support, researchers who write their own software can be enabled to make it useful for others as much as for themselves. To promote the long-term value of research software, the international FAIR for Research Software working group (FAIR4RS) recently published a set of principles for making software FAIR, which stands for Findable, Accessible, Interoperable and Reusable (Barker et al: 2022). Making software FAIR according to these principles entails a number of formal requirements. Some of these, such as assigning a unique identifier and publishing it with a proper open source license, are more or less trivial to implement. Other principles, such as the requirement of providing good documentation and interoperability using commonly-used data formats and programming interfaces, is less obvious to implement for those who do not write software on a daily basis and in collaboration with others. This poster will present a detailed step-by-step plan for collaboration with researchers to make their software FAIR, along with a number of examples from the Digital Humanities Lab at Utrecht University where we assisted researchers to make their smaller and larger pieces of software useful for a larger audience, adhering to the FAIR principles. We show that researchers who are used to writing computer programs but who may not be very well introduced to common software engineering procedures can adapt their software with relatively little additional efforts from both the side of the researcher and the side of the technical support staff. Bleeker et al. (2022) have shown that while the importance of code literacy in the field of digital humanities is clear, many scholars believe their own is lacking. We believe that the proposed collaboration between researchers and technical support can contribute to the overall level of code literacy in the humanities. At the Digital Humanities Lab, we collaborate with researchers by providing advice, technical support and writing software. During the last decade, the Digital Humanities Lab has mainly been developing software at the request of researchers, often in the form of web applications. In the recent years, it has become more and more common for researchers in the humanities to write their own software. We respond to this trend by actively encouraging the researchers, and especially by assisting them not only in writing the software, but also by preserving it for future use. In our poster, we give a detailed step-by-step plan showing how we assist and stimulate researchers in this process. As one of the examples we give in this poster, we show how the Lab collaborated with a researcher who had created a relatively complicated Python script that creates XPath expressions to search for specific linguistic expressions in treebanks. This script answered to the immediate needs of the researcher, but was difficult to use by someone who was not involved in its creation because it expected a very specific type of input and lacked documentation. At the Lab, we transformed the script into a reusable Python package that is easy to install and to use, and providing clear documentation. We were also able to use the script ourselves in one of our linguistic web applications. Thanks to the infrastructure that the Lab provides, the piece of software is preserved in a sustainable way and can be picked up by other researchers even after the original research project is discontinued. We are convinced that FAIR research software is a reachable goal for any researcher who cares about the sustainability of their software, provided that the research institution provides the right technical support infrastructure.
description: {"references": ["https://doi.org/10.17613/03ds-9973", "https://doi.org/10.1038/s41597-022-01710-x"]}