Deis Maintainers

This document serves to describe the leadership structure of the Deis project, and list the current project maintainers.

What is a maintainer?

(Unabashedly stolen from the Docker project)

There are different types of maintainers, with different responsibilities, but all maintainers have 3 things in common:

  1. They share responsibility in the project's success.
  2. They have made a long-term, recurring time investment to improve the project.
  3. They spend that time doing whatever needs to be done, not necessarily what is the most interesting or fun.

Maintainers are often under-appreciated, because their work is harder to appreciate. It's easy to appreciate a really cool and technically advanced feature. It's harder to appreciate the absence of bugs, the slow but steady improvement in stability, or the reliability of a release process. But those things distinguish a good project from a great one.

Deis maintainers

Deis has two groups of maintainers in addition to our beloved Benevolent Dictator for Life.

BDFL

Deis follows the timeless, highly efficient and totally unfair system known as Benevolent dictator for life.

Gabriel Monroy (@gabrtv), as creator of the Deis project, serves as our project's BDFL. While the day-to-day project management is carried out by the maintainers, Gabriel serves as the final arbiter of any disputes and has the final say on project direction.

Core maintainers

Core maintainers are exceptionally knowledgeable about all areas of Deis. Some maintainers work on Deis full-time, although this is not a requirement.

The duties of a core maintainer include:

  • Classify and respond to GitHub issues and review pull requests
  • Help to shape the Deis roadmap and lead efforts to accomplish roadmap milestones
  • Participate actively in feature development and bug fixing
  • Answer questions and help users in the Deis #community Slack channel

The current list of core maintainers can be seen here.

No pull requests can be merged until at least one core maintainer signs off with an LGTM. The other LGTM can come from either a core maintainer or contributing maintainer.

Contributing maintainers

Contributing maintainers are exceptionally knowledgeable about some but not necessarily all areas of Deis, and are often selected due to specific domain knowledge that complements the project (but a willingness to continually contribute to the project is most important!). Often, core maintainers will ask a contributing maintainer to weigh in on issues, pull requests, or conversations where the contributing maintainer is knowledgeable.

The duties of a contributing maintainer are very similar to those of a core maintainer, but they are limited to areas of the Deis project where the contributing maintainer is knowledgeable.

Contributing maintainers are defined in practice as those who have write access to the Deis repository. All maintainers can review pull requests and add LGTM labels as appropriate.

Becoming a maintainer

The Deis project wouldn't be where it is today without its community. Many of the project's community members embody the spirit of maintainership, and have contributed substantially to the project.

The contributing maintainers group was created in part so that exceptional members of the community who have an interest in the continued success of the project have the opportunity to join the core maintainers in guiding the future of Deis.

Generally, potential contributing maintainers are selected by the Deis core maintainers based in part on the following criteria:

  • Sustained contributions to the project over a period of time (usually months)
  • A willingness to help Deis users on GitHub and in the Deis #community Slack channel
  • A friendly attitude :)

The Deis core maintainers must unanimously agree before inviting a community member to join as a contributing maintainer, although in many cases the candidate has already been acting in the capacity of a contributing maintainer for some time, and has been consulted on issues, pull requests, etc.