Site icon R-bloggers

Taking over maintenance of a software package

[This article was first published on rOpenSci - open tools for open science, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Software is maintained by people. While software can in theory live on indefinitely, to do so requires people. People change jobs, move locations, retire, and unfortunately die sometimes. When a software maintainer can no longer maintain a package, what happens to the software?

Because of the fragility of people in software, in an ideal world a piece of software should have as many maintainers as possible. Increasing maintainers increases the so-called bus factor. A lower number of maintainers means fewer people have to get hit by a bus to then have no maintainers.

In theory, finding maintainers for software is easier as the pool of users gets larger. However, at rOpenSci, we generally do not have this luxury. Most rOpenSci packages have a rather focused and small task, and the pool of users is likely to be relatively small. The average rOpenSci package has 3 authors listed, while a significant proportion of packages have only one person listed (36%). Authors listed in R packages may or may not be capable of taking over if the maintainer leaves, but more authors increases the chance that at least one of them can take over (caveat: new maintainers may come from outside the current author pool).

< !-- –>
data from the crandb API; 235 rOpenSci packages, only those on CRAN


Small wins

Even though many rOpenSci packages have a small number of authors per package, the rOpenSci community of users and developers is quite large. Even if an individual R package within rOpenSci doesn’t have a large community on their own, individual packages within rOpenSci can benefit from the large community we’ve cultivated.

We’ve had success finding maintainers by reaching out to our community as maintainers have moved on – we’ve found new maintainers for all six packages that have needed new maintainers. See our latest rOpenSci News “Call For Contributors” section for recent examples. One of these new maintainers, Julia Silge, wrote about the experience in her post Relaunching the qualtRics package.

Taking over

Okay, so you’ve taken over maintenance of a software package. What next?

We want to add a section to our Software Development Guide to address this exact question; we’re first reaching out here to the community to talk through what we’re thinking and to get your feedback. This is what we’re thinking thus far:

Proposed material for dev guide

rOpenSci staff tasks:

Package maintainer tasks:

Code changes:

Your thoughts?

We want to hear from you. What aspects of taking over maintenance of a software package have we left out? Why or why wouldn’t you consider taking over maintainance of a package?

To leave a comment for the author, please follow the link and comment on their blog: rOpenSci - open tools for open science.

R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.