Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,9 +102,9 @@ community listed at <https://carpentries.org/connect/> including via social
media, slack, newsletters, and email lists. You can also [reach us by
email][contact].

[repo]: https://example.com/FIXME
[repo-issues]: https://example.com/FIXME/issues
[contact]: mailto:team@carpentries.org
[repo]: https://github.com/carpentries-incubator/python-intermediate-development
[repo-issues]: https://github.com/carpentries-incubator/python-intermediate-development/issues
[contact]: mailto:python-inter-inflammation@lists.carpentries.org
[cp-site]: https://carpentries.org/
[dc-issues]: https://github.com/issues?q=user%3Adatacarpentry
[dc-lessons]: https://datacarpentry.org/lessons/
Expand Down
81 changes: 25 additions & 56 deletions GOVERNANCE.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,23 @@
# Project Governance
This document describes the roles and responsibilities of people who manage the
python-intermediate-development curriculum in this repository
and the way they make decisions about how the project develops.
This document describes the roles and responsibilities of people who manage the lesson in this repository and the way they make decisions about how the project develops.
For information about how to contribute to the project, see [CONTRIBUTING.md](./CONTRIBUTING.md).
For information about the project's Code of Conduct
and its reporting and enforcement mechanisms, see [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md).
For information about the project's Code of Conduct and its reporting and enforcement mechanisms, see [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md).

## Roles

### Maintainers
A team of 3-5 Maintainers is responsible for the lesson repository
and makes decisions about changes to be incorporated into the default branch.
Changes to the default branch can only be made by pull request,
and all pull requests to the default branch require
review and approval from at least one Maintainer before merging.
A team of Maintainers is responsible for the lesson repository and makes decisions about changes to be incorporated into the default branch.
Changes to the default branch can only be made by pull request, and all pull requests to the default branch require review and approval from at least one Maintainer before merging.

Responsibilities of Maintainers include:

