JupyterHub Project Governance

The following sections describe governance and high-level principles surrounding the JupyterHub Project.

The JupyterHub Project is a member of Project Jupyter, which is a fiscally sponsored project of NumFocus, a US 501c3 non-profit.

Project mission

The mission of the JupyterHub Project is to create, advance, and promote open technology that enables interactive computing sessions via shared infrastructure.

The JupyterHub Project pursues this mission by advancing the tools surrounding JupyterHub, an open-source tool for hosting Jupyter user sessions on shared infrastructure.

Membership

Membership in the JupyterHub Project is open to anyone who is nominated by an existing member. Members form the trusted group of individuals who manage the JupyterHub Project.

Membership comes with privileges and responsibilities.

The authoritative list of members and their roles (alphabetical sorting) can be found at the JupyterHub Team section.

Team privileges

  • recognition

  • team members can speak for the project in public

  • merge privileges on the project repositories

  • nominating other individuals to team membership

Team responsibilities

The JupyterHub team responsibilities are outlined in the JupyterHub team member guide.

Team roles

  • Team leader. This is a person who has impasse-breaking authority to make decisions if the team can not agree. This authority should be used exceedingly sparingly. The team leader is expected to grow team members so that they can pass on their position to them.

  • Team member. You spend a large part of your time coordinating and promoting the JupyterHub Project, helping new contributors learn and grow within the community, and contribute to the JupyterHub repositories. You are expected to prepare and attend the monthly team calls on a semi-regular basis. We expect team members to teach and grow contributors that can join the team. This encourages diversity of the team.

  • Green member. Your life situation has changed so that you prefer to (temporarily) not take on the rights and responsibilities of being an active member. You can return to active membership by resuming your community activities. Your return will be announced at the next monthly team meeting.

There are no other specific roles, but we may revisit this in the future.

A note on team membership over time

Being a team member is not a life sentence. We expect team members to teach and grow other members so that they can pass their organizational responsibilities on to them. This encourages us to increase diversity, reduce burn-out and allow team members to shift their focus in reaction to changing life circumstances.

We ask that team members commit themselves in ~6 month cycles for new team members, and for shorter cycles if you are transitioning from the green team. If at any time a team member feels that they would like to take a break from active team membership, they’re can choose to join the “green team” by making a pull request to the JupyterHub team membership or Binder team membership files.

How decisions are made

The JupyterHub Project team will make decisions as colleagues and by attempting to reach consensus among team members (similar to a lazy consensus model that encourages active participation from team members). If this is not possible, then the team leader can use their power to make a decision.

There is currently no formal specification for this decision process.

Team size

There is no limit to the size of the team.

There is no hard cap on the number of senior members that can exist, though this will be re-evaluate if the group becomes big enough to be unwieldy. We see the ideal number of red team members to be around 6-10 people.

Modus operandi

All team business is conducted in public.