kserve / community

KServe community docs for contributions and process
Apache License 2.0
11 stars 5 forks source link

How to become a committer #4

Closed ckadner closed 1 year ago

ckadner commented 1 year ago

Proposed changes in this PR:


Becoming a committer

A committer is a contributor who has gained the privilege to commit code to the project. It also means being committed to the project and the community as a whole.

Contributors who aspire to become committers should already be doing most of the activities that are expected to be done by the project's committers.

Responsibilities of a committer:

Contributors who have demonstrated their proficiency to make substantial code contributions and shown their commitment to the projects success over a prolonged period of time are candidates to become committers.

How new committers are chosen:

The KServe Technical Charter outlines the process to become a KServe committer:

  • iii. A Contributor may become a Committer by a majority approval of the existing Committers. A Committer may be removed by a majority approval of the other existing Committers.

For this purpose, the technical steering committee (TSC) shall periodically review the activity of project contributors and propose qualifying contributors to be promoted to become committers.

To help find candidates for promotion, existing committers can use the list-contributors.py script to review recent contributor activity:

$ make list-pr-authors

Contributors to 'kserve/kserve' (PR authors) by number of PRs (>3) since 2023-03-02:

 39  supercoder      [5083, 5077, 5040, 5038, 5035, 5031, 5024, 5016, 5006, 5004, ... ]
 20  kservehacker    [5089, 5061, 5054, 5029, 5020, 5002, 5001, 4998, 4956, 4952, ... ]
  6  code4fun        [5069, 5048, 5027, 5026, 5008, 4867]
$ make list-pr-reviewers

Contributors to 'kserve/kserve' (PR commenters, reviewers) by number of PRs (>3) since 2023-03-02:

 13  reviewchamp     [5089, 5075, 5072, 5047, 5042, 5040, 5038, 5031, 4993, 4969, ... ]
  9  nitpickr        [5079, 5054, 5049, 5040, 4954, 4877, 4782, 4762, 4739]
  4  casualcodr      [5062, 5039, 5025, 4867]

This script should only be used to identify suitable candidates. The actual candidate selection should take more factors into consideration than number of commits or PRs reviewed.

Areas of expertise:

Another criterion to use when selecting new committers is the project area that requires help with reviewing PRs and mentoring new contributors. Contributors that have a lot of expertise in a particular area who have helped review PRs in that area make good candidates to be promoted as committers. The various projects under the KServe umbrella may have a different set of committers and focus areas.

Some of those areas of expertise include:

ckadner commented 1 year ago

We could add more text describing (or linking to) the Kubernetes OWNERS file and GitHub's CODEOWNERS concept.

ckadner commented 1 year ago

Thank you @rafvasq -- I updated the text as you suggested with and added some text to address @israel-hdez comment

ckadner commented 1 year ago

Thanks @rafvasq and @israel-hdez

@yuzisun @njhill -- let me know if there is more to add or any things we should clarify

yuzisun commented 1 year ago

Thanks @ckadner for putting this together!