Maintainers
Maintainers are individuals in charge of a software project.
Relationships With Other Aspects
Timescale aspect changes: quickly,
Scope of aspect: small,
Relationship with other aspects: contributor, project,
Primary focus: project
As creators and leaders of organized software projects, maintainers often wonder why their work isn’t financially recognized.
Sustainability Aspects
Maintainers understand their projects, ecosystem, and often the scope of the companies that use their software.
Maintainers are organized in terms of project work, but may not have any legal or financial structures around their project.
Maintainers vary widely in their knowledge and skills around self-marketing, taxes, and managing businesses; many may not want to create a business to better accept funding.
Pay the Maintainers often refers to a number of software sponsorship programs being created.
Software Maintainers
Maintainers are individuals who are in charge of maintaining a software project. Maintainers may own the core software repository, and have the rights to publish releases, update the website, and manage the project overall. Projects may have a sole maintainer, or may have a team or community of maintainers.
A maintainer has a higher level of responsibility and access than other contributors or committers, because maintainers typically can change the list of who has write access to the code repository or website. Depending on the ecosystem, Maintainers might also be known as the people in a Technical Steering Committee (LF) or Project Management Committee (ASF).
The maintainer role has several aspects:
- Technical: they often have responsibility for project direction, when to make official releases, security issues, and the like.
- Branding: maintainers may be often personally associated with the project in question. A sole maintainer would typically be seen as a trademark owner, if one exists.
- Financial: many maintainers manage one or more projects outside of a traditional work environment, either in their spare time, or as just part of a paid position. Hence many maintainers are not directly paid in a way that’s tied directly to the project’s work.
- Social / Emotional: maintainers often identify with their projects, and sometimes write about how overwhelming it is to feel responsible in the face of bugs, complaints, and questions from large numbers of users.
Many projects do not have maintainers, but rather emphasize a Project Management Committee or entire community of people who are responsible. A key difference is if the project emphasizes the specific people who maintain a project, versus emphasizing the community as a whole (i.e. not focusing on any individuals) is responsible.
Sustainability Questions
Maintainers have plenty of perspective and connections - how can this be harnessed at scale in an organized fashion to help promote other sustainability aspects? Many of the maintainers crying out for funding still promote the personal perspective, not necessarily the ecosystem or public policy perspective.
Ideas and References
- OSS Fund listing of pay the maintainers platforms
- The Maintainers Community while not specifically software focused, advocating for the maintainer mindset
Other Reference Links
- en.wikipedia.org/wiki/Software_maintainer
- chaoss.community/kbtopic/community/
- github.com/cncf/project-template/blob/main/CONTRIBUTOR_LADDER.md#maintainer
- opensource.com/article/21/8/open-source-maintainers
- matthewrocklin.com/blog/2019/05/18/maintainer
- blogs.vmware.com/opensource/2019/06/11/open-source-maintainer-best-practices/
- dev.to/opensauced/so-youre-interested-in-being-an-open-source-maintainer-5bb2