Skip to content

Commit d16c506

Browse files
Initial draft of the TC donut
1 parent d7d672c commit d16c506

File tree

1 file changed

+145
-0
lines changed

1 file changed

+145
-0
lines changed

project-roles/trusted-committer.md

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
# Title
2+
3+
Trusted Comitter
4+
5+
# Context
6+
7+
Many inner-source projects will find themselves in a situation where
8+
they consistently receive feedback, features, and bug-fixes from a contributor.
9+
In these situations project maintainers seek ways to recognize and reward the
10+
work of the contributor above and beyond single contributions.
11+
12+
# Problem
13+
14+
A project maintainer receives several contributions from a single contributor
15+
but is unclear on how to properly recognize these contributions.
16+
17+
# Forces
18+
19+
- Over the lifecycle of a project the focus of the maintainers may shift away
20+
to accomodate changing business priorities
21+
- Potential trusted committers seek visible artifacts of their contributions
22+
to community
23+
24+
# Solution
25+
26+
## Defining the Trusted Committer Role for a Project
27+
28+
What a Trusted Committer handles is up to each project and its maintainers.
29+
Whatever shape your Trusted Committer role takes make sure it's clearly
30+
documented somewhere in your project. This sets expectations for new community
31+
members and outlines the role for future candidates.
32+
33+
Below we've provided a few guidelines for what Trusted Committers can be
34+
invited to do:
35+
36+
* If a candidate participates often in community channels (e.g. Slack, JIRA
37+
issue triaging, etc.) then becoming a Trusted Committer formalizes their role
38+
in community support.
39+
40+
* A good candidate for a Trusted Committer, is someone who frequently submits
41+
code, documentation, or other repository changes. Start by including this
42+
person on pull requests. If they are actively engaing in pull requests,
43+
consider approaching them about opportunities for further collaboration on the
44+
project.
45+
46+
## Formalizing Trusted Committers
47+
48+
The first step is to approach candidates about becoming a Trusted Committer.
49+
Maintainers should make sure candidates understand the role. To be clear:
50+
there is no expectation that candidates will accept the role. Each candidate
51+
should figure out if they have the bandwidth to get involved.
52+
53+
When a candidate accepts the role it is up to the project maintainers to
54+
[publicly recognize the transition from user to TC][praise]. It is also a good
55+
idea to add their name to a Trusted Committers section in your project's
56+
README. As an example:
57+
58+
```markdown
59+
# project-name
60+
61+
... your project's readme ...
62+
63+
## Project Leaders
64+
65+
### Maintainers
66+
67+
- Your team
68+
69+
### [Trusted Committers]
70+
71+
- The name of the new trusted committer
72+
73+
[Trusted Committers]: https://example.com/link/to/your/trusted/committer/documentation.md
74+
```
75+
76+
## Maintaining Trusted Committer Relationships
77+
78+
When a new Trusted Committer is minted it’s a good idea to keep them in the
79+
loop as you continue to iterate on your project. This can be as simple as
80+
inviting them to your project channel or as involved as including them in your
81+
planning sessions. More opportunities for involvement gives Trusted Committers
82+
a path to Maintainer if they so desire.
83+
84+
Besides keeping Trusted Committers informed it’s a good idea to check in on a
85+
regular basis. A good cadence is every week, but as the Trusted Committer
86+
settles in this can drop to every few weeks or so. The purpose of these
87+
check-ins is to make sure the Trusted Committer feels supported in their new
88+
role, like a 1:1 with your manager. If things aren’t going well, listen and
89+
try to understand what is preventing the TC from being successful. If things
90+
are going well, thank the TC for their continued effort in making the project
91+
successful and set a new date to check-in.
92+
93+
## Sunsetting a Trusted Committer
94+
95+
There comes a time when removal of a Trusted Committer is necessary, such as:
96+
97+
* No longer willing to take part
98+
* No longer able to perform their duties
99+
* No longer employed by Nike
100+
101+
In each of the above cases a plan for removing access to project resources
102+
should agreed upon by both parties. This includes their entry in a project’s
103+
**Trusted Committer** section.
104+
105+
After access is removed it is courteous to thank the TC for their participation
106+
in a public way. This ensures clear communication and continuity within the
107+
community.
108+
109+
# Resulting Context
110+
111+
## For Contributors
112+
113+
Achieving Trusted Committer status for a project is a sign that the contributor
114+
has demonstrated an improvement to a community project. Recognition for these
115+
efforts can be used during annual reviews with managers.
116+
117+
## For Maintainers
118+
119+
As a project matures, contributors can become less familiar with key aspects
120+
of a project. Trusted Committers fill in these gaps. This ensures that all
121+
aspects of the project are better served over time.
122+
123+
A healthy set of Trusted Committers ensures that if project maintainers move on
124+
there is a plan for responsible stewardship at Nike.
125+
126+
# Known Instances
127+
128+
This has been tried and proven successful at Nike.
129+
130+
# Authors
131+
132+
- Fernando Freire
133+
134+
# Acknowledgement
135+
136+
- Russell Rutledge
137+
- Loren Sanz
138+
- Noah Cawley
139+
- Jeremy Hicks
140+
141+
# State
142+
143+
Published internally at Nike; drafted via pull-request in June of 2018.
144+
145+
# Variants

0 commit comments

Comments
 (0)