Annual Report 2021/Story: Starting to support volunteer software developers

Från Wikimedia
Hoppa till navigering Hoppa till sök
Access
2021

In this Story we outline the first steps taken on the path to creating a qualitative support structure for the volunteer developers in the Wikimedia movement to ensure that they thrive and that long-term maintenance of key software is ensured over time.

The ISA Tool lowers the threshold to enriching images with structured data. That's why it's among the tools whose development we're supporting.

The volunteer developer community is an amazing part of the Wikimedia movement. Their work with developing innovative open source solutions has allowed volunteers across the world to more effectively contribute with free knowledge. They are key to the success of our platforms. But little work and efforts have been done to help the volunteers to survive, grow and flourish. We want to change this.

Over the last years we have had countless discussions with the volunteers to understand their wants and needs. Also, a number of volunteer developers have been hired by Wikimedia Sverige and shared their experience. These discussions have provided us with some insights and we want to try the development of the support structures.

Many of the tools that volunteer developers have created have been so successful that they nowadays are of strategic importance for Wikimedia affiliates across the world, as they are extensively used in content partnerships. If the tools do not work, the content partnership is damaged.

OpenRefine, an open-source application for working with large datasets and Wikidata, is a great example. For a couple of years, we have supported its continuous development. We use it extensively in our own work and champion its use in the GLAM community, which has given us plenty of experience and knowledge about various use cases and quirks. The development project focused on implementing Wikimedia Commons functionalities in OpenRefine, which started mid-2021, was a great opportunity for us to get to know the developers better. One of our staff members has been regularly participating in their meetings, sharing their experiences from the point of view of both an editor and a trainer, and testing the new functionalities as they get implemented. This close partnership benefits both sides, as it will make it easier for us to train our current and future GLAM partners on the new software, as well as it provides the developers with the users' perspective.

In the second half of 2021 we had identified two key tools, the ISA Tool and Pattypan, that had technical issues that needed to be solved quickly – or else they would not be possible to use anymore. Therefore our first step was to provide hands-on developer work, with one of our in-house developers spending a few months providing patches and improvements to the two tools. The work needed to be done was rather different for the two tools.

ISA is a tool for adding structured data to Wikimedia Commons through crowdsourcing. With it, users can add campaigns with a set of categories to include images from them. Other users can then participate in the campaign by adding depicts statements (linking the images to the Wikidata items of the objects they show) and captions for the images. It was developed by Wiki In Africa, Histropedia and the Structured Data on Commons project, and deployed in 2019.

Because it had seen little maintenance since deployment, there were a few issues with the tool. We investigated the state of the tool by looking at Phabricator tasks and talking with the creators, and made a list of what we should focus on. So far we have managed to fix a couple of security holes that could have led to the tool being deactivated. We also worked on a few performance issues that manifested in the shape of slow page loading and made it possible to contribute with translation of the UI through translatewiki.net.

Pattypan is a batch upload tool that is heavily used by both Wikimedians and GLAM staff. Pattypan is, as many other useful tools, developed by volunteers. Over the years their work on the tool has made it possible to upload more than 1 million media files, and many GLAM institutions have added the tool as a part of their toolbox.

Pattypan stopped working after a change made in the MediaWiki APIs. At the same time there were issues with the version of Java that Pattypan depended on. This meant that end users had to go through a complicated installation process.

The volunteer developer working on Pattypan was asking for help specifically with packaging the new version. We helped out with this, making it easier both to test the tool during the process of fixing the other issues, and to use the tool by the end users. We have also made a rough estimate of how much work it would be to fix some of the prioritized issues that have been reported.

These efforts were valuable to keep the tools working in the near time, and to add some improvements that further have increased their usefulness for volunteers and affiliates.

But this was really just a band-aid solution. What the movement really needs is effective and reliable maintenance over years to come. It was not a good and comprehensive support structure for the volunteer developers (it was not the village that has been requested); and it was not based on a solid analysis on the long-term needs and wants of the Wikimedia affiliates and volunteers. We want to provide this missing infrastructure and service to our amazing volunteer developers – and we want to provide it in close partnership with the affiliates that are using the tools. Therefore we developed a new position as Product strategist for our team. We hope that this will allow us to take the next strategic steps so that we will be able to move forward with this work in 2022/2023.

The Wikimedia movement must become better at providing support to its volunteers, whose life situations, priorities and interests can and may change. Otherwise, it can create problems for our content partners who want, and need, to be able to work with long-term projects. Let's start building that village together.