Site icon R-bloggers

Maintain or Co-Maintain an rOpenSci 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.

The rOpenSci suite of packages is mainly composed of packages contributed by the community through peer-review, but also includes some packages maintained by staff. Over time, the commitments and availability of the original developers of a package can change. This leads to some maintainers stepping down from their maintainer role, or other maintainers looking to lower their workload through more teamwork and therefore looking for co-maintainers.

We’re so grateful for all our community maintainers and want to make sure that they feel good about the work they do and not burdened by the responsibility. This is why we started conducting annual maintainer surveys, to ensure that maintainers feel supported and feel free to say when they need help, or are ready to move on. Following our recent annual maintainer survey, we have projects looking for both new maintainers and co-maintainers. Therefore, we say thank you! to our maintainers looking to move on, and in this blog post we will explain why you might want to help, and we’ll list the packages currently up for adoption or collaboration.

Why maintain or co-maintain a package?

Maintaining or co-maintaining a package can have some specific advantages, on top of the big motivator “keep a cool package alive”. Maintenance work allows you to gain and practice software development skills (writing R functions, using GitHub interface, unit testing and continuous integration, technical writing in the documentation…). Furthermore, it becomes a public record of these awesome skills you have developed and will contribute to your online developer portfolio.

Being an author of an rOpenSci package means you have access to rOpenSci infrastructure (such as pkgdown docs building for all packages) as well as community support and camaraderie (through our forum, and our semi-open slack where there are other package maintainers, including rOpenSci staff). We’re grateful for all contributors that help us provide a healthy suite of packages!

Co-maintaining can allow for more team work and more division of labour, so if that appeals to you, you could also look for co-maintainers.

What does it take to (co-)maintain a package?

How much time, what skills in particular? Sadly the answers is “it depends”. In the list of packages in this post, some require a large overhaul (for instance essurvey whose data source underwent many changes) while others are more stable (for instance robotstxt). Other criteria that might increase the workload are: popularity (many users’ requests), code health (maybe a dependency could or should be swapped for a more modern or better maintained one), whether the package is on CRAN or you’d want it to be, etc. Have a look at the repository to assess its needs and its toolset before volunteering, and don’t hesitate to ask questions (in the volunteering issue, in a new issue if there is no volunteering issue).

How long would you (co-)maintain a package?

Until you no longer want to. 😉 Ideally, it’d be great for you to be reasonably confident you can spend some of your time on the package for at least one year. As a maintainer, if you want to step down, please reach out to info@ropensci.org – no need to wait for the next annual survey and suffer in silence.

How to choose a package to (co-)maintain?

Although general technical skills will make you a good contributor to many packages, it is crucial to have specific interest in what a package does or the toolset it uses. You might have that interest because you use that package at work or because its scope falls under your topics of interest, for instance. Being very interested in a package will make you more motivated, furthermore the user community will likely be a community of your peers.

Last but not least, if you use the package you maintain at work, you might be able to tackle maintenance during your normal working hours, which might be more sustainable than carving time for it on the side.

Packages looking for maintainers!

To volunteer, comment in the corresponding volunteering issue. Thank you!

Packages looking for co-maintainers!

To volunteer, comment in the corresponding issue or email the maintainer. Thank you!

Conclusion

In this post we explained that there is a cycle to package maintenance, why maintainers may step down, and why one would want to step up! Hopefully we’ve inspired some soon-to-be maintainers, who’ve taken a look at our list of rOpenSci packages for which new maintainers or co-maintainers are needed. Not sure you’re ready to tackle these packages, but think you might be interested in the future? Help requests including calls for maintainers and co-maintainers are always listed on our help wanted page. If you are interested in rOpenSci mission but not in the idea of maintaining a package, have a look at our contributing guide for other ways you can contribute to rOpenSci and benefit from being part of the rOpenSci community!

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.