* Reviewing and responding to new issues and pull requests in a timely manner
* Reviewing and responding to new issues and pull requests in a timely manner
* Attending [Maintainer meetings](#maintainer-meetings) where availability allows
* Voting asynchronously on decisions where needed

#### Lead Maintainer
The Maintainer team includes one person in a Lead role,
who is responsible for coordinating the activity of the group.
In addition to the responsibilities listed for all Maintainers above,
the Lead Maintainer:
The Maintainer team includes one person in a Lead role, who is responsible for coordinating the activity of the group.
In addition to the responsibilities listed for all Maintainers above, the Lead Maintainer:

* schedules Maintainer meetings
* prepares [the agenda for Maintainer meetings](#meeting-agenda)
Expand All @@ -35,56 +27,38 @@ the Lead Maintainer:
* acts as a point of contact for the Maintainer team
* invites other community members to Maintainer meetings as non-voting participants

Where needed e.g. due to absence,
the Lead Maintainer may defer any of these responsibilities to another member of the Maintainer team.
Where needed e.g. due to absence, the Lead Maintainer may defer any of these responsibilities to another member of the Maintainer team.

The Lead Maintainer has a term length of 6 months,
and it is expected that the role will rotate among members of the Maintainer team.
If a Maintainer is up next in the rotation and wishes to decline the role of Lead
e.g. due to a lack of capacity,
they should communicate that with the other Maintainers at the earliest opportunity
to help the team plan accordingly.
The Lead Maintainer has a term length of 6 months, and it is expected that the role will rotate among members of the Maintainer team.
If a Maintainer is up next in the rotation and wishes to decline the role of Lead e.g. due to a lack of capacity, they should communicate that with the other Maintainers at the earliest opportunity to help the team plan accordingly.

#### Current Maintainers
See [README.md](./README.md) for a list of the current project Maintainers.

#### Joining/Leaving the Maintainer Team
Maintainers volunteer to take on the role, and other members of the community may
volunteer to join the Maintainer team at any time,
or be invited by the existing Maintainers.
Maintainers volunteer to take on the role, and other members of the community may volunteer to join the Maintainer team at any time, or be invited by the existing Maintainers.
Additions to the Maintainer team will be discussed and approved by the current membership.
No formal onboarding exists for new Maintainers,
but some informal onboarding can be expected from the existing Maintainers.
No formal onboarding exists for new Maintainers, but some informal onboarding can be expected from the existing Maintainers.

Maintainers may step away from the role at any time,
but are expected to communicate the decision to the whole Maintainer team
and to coordinate with other Maintainers to transfer responsibilities, e.g.
re-assign issues, resolve outstanding pull requests, etc.
Maintainers may step away from the role at any time, but are expected to communicate the decision to the whole Maintainer team and to coordinate with other Maintainers to transfer responsibilities, e.g. re-assign issues, resolve outstanding pull requests, etc.

### Contributors
Anyone who opens or comments on an issue or pull request,
or who provides feedback on the curriculum through another means,
is considered to be a Contributor to the project.
Anyone who opens or comments on an issue or pull request, or who provides feedback on the curriculum through another means, is considered to be a Contributor to the project.

Maintainers are responsible for ensuring that all such contributions are credited,
e.g. on the curriculum site and/or when (and if) a release of the curriculum is made to Zenodo.
Maintainers are responsible for ensuring that all such contributions are credited, e.g. on the curriculum site and/or when (and if) a release of the curriculum is made to Zenodo.

Contributors of more significant changes to the lesson may be invited by the Maintainers to add themselves to the
Authors list.
Contributors of more significant changes to the lesson may be invited by the Maintainers to add themselves to the Authors list and CITATION.cff.

## Maintainer Meetings
The Maintainer team meets frequently,
at minimum for at least 30 minutes four times per year.
Meetings provide an opportunity for Maintainers to
discuss outstanding issues and pull requests
and co-work on the project where necessary.
The Maintainer team meets frequently, at minimum for at least 30 minutes four times per year.
Meetings provide an opportunity for Maintainers to discuss outstanding issues and pull requests and co-work on the project where necessary.

### Meeting schedule
The maintainer team aims to meet at 11:00 UK time (BST or GMT) on the fourth Wednesday each month. The meetings alternate between operations meetings and co-working sprints.
The maintainer team aims to meet at 11:00 UK time (BST or GMT) on the fourth Tuesday each month.
The meetings alternate between operations meetings and co-working sprints.

### Meeting agenda
The [agenda for Maintainer meetings](https://docs.google.com/document/d/1-SvoY_2GvlQgJnu8zfr6VnU7sev_iWZAIwBUywNSfWE/edit#) will be prepared as a collaborative document,
with (at least) sections to record the following information:
The [agenda for Maintainer meetings](https://docs.google.com/document/d/1-SvoY_2GvlQgJnu8zfr6VnU7sev_iWZAIwBUywNSfWE/edit#) will be prepared as a collaborative document, with (at least) sections to record the following information:

* lists of Maintainers attending and absent from the meeting
* a list of items for discussion and, if necessary, amount of time assigned to each item
Expand Down Expand Up @@ -113,13 +87,8 @@ Each meeting will have a Facilitator, a Notetaker, and (if needed) a Timekeeper:
The decision to move from one agenda item to the next belongs to the meeting Facilitator.

### Decision-making
Decisions within the Maintainer Team will be made by [lazy consensus](https://medlabboulder.gitlab.io/democraticmediums/mediums/lazy_consensus/)
among all Team members,
with fallback to simple majority vote only in cases
where a decision must be made urgently and no consensus can be found.

Decisions will preferably be made during Maintainer meetings with every
member of the team present.
Where this is not possible, decision-making will happen asynchronously via
an issue on the curriculum repository.
Decisions within the Maintainer Team will be made by [lazy consensus](https://medlabboulder.gitlab.io/democraticmediums/mediums/lazy_consensus/) among all Team members, with fallback to simple majority vote only in cases where a decision must be made urgently and no consensus can be found.

Decisions will preferably be made during Maintainer meetings with every member of the team present.
Where this is not possible, decision-making will happen asynchronously via an issue on the curriculum repository.
Decisions made asynchronously must allow at least one week for Maintainers to respond and vote/abstain.
15 changes: 11 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,16 +71,20 @@ This indicates that the maintainers will welcome pull requests fixing such issue

Current maintainers of this lesson (in alphabetical order) are:

- [Matthew Bluteau][matthew-bluteau] - Lead Maintainer for the period 1 May 2024 - 31 October 2024
- [Steve Crouch][steve-crouch]
- [Doug Lowe][doug-lowe]
- [Doug Lowe][doug-lowe] - Lead Maintainer for the period 1 November 2025 - 30 April 2026
- [Matt Gragam][matt-graham]
- [Devaraj Gopinathan][devaraj-gopinathan]
- [Aleksandra Nenadic][aleksandra-nenadic]
- [Matthew Bluteau][matthew-bluteau]
- [Steve Crouch][steve-crouch]

The maintainer team aims to meet at 11:00 UK time (BST or GMT) on the fourth Wednesday each month. The meetings alternate between operations meetings and co-working sprints.
The maintainer team aims to meet at 11:00 UK time (BST or GMT) on the fourth Tuesday each month.
The meetings alternate between operations meetings and co-working sprints.
Meeting notes are kept in the [Google doc](https://docs.google.com/document/d/1-SvoY_2GvlQgJnu8zfr6VnU7sev_iWZAIwBUywNSfWE/edit#).

Past maintainers:

- [Sven van der Burg][svenvanderburg]
- [Kamilla Kopec-Harding][kamilla-kopec-harding]
- [Sam Mangham][sam-mangham]

Expand Down Expand Up @@ -117,6 +121,9 @@ Original lesson authors Aleksandra Nenadic, James Graham, and Steve Crouch were
[doug-lowe]: https://github.com/douglowe
[aleksandra-nenadic]: https://github.com/anenadic
[sam-mangham]: https://github.com/smangham
[matt-graham]: https://github.com/matt-graham
[devaraj-gopinathan]: https://github.com/Devaraj-G
[svenvanderburg]: https://github.com/svenvanderburg
[cc-by-human]: https://creativecommons.org/licenses/by/4.0/
[cc-by-legal]: https://creativecommons.org/licenses/by/4.0/legalcode
[mit-license]: https://opensource.org/licenses/MIT
Expand Down