From f5172ca3abfb2f50948b3d3708804e0bfe2f0979 Mon Sep 17 00:00:00 2001 From: Sylvester Carolan Date: Sun, 18 Aug 2024 15:26:36 -0400 Subject: [PATCH 1/7] 8021 (#1) * Reorg * Another Push --- mentoring/README.md | 46 ++++--------------- .../group-mentee-guide.md | 0 .../{programs => mentors}/group-mentoring.md | 4 +- .../{processes => mentors}/mentor-guide.md | 4 +- .../google-season-of-docs.md | 0 mentoring/processes/group-mentoring.md | 2 +- .../leads-curriculum.md | 0 .../{programs => processes}/lfx-mentorship.md | 0 .../{README.md => archive/README-Meetings.md} | 0 .../{ => archive}/google-summer-of-code.md | 0 .../{ => archive}/meet-our-contributors.md | 0 .../{ => archive}/mentoring-events.md | 2 +- .../programs/{ => archive}/mentoring-lead.md | 0 mentoring/programs/{ => archive}/outreachy.md | 0 .../programs/{ => archive}/shadow-roles.md | 0 .../programs/{ => archive}/the1-on-1hour.md | 2 +- 16 files changed, 17 insertions(+), 43 deletions(-) rename mentoring/{programs => mentees}/group-mentee-guide.md (100%) rename mentoring/{programs => mentors}/group-mentoring.md (96%) rename mentoring/{processes => mentors}/mentor-guide.md (97%) rename mentoring/{programs => processes}/google-season-of-docs.md (100%) rename mentoring/{programs => processes}/leads-curriculum.md (100%) rename mentoring/{programs => processes}/lfx-mentorship.md (100%) rename mentoring/programs/{README.md => archive/README-Meetings.md} (100%) rename mentoring/programs/{ => archive}/google-summer-of-code.md (100%) rename mentoring/programs/{ => archive}/meet-our-contributors.md (100%) rename mentoring/programs/{ => archive}/mentoring-events.md (96%) rename mentoring/programs/{ => archive}/mentoring-lead.md (100%) rename mentoring/programs/{ => archive}/outreachy.md (100%) rename mentoring/programs/{ => archive}/shadow-roles.md (100%) rename mentoring/programs/{ => archive}/the1-on-1hour.md (95%) diff --git a/mentoring/README.md b/mentoring/README.md index 6e4a5a34232..f3f36eb8225 100644 --- a/mentoring/README.md +++ b/mentoring/README.md @@ -5,7 +5,7 @@ description: | An index of Kubernetes Mentoring programs, initiatives, and resources. --- -# Kubernetes Upstream Mentoring Programs +# Kubernetes Mentoring Programs This page indexes all of the mentoring initiatives for contributing to the Kubernetes project. For end user mentoring initiatives, check out KubeCon and other CNCF events and programs. @@ -13,49 +13,23 @@ This page indexes all of the mentoring initiatives for contributing to the Kuber We understand that everyone has different learning styles and we want to support as many of those as possible. Mentoring is vital to the growth of an individual -and organization of every kind. For Kubernetes, the larger the project becomes -, it's necessary to keep a continuous pipeline of quality contributors and we want you to hang around! +and organization of every kind. For Kubernetes, the larger the project becomes, +it's necessary to keep a continuous pipeline of quality contributors and we want you to hang around! -## Current mentoring activities: - -Please reach out to #sig-contribex on slack or come to a mentoring meeting to get involved in planning //TODO add contribex README when this is updated - -SIG's office hours / mentoring - -- [Office hours / mentoring](/mentoring/programs/office-hours.md) - -Long Term Contributor Ladder Growth - -- Through [Group Mentoring Cohorts](/mentoring/programs/group-mentoring.md) - -Specific topics and activities -- [The 1:1 Hour](/mentoring/programs/the1-on-1hour.md) - -Role based shadow programs - -- [List of programs](/mentoring/programs/shadow-roles.md) - -Students - -- [Google Summer of Code](/mentoring/programs/google-summer-of-code.md) - -1:1 full-time mentoring - -- [LFX Mentorship](/mentoring/programs/lfx-mentorship.md) +## Current mentoring activities: -Tech Writers +### SIG's office hours +- [Office hours](/mentoring/programs/office-hours.md) -- [Google Season of Docs](/mentoring/programs/google-season-of-docs.md) +### Long Term Contributor Ladder Growth (currently in planning, expected later this year) +- [Group Mentoring Cohorts](/mentoring/mentors/group-mentoring.md) -Groups Traditionally Underrepresented in Tech -- [Outreachy](/mentoring/programs/outreachy.md) +External programs +- [LFX Mentorship](/mentoring/processes/lfx-mentorship.md) -In person -- [Videos of New Contributor Workshop](https://www.youtube.com/playlist?list=PL69nYSiGNLP3M5X7stuD7N4r3uP2PZQUx) -- Pod Mentoring! [aka group mentoring](/mentoring/programs/mentoring-events.md) #### Inspiration and Thanks diff --git a/mentoring/programs/group-mentee-guide.md b/mentoring/mentees/group-mentee-guide.md similarity index 100% rename from mentoring/programs/group-mentee-guide.md rename to mentoring/mentees/group-mentee-guide.md diff --git a/mentoring/programs/group-mentoring.md b/mentoring/mentors/group-mentoring.md similarity index 96% rename from mentoring/programs/group-mentoring.md rename to mentoring/mentors/group-mentoring.md index 62fcbbb62f4..2aef34b7284 100644 --- a/mentoring/programs/group-mentoring.md +++ b/mentoring/mentors/group-mentoring.md @@ -72,9 +72,9 @@ mentor. [Mentor Guide] [Mentee Guide] -[Mentee Guide]: /mentoring/programs/group-mentee-guide.md +[Mentee Guide]: /mentoring/programs/archive/group-mentee-guide.mdguide.md [Mentoring/Contributor Info Form]: https://goo.gl/forms/SHWAiZ9Ih1qwuJbs1 -[Mentor Guide]: /mentoring/processes/mentor-guide.md +[Mentor Guide]: /mentoring/mentors/mentor-guide.md [community membership guidelines]: /community-membership.md [Chair]: https://github.com/kubernetes/community/blob/master/committee-steering/governance/sig-governance.md#chair [Tech Lead]: https://github.com/kubernetes/community/blob/master/contributors/chairs-and-techleads/technical-lead.md diff --git a/mentoring/processes/mentor-guide.md b/mentoring/mentors/mentor-guide.md similarity index 97% rename from mentoring/processes/mentor-guide.md rename to mentoring/mentors/mentor-guide.md index 3a0d61bc3ea..db524a3c3cb 100644 --- a/mentoring/processes/mentor-guide.md +++ b/mentoring/mentors/mentor-guide.md @@ -7,7 +7,7 @@ There are many ways you can be a mentor within the Kubernetes ecosystem. Listeni You are serving two roles - coach and advisor. You are a problem solver that doesn’t have all of the answers but will know the best resources to go to get the guidance that is needed. You are helping to create a culture of continuous improvement, collaboration, and feedback. -Check out our [mentoring programs](README.md) for more detailed descriptions. Please use [this form](https://goo.gl/forms/Y4MH6NGHe6OU5cZC3) to sign up to mentor. +Check out our [mentoring programs](../processes/README.md) for more detailed descriptions. Please use [this form](https://goo.gl/forms/Y4MH6NGHe6OU5cZC3) to sign up to mentor. ## Responsibilities and Expectations *for ALL programs* @@ -34,7 +34,7 @@ Check out our [mentoring programs](README.md) for more detailed descriptions. Pl * Only new contributors need mentoring. ### Responsibilities by each program -*[Group mentoring](group-mentoring.md)* +*[Group mentoring](../processes/group-mentoring.md)* You’ll need to be: * On Slack at least 1-2 hours a week fielding questions. diff --git a/mentoring/programs/google-season-of-docs.md b/mentoring/processes/google-season-of-docs.md similarity index 100% rename from mentoring/programs/google-season-of-docs.md rename to mentoring/processes/google-season-of-docs.md diff --git a/mentoring/processes/group-mentoring.md b/mentoring/processes/group-mentoring.md index ef34836d553..f771d35bb7b 100644 --- a/mentoring/processes/group-mentoring.md +++ b/mentoring/processes/group-mentoring.md @@ -42,7 +42,7 @@ suggestions: *Chair/TL combo* Chair + Reviewer - All of the above -- [Sample curriculum](../programs/leads-curriculum.md) +- [Sample curriculum](leads-curriculum.md) One of the best strategies is to have everyone work on something together, Examples: diff --git a/mentoring/programs/leads-curriculum.md b/mentoring/processes/leads-curriculum.md similarity index 100% rename from mentoring/programs/leads-curriculum.md rename to mentoring/processes/leads-curriculum.md diff --git a/mentoring/programs/lfx-mentorship.md b/mentoring/processes/lfx-mentorship.md similarity index 100% rename from mentoring/programs/lfx-mentorship.md rename to mentoring/processes/lfx-mentorship.md diff --git a/mentoring/programs/README.md b/mentoring/programs/archive/README-Meetings.md similarity index 100% rename from mentoring/programs/README.md rename to mentoring/programs/archive/README-Meetings.md diff --git a/mentoring/programs/google-summer-of-code.md b/mentoring/programs/archive/google-summer-of-code.md similarity index 100% rename from mentoring/programs/google-summer-of-code.md rename to mentoring/programs/archive/google-summer-of-code.md diff --git a/mentoring/programs/meet-our-contributors.md b/mentoring/programs/archive/meet-our-contributors.md similarity index 100% rename from mentoring/programs/meet-our-contributors.md rename to mentoring/programs/archive/meet-our-contributors.md diff --git a/mentoring/programs/mentoring-events.md b/mentoring/programs/archive/mentoring-events.md similarity index 96% rename from mentoring/programs/mentoring-events.md rename to mentoring/programs/archive/mentoring-events.md index 2d9b63683df..fad67758458 100644 --- a/mentoring/programs/mentoring-events.md +++ b/mentoring/programs/archive/mentoring-events.md @@ -8,4 +8,4 @@ Pod mentoring gathers a group of mentors to help you get your Kubernetes-related To be respectul of each mentors time, please have succinct questions ready and a brief summary of what you've tried and what you'd like or expect to happen. For instance, an example of a poor question would be, "How do I write a controller?" An example of a good question would be, "I'd like to create a custom controller that checks for nodes that are in the 'Not Ready' state and print our their IP address. I'm not familiar with Golang so instead of using client-go I've looked at MetaController as a way to get started using Javascript. I'm having trouble with this portion of the webhook, can you please take a look?" -Pod mentoring will be available during KubeCon + CloudNativeCon events. You will need to register to attend to be eligible for mentoring. For those who wish to be a mentor please take a look at the [mentor-guide](/mentoring/processes/mentor-guide.md). +Pod mentoring will be available during KubeCon + CloudNativeCon events. You will need to register to attend to be eligible for mentoring. For those who wish to be a mentor please take a look at the [mentor-guide](/mentoring/mentors/mentor-guide.md). diff --git a/mentoring/programs/mentoring-lead.md b/mentoring/programs/archive/mentoring-lead.md similarity index 100% rename from mentoring/programs/mentoring-lead.md rename to mentoring/programs/archive/mentoring-lead.md diff --git a/mentoring/programs/outreachy.md b/mentoring/programs/archive/outreachy.md similarity index 100% rename from mentoring/programs/outreachy.md rename to mentoring/programs/archive/outreachy.md diff --git a/mentoring/programs/shadow-roles.md b/mentoring/programs/archive/shadow-roles.md similarity index 100% rename from mentoring/programs/shadow-roles.md rename to mentoring/programs/archive/shadow-roles.md diff --git a/mentoring/programs/the1-on-1hour.md b/mentoring/programs/archive/the1-on-1hour.md similarity index 95% rename from mentoring/programs/the1-on-1hour.md rename to mentoring/programs/archive/the1-on-1hour.md index 6a5700c8d1e..8164fa9ef7f 100644 --- a/mentoring/programs/the1-on-1hour.md +++ b/mentoring/programs/archive/the1-on-1hour.md @@ -23,7 +23,7 @@ We will attempt to match you with the closest mentor of your area of interested ## Mentors -If you are interested in signing up to be a mentor for this, please see the [mentor guidelines](/mentoring/processes/mentor-guide.md). +If you are interested in signing up to be a mentor for this, please see the [mentor guidelines](/mentoring/mentors/mentor-guide.md). ## Notes From a18aa14a2cf6e5999e535f7b319525c6c787f4bd Mon Sep 17 00:00:00 2001 From: Sylvester Carolan Date: Sun, 18 Aug 2024 17:43:26 -0400 Subject: [PATCH 2/7] Set up directory structure and start planning Group Cohorts (#2) --- mentoring/README.md | 39 ++++++++ .../groupmentorship/group-mentor-planning.md | 31 +++++++ .../{archive => 2024}/shadow-roles.md | 0 mentoring/programs/archive/README-Meetings.md | 67 +++++++++++++- mentoring/programs/archive/group-mentoring.md | 88 +++++++++++++++++++ mentoring/programs/archive/meetings.md | 5 ++ mentoring/programs/mentoring-events.md | 11 +++ .../{programs => resources}/office-hours.md | 0 8 files changed, 238 insertions(+), 3 deletions(-) create mode 100644 mentoring/programs/2024/groupmentorship/group-mentor-planning.md rename mentoring/programs/{archive => 2024}/shadow-roles.md (100%) create mode 100644 mentoring/programs/archive/group-mentoring.md create mode 100644 mentoring/programs/archive/meetings.md create mode 100644 mentoring/programs/mentoring-events.md rename mentoring/{programs => resources}/office-hours.md (100%) diff --git a/mentoring/README.md b/mentoring/README.md index f3f36eb8225..22e1108c1ad 100644 --- a/mentoring/README.md +++ b/mentoring/README.md @@ -29,7 +29,46 @@ it's necessary to keep a continuous pipeline of quality contributors and we want External programs - [LFX Mentorship](/mentoring/processes/lfx-mentorship.md) +## Mentoring Programs +Please reach out to #sig-contribex on slack or come to a mentoring meeting to get involved in planning //TODO add contribex README when this is updated + +SIG's office hours / mentoring + +- [Office hours / mentoring](/mentoring/programs/office-hours.md) + +Long Term Contributor Ladder Growth + +- Through [Group Mentoring Cohorts](/mentoring/mentors/group-mentoring.md) + +Specific topics and activities + +- [The 1:1 Hour](/mentoring/programs/archive/the1-on-1hour.md) + +Role based shadow programs + +- [List of programs](/mentoring/programs/archive/shadow-roles.md) + +Students + +- [Google Summer of Code](/mentoring/programs/archive/google-summer-of-code.md) + +1:1 full-time mentoring + +- [LFX Mentorship](/mentoring/processes/lfx-mentorship.md) + +Tech Writers + +- [Google Season of Docs](/mentoring/processes/google-season-of-docs.md) + +Groups Traditionally Underrepresented in Tech + +- [Outreachy](/mentoring/programs/archive/outreachy.md) + +In person + +- [Videos of New Contributor Workshop](https://www.youtube.com/playlist?list=PL69nYSiGNLP3M5X7stuD7N4r3uP2PZQUx) +- Pod Mentoring! [aka group mentoring](/mentoring/programs/archive/mentoring-events.md) #### Inspiration and Thanks diff --git a/mentoring/programs/2024/groupmentorship/group-mentor-planning.md b/mentoring/programs/2024/groupmentorship/group-mentor-planning.md new file mode 100644 index 00000000000..d9f45f488eb --- /dev/null +++ b/mentoring/programs/2024/groupmentorship/group-mentor-planning.md @@ -0,0 +1,31 @@ +# 2024 Group Cohort Mentorship September - November + +Status: Planning + +Mentorship duration - TBD + +## Timeline + +| activity | date | status | +|--------------------------------------------------------------------------------|----------|-------------| +| Plan time-line | Aug 24 | In progress | +| Recruit contribex help (at least 3 ) | Aug 30 | | +| Communication to SIGs - identify learning type (approvers, tech leads, chairs) | Aug 30 | | +| Create Sylabus/Curriculum | Sep 6 | | +| Identify Mentor roles/Cadence | Sept 13 | | +| Create private slack chanels/mailing lists/meetings | Sep 6 | | +| Open Program | Sep 13 | | +| Program start | Sep 18 | | +| Program end | | | +| Feedback | | | + + ## ContribEx Roles +- Program Coordinator + - Handle logistics + - set up meetings + - communications + - Mentor/Mentee Support + - slack chanel moderator +- Program Support x 2 + - Host meetings and events + - upport the Coordinator diff --git a/mentoring/programs/archive/shadow-roles.md b/mentoring/programs/2024/shadow-roles.md similarity index 100% rename from mentoring/programs/archive/shadow-roles.md rename to mentoring/programs/2024/shadow-roles.md diff --git a/mentoring/programs/archive/README-Meetings.md b/mentoring/programs/archive/README-Meetings.md index 63fd9179e22..76820078d47 100644 --- a/mentoring/programs/archive/README-Meetings.md +++ b/mentoring/programs/archive/README-Meetings.md @@ -1,5 +1,66 @@ -# Home of the Kubernetes Mentoring Program +--- +title: "Mentoring Programs and Resources" +weight: 3 +description: | + An index of Kubernetes Mentoring programs, initiatives, and resources. +--- -## Meetings +# Kubernetes Upstream Mentoring Programs -Currently, the mentoring meeting happens in conjunction with the New Contributor Workshop meeting which is held bi-weekly on Monday at 16:00. +This page indexes all of the mentoring initiatives for contributing to the Kubernetes project. For end user mentoring initiatives, check out KubeCon and other CNCF events and programs. + +--- + +We understand that everyone has different learning styles and we want to support +as many of those as possible. Mentoring is vital to the growth of an individual +and organization of every kind. For Kubernetes, the larger the project becomes +, it's necessary to keep a continuous pipeline of quality contributors and we want you to hang around! + +## Current mentoring activities: + +Please reach out to #sig-contribex on slack or come to a mentoring meeting to get involved in planning //TODO add contribex README when this is updated + +Long Term Contributor Ladder Growth + +- Through [Group Mentoring Cohorts](/mentoring/programs/archive/group-mentoring.md) + +Specific topics and activities + +- [The 1:1 Hour](/mentoring/programs/archive/the1-on-1hour.md) + +Role based shadow programs + +- [List of programs](/mentoring/programs/2024/shadow-roles.md) + +Students + +- [Google Summer of Code](/mentoring/programs/archive/google-summer-of-code.md) + + +Groups Traditionally Underrepresented in Tech + +- [Outreachy](/mentoring/programs/archive/outreachy.md) + +In person + +- [Videos of New Contributor Workshop](https://www.youtube.com/playlist?list=PL69nYSiGNLP3M5X7stuD7N4r3uP2PZQUx) +- Pod Mentoring! [aka group mentoring](/mentoring/programs/mentoring-events.md) + +#### Inspiration and Thanks + +This is not an out of the box program but was largely inspired by the following: + +- [Ada Developer Academy](https://adadevelopersacademy.org/) +- [Apache Mentoring Programme](https://community.apache.org/mentoringprogramme.html) +- [exercism.io](https://github.com/OperationCode/exercism-io-mentoring) +- [Google Summer of Code](https://developers.google.com/open-source/gsoc/) +- [Outreachy](https://www.outreachy.org/) +- [OpenStack Mentoring](https://wiki.openstack.org/wiki/Mentoring) + +Thanks to: + +- the many contributors who reviewed and participated in brainstorming, +- founding mentees for their willingness to try this out, +- founding mentors (@chrislovecnm, @luxas, @kow3ns, @nikhita) + +We welcome PRs, suggestions, and help! \ No newline at end of file diff --git a/mentoring/programs/archive/group-mentoring.md b/mentoring/programs/archive/group-mentoring.md new file mode 100644 index 00000000000..358dbd51cab --- /dev/null +++ b/mentoring/programs/archive/group-mentoring.md @@ -0,0 +1,88 @@ +# Running a Contributor Ladder Growth Program + +There are differences in curriculum for reviewer and Chair and/or Tech Lead +groups but the foundation of each are mostly the same unless otherwise noted +below in the set up instructions. This difference is also reflected in our +[community membership guidelines]. + +## Discovery of Needs + +Cadence: +ContribEx sets an issue in k/community requesting SIGs to participate preceding +the next release by one month. + +Rolling: +SIGs can approach ContribEx at anytime to start a group; file an issue in +kubernetes/community or talk with us in #sig-contribex. + +## Curriculum Building +While not a fully structured program, some light planning is needed to make sure +the curriculum being taught is relevant for the group. Here are our base +suggestions: + +*Reviewer* +- Enhancements +- Overview of Release Cycle +- Overview of SIGs subprojects +- Development + - Triage + - Reviews - detailed walk thrus + - API Changes + - Testing +- Code Freeze +- Cherry-Picks/Branch Management + +*Chair* +- Enhancement Planning +- Meetings and Organization +- Responsibilities and governance overview +- Consensus-building +- Cross-project communication + +*Chair/TL combo* +Chair + Reviewer +- All of the above +- [Sample curriculum](/mentoring/processes/leads-curriculum.md) + +One of the best strategies is to have everyone work on something together, +Examples: +- reviewing guidelines for the SIG if there are none/updating guide +- CONTRIBUTING.md for the SIG if there isn't one/updating guide +- mid-size project +- a release cycle of features for the SIG, establishing better processes + +## Setup and Outreach +0. Need is established and SIG provides a mentor* +1. ContribEx kicks off two issues, sets a target start and end date, and selects +a coordinator + - issue #1: outreach issue to collect folks who are interested and set up + infra, issue will close when there are the max participants needed + example: https://github.com/kubernetes/community/issues/5962 + key bits of info: target, start/end date, sign up and requirements, slack info, + mentors, coordinators + - issue #2: structure of sessions and assign guest speakers + start with a hackmd to coordinate with mentors and then set issue +1. ContribEx Coordinator(s) posts issue #1 to the following places: + - SIG list first and then k-dev mailing lists with timeboxes for responses + - #diversity, #kubernetes-contributors, #sig-[name], and other slack channels +3. Slack stand ups happen on the day of the SIG meetings but the 30-min +bi-weekly meetings will need to be arranged. Coorindator should send out a +doodle to the selected group with a few times that work for the mentors. +4. Coorindator and mentors work together on the three-month plan template. +Coordinator will schedule the speakers and create a calendar for the group. +example here: https://hackmd.io/1aAIaMChR8Gfi31aOKBHlA +5. Mentor creates template that serves as a reference guide for the group. See +a sig-node example here: https://hackmd.io/8i8prErgSOamUmEZDDZPWA +6. Program begins at the kick off meeting + - [TODO add kick off template] +7. Feedback is continuous as you stand up weekly; however, the ContribEx +Coorindator will set a mid program check-in. In this check-in, members of the +group will start their application process for their roles and any group members + who have not had the time. + - [TODO add community membership template] +8. By this point, folks should know where they stand. At the end of the program, + mentors and/or individuals will start the PR process in OWNERS files or + sigs.yaml for leadership roles for those who are ready + + +[community membership guidelines]: community-membership.md diff --git a/mentoring/programs/archive/meetings.md b/mentoring/programs/archive/meetings.md new file mode 100644 index 00000000000..63fd9179e22 --- /dev/null +++ b/mentoring/programs/archive/meetings.md @@ -0,0 +1,5 @@ +# Home of the Kubernetes Mentoring Program + +## Meetings + +Currently, the mentoring meeting happens in conjunction with the New Contributor Workshop meeting which is held bi-weekly on Monday at 16:00. diff --git a/mentoring/programs/mentoring-events.md b/mentoring/programs/mentoring-events.md new file mode 100644 index 00000000000..fad67758458 --- /dev/null +++ b/mentoring/programs/mentoring-events.md @@ -0,0 +1,11 @@ +# Mentoring Activities at Events + +During events like KubeCon and other related events that arise, there will be the opportunity for mentoring activities. This doc will list those. The KubeCon events are run by CNCF/LF and not Contributor Experience although we may advise and members could help out. + +## Pod Mentoring + +Pod mentoring gathers a group of mentors to help you get your Kubernetes-related questions answered quickly and efficiently. More mentors means more breadth of knowledge and experience, resulting in a better chance of at least one person being able to answer your question. It can also mean multiple perspectives since there isn't always one right answer! + +To be respectul of each mentors time, please have succinct questions ready and a brief summary of what you've tried and what you'd like or expect to happen. For instance, an example of a poor question would be, "How do I write a controller?" An example of a good question would be, "I'd like to create a custom controller that checks for nodes that are in the 'Not Ready' state and print our their IP address. I'm not familiar with Golang so instead of using client-go I've looked at MetaController as a way to get started using Javascript. I'm having trouble with this portion of the webhook, can you please take a look?" + +Pod mentoring will be available during KubeCon + CloudNativeCon events. You will need to register to attend to be eligible for mentoring. For those who wish to be a mentor please take a look at the [mentor-guide](/mentoring/mentors/mentor-guide.md). diff --git a/mentoring/programs/office-hours.md b/mentoring/resources/office-hours.md similarity index 100% rename from mentoring/programs/office-hours.md rename to mentoring/resources/office-hours.md From b19f16d3db5d4e339a0daa6547496339eb053b96 Mon Sep 17 00:00:00 2001 From: Sylvester Carolan Date: Sun, 18 Aug 2024 17:58:59 -0400 Subject: [PATCH 3/7] 8021 (#3) * Set up directory structure and start planning Group Cohorts * Set up directory structure and start planning Group Cohorts * Set up directory structure and start planning Group Cohorts --- mentoring/README.md | 36 ++++++++++--- mentoring/programs/archive/README.md | 77 ++++++++++++++++++++++++++++ 2 files changed, 105 insertions(+), 8 deletions(-) create mode 100644 mentoring/programs/archive/README.md diff --git a/mentoring/README.md b/mentoring/README.md index 22e1108c1ad..5e05c84203c 100644 --- a/mentoring/README.md +++ b/mentoring/README.md @@ -16,20 +16,39 @@ as many of those as possible. Mentoring is vital to the growth of an individual and organization of every kind. For Kubernetes, the larger the project becomes, it's necessary to keep a continuous pipeline of quality contributors and we want you to hang around! +## Resources +- [New Contributors Guide](https://docs.google.com/presentation/d/1WO7vj33cVy1-rOav3CevAGrw97VrbIAFo_SQXbUwy28/edit#slide=id.g2f2865a3246_0_63) +- [Mentor Guides](/mentoring/mentors/mentor-guide.md) +- [Mentee Guides](/mentoring/mentees/group-mentee-guide.md) +- [SIG Office Hours](/mentoring/resources/office-hours.md) -## Current mentoring activities: +## Programs -### SIG's office hours -- [Office hours](/mentoring/programs/office-hours.md) +| Program | Status | Target Date | +|------------------------------------------------------------------------|--------------------------|-------------------------------------------------------------------------------| +| [Group Mentoring Cohorts](/mentoring/mentors/group-mentoring.md) | **Planning in progress** | [Sept-Nov](/mentoring/programs/2024/groupmentorship/group-mentor-planning.md) | -### Long Term Contributor Ladder Growth (currently in planning, expected later this year) -- [Group Mentoring Cohorts](/mentoring/mentors/group-mentoring.md) + +### Self Paced +- [Contributor Workshop](/mentoring/programs/contributor-workshop/README.md) +- [Videos of New Contributor Workshop](https://www.youtube.com/playlist?list=PL69nYSiGNLP3M5X7stuD7N4r3uP2PZQUx) + +### Role based shadow programs + +- [List of programs](/mentoring/programs/2024/shadow-roles.md) + +### Mentoring Events -External programs +- Pod Mentoring! [aka group mentoring](/mentoring/programs/archive/mentoring-events.md) + +### External programs - [LFX Mentorship](/mentoring/processes/lfx-mentorship.md) -## Mentoring Programs +## Archive +- [Mentoring Programs](/mentoring/programs/archive/README.md) + +Please reach out to #sig-contribex on slack or come to a mentoring meeting to get involved in planning //TODO add contribex README when this is updated Please reach out to #sig-contribex on slack or come to a mentoring meeting to get involved in planning //TODO add contribex README when this is updated @@ -78,9 +97,10 @@ This is not an out of the box program but was largely inspired by the following: - [Apache Mentoring Programme](https://community.apache.org/mentoringprogramme.html) - [exercism.io](https://github.com/OperationCode/exercism-io-mentoring) - [Google Summer of Code](https://developers.google.com/open-source/gsoc/) +- [LFX Mentorshop](https://github.com/cncf/mentoring) - [Outreachy](https://www.outreachy.org/) - [OpenStack Mentoring](https://wiki.openstack.org/wiki/Mentoring) - + Thanks to: - the many contributors who reviewed and participated in brainstorming, diff --git a/mentoring/programs/archive/README.md b/mentoring/programs/archive/README.md new file mode 100644 index 00000000000..59360483a5f --- /dev/null +++ b/mentoring/programs/archive/README.md @@ -0,0 +1,77 @@ +--- +title: "Mentoring Programs and Resources" +weight: 3 +description: | + An index of Kubernetes Mentoring programs, initiatives, and resources. +--- + +# Kubernetes Upstream Mentoring Programs + +This page indexes all of the mentoring initiatives for contributing to the Kubernetes project. For end user mentoring initiatives, check out KubeCon and other CNCF events and programs. + +--- + +We understand that everyone has different learning styles and we want to support +as many of those as possible. Mentoring is vital to the growth of an individual +and organization of every kind. For Kubernetes, the larger the project becomes +, it's necessary to keep a continuous pipeline of quality contributors and we want you to hang around! + +## Current mentoring activities: + +Please reach out to #sig-contribex on slack or come to a mentoring meeting to get involved in planning //TODO add contribex README when this is updated + +SIG's office hours / mentoring + +- [Office hours / mentoring](/mentoring/resources/office-hours.md) + +Long Term Contributor Ladder Growth + +- Through [Group Mentoring Cohorts](/mentoring/programs/archive/group-mentoring.md) + +Specific topics and activities + +- [The 1:1 Hour](/mentoring/programs/archive/the1-on-1hour.md) + +Role based shadow programs + +- [List of programs](/mentoring/programs/2024/shadow-roles.md) + +Students + +- [Google Summer of Code](/mentoring/programs/archive/google-summer-of-code.md) + +1:1 full-time mentoring + +- [LFX Mentorship](/mentoring/processes/lfx-mentorship.md) + +Tech Writers + +- [Google Season of Docs](/mentoring/processes/google-season-of-docs.md) + +Groups Traditionally Underrepresented in Tech + +- [Outreachy](/mentoring/programs/archive/outreachy.md) + +In person + +- [Videos of New Contributor Workshop](https://www.youtube.com/playlist?list=PL69nYSiGNLP3M5X7stuD7N4r3uP2PZQUx) +- Pod Mentoring! [aka group mentoring](/mentoring/programs/archive/mentoring-events.md) + +#### Inspiration and Thanks + +This is not an out of the box program but was largely inspired by the following: + +- [Ada Developer Academy](https://adadevelopersacademy.org/) +- [Apache Mentoring Programme](https://community.apache.org/mentoringprogramme.html) +- [exercism.io](https://github.com/OperationCode/exercism-io-mentoring) +- [Google Summer of Code](https://developers.google.com/open-source/gsoc/) +- [Outreachy](https://www.outreachy.org/) +- [OpenStack Mentoring](https://wiki.openstack.org/wiki/Mentoring) + +Thanks to: + +- the many contributors who reviewed and participated in brainstorming, +- founding mentees for their willingness to try this out, +- founding mentors (@chrislovecnm, @luxas, @kow3ns, @nikhita) + +We welcome PRs, suggestions, and help! \ No newline at end of file From efc122d6489a59b0d1c102dbbe74ab87a91e6da6 Mon Sep 17 00:00:00 2001 From: Sylvester Carolan Date: Sun, 18 Aug 2024 18:22:13 -0400 Subject: [PATCH 4/7] Minor updates to readme --- mentoring/README.md | 38 +------------------------------------- 1 file changed, 1 insertion(+), 37 deletions(-) diff --git a/mentoring/README.md b/mentoring/README.md index 5e05c84203c..df017b69da3 100644 --- a/mentoring/README.md +++ b/mentoring/README.md @@ -26,7 +26,7 @@ it's necessary to keep a continuous pipeline of quality contributors and we want | Program | Status | Target Date | |------------------------------------------------------------------------|--------------------------|-------------------------------------------------------------------------------| -| [Group Mentoring Cohorts](/mentoring/mentors/group-mentoring.md) | **Planning in progress** | [Sept-Nov](/mentoring/programs/2024/groupmentorship/group-mentor-planning.md) | +| [Group Mentoring Cohorts](/mentoring/programs/2024/group-mentoring.md) | **Planning in progress** | [Sept-Nov](/mentoring/programs/2024/groupmentorship/group-mentor-planning.md) | ### Self Paced @@ -52,42 +52,6 @@ Please reach out to #sig-contribex on slack or come to a mentoring meeting to ge Please reach out to #sig-contribex on slack or come to a mentoring meeting to get involved in planning //TODO add contribex README when this is updated -SIG's office hours / mentoring - -- [Office hours / mentoring](/mentoring/programs/office-hours.md) - -Long Term Contributor Ladder Growth - -- Through [Group Mentoring Cohorts](/mentoring/mentors/group-mentoring.md) - -Specific topics and activities - -- [The 1:1 Hour](/mentoring/programs/archive/the1-on-1hour.md) - -Role based shadow programs - -- [List of programs](/mentoring/programs/archive/shadow-roles.md) - -Students - -- [Google Summer of Code](/mentoring/programs/archive/google-summer-of-code.md) - -1:1 full-time mentoring - -- [LFX Mentorship](/mentoring/processes/lfx-mentorship.md) - -Tech Writers - -- [Google Season of Docs](/mentoring/processes/google-season-of-docs.md) - -Groups Traditionally Underrepresented in Tech - -- [Outreachy](/mentoring/programs/archive/outreachy.md) - -In person - -- [Videos of New Contributor Workshop](https://www.youtube.com/playlist?list=PL69nYSiGNLP3M5X7stuD7N4r3uP2PZQUx) -- Pod Mentoring! [aka group mentoring](/mentoring/programs/archive/mentoring-events.md) #### Inspiration and Thanks From f6a9cd28551554456ae22a754abe10f0b29ddca0 Mon Sep 17 00:00:00 2001 From: Sylvester Carolan Date: Sun, 18 Aug 2024 18:23:23 -0400 Subject: [PATCH 5/7] Minor updates to readme --- mentoring/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mentoring/README.md b/mentoring/README.md index df017b69da3..7a47c13acb9 100644 --- a/mentoring/README.md +++ b/mentoring/README.md @@ -24,9 +24,9 @@ it's necessary to keep a continuous pipeline of quality contributors and we want ## Programs -| Program | Status | Target Date | -|------------------------------------------------------------------------|--------------------------|-------------------------------------------------------------------------------| -| [Group Mentoring Cohorts](/mentoring/programs/2024/group-mentoring.md) | **Planning in progress** | [Sept-Nov](/mentoring/programs/2024/groupmentorship/group-mentor-planning.md) | +| Program | Status | Target Date | +|-------------------------------------------------------------------------------------------------|--------------------------|-------------------------------------------------------------------------------| +| [Group Mentoring Cohorts](/mentoring/programs/2024/groupmentorship/group-mentor-planning.md) | **Planning in progress** | [Sept-Nov](/mentoring/programs/2024/groupmentorship/group-mentor-planning.md) | ### Self Paced From 50f07c8fdf6c97d06dcbee6e34f752b36af8f2fb Mon Sep 17 00:00:00 2001 From: Sylvester Carolan Date: Thu, 29 Aug 2024 17:46:23 -0400 Subject: [PATCH 6/7] 8021 (#4) * Set up directory structure and start planning Group Cohorts * Set up directory structure and start planning Group Cohorts * Set up directory structure and start planning Group Cohorts * copied group-mentoring.md to program folder * Create hugo.yaml * Update hugo.yaml, add workflow --- .github/workflows/hugo.yaml | 78 ++++++++++++++++++++++++++ mentoring/README.md | 8 +-- mentoring/programs/group-mentoring.md | 80 +++++++++++++++++++++++++++ 3 files changed, 161 insertions(+), 5 deletions(-) create mode 100644 .github/workflows/hugo.yaml create mode 100644 mentoring/programs/group-mentoring.md diff --git a/.github/workflows/hugo.yaml b/.github/workflows/hugo.yaml new file mode 100644 index 00000000000..77e34d6bea2 --- /dev/null +++ b/.github/workflows/hugo.yaml @@ -0,0 +1,78 @@ +# Sample workflow for building and deploying a Hugo site to GitHub Pages +name: Deploy Hugo site to Pages + +on: + # Runs on pushes targeting the default branch + push: + branches: + - 8021 + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +# Default to bash +defaults: + run: + shell: bash + +jobs: + # Build job + build: + runs-on: ubuntu-latest + env: + HUGO_VERSION: 0.128.0 + steps: + - name: Install Hugo CLI + run: | + wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ + && sudo dpkg -i ${{ runner.temp }}/hugo.deb + - name: Install Dart Sass + run: sudo snap install dart-sass + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: recursive + fetch-depth: 0 + - name: Setup Pages + id: pages + uses: actions/configure-pages@v5 + - name: Install Node.js dependencies + run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true" + - name: Build with Hugo + env: + HUGO_CACHEDIR: ${{ runner.temp }}/hugo_cache + HUGO_ENVIRONMENT: production + TZ: America/Los_Angeles + run: | + hugo \ + --gc \ + --minify \ + --baseURL "${{ steps.pages.outputs.base_url }}/" + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: ./public + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/mentoring/README.md b/mentoring/README.md index 7a47c13acb9..78613339160 100644 --- a/mentoring/README.md +++ b/mentoring/README.md @@ -24,9 +24,9 @@ it's necessary to keep a continuous pipeline of quality contributors and we want ## Programs -| Program | Status | Target Date | -|-------------------------------------------------------------------------------------------------|--------------------------|-------------------------------------------------------------------------------| -| [Group Mentoring Cohorts](/mentoring/programs/2024/groupmentorship/group-mentor-planning.md) | **Planning in progress** | [Sept-Nov](/mentoring/programs/2024/groupmentorship/group-mentor-planning.md) | +| Program | Status | Target Date | +|------------------------------------------------------------------------|--------------------------|-------------------------------------------------------------------------------| +| [Group Mentoring Cohorts](/mentoring/mentors/group-mentoring.md) | **Planning in progress** | [Sept-Nov](/mentoring/programs/2024/groupmentorship/group-mentor-planning.md) | ### Self Paced @@ -50,8 +50,6 @@ it's necessary to keep a continuous pipeline of quality contributors and we want Please reach out to #sig-contribex on slack or come to a mentoring meeting to get involved in planning //TODO add contribex README when this is updated -Please reach out to #sig-contribex on slack or come to a mentoring meeting to get involved in planning //TODO add contribex README when this is updated - #### Inspiration and Thanks diff --git a/mentoring/programs/group-mentoring.md b/mentoring/programs/group-mentoring.md new file mode 100644 index 00000000000..2aef34b7284 --- /dev/null +++ b/mentoring/programs/group-mentoring.md @@ -0,0 +1,80 @@ +# Contributor Ladder Growth Programs + +These programs place an emphasis on learning in groups for active contributors +that would like to be a reviewer or other leadership roles like a Chair. The +groups are semi-structured learning environments over the course of three +months or a release cycle. Want to get `/lgtm` rights? Be a decision maker in an + OWNERS file? This could be a great way to get the knowledge you need, and some + accountability to do it. Through this program you will get the opportunity to + interact with active contributors who may be on the same path as you as well + very experienced Kubernetes contributors. + +## How This Works +Foundation: +This program is built around our [community membership guidelines] as well as +our [Chair] and [Tech Lead] governance descriptions. +These docs show how you can grow through the project in different roles and +provides the requirements to get to each level on our ladder. Building trust is +key. + +## Cohorts +- No more than 4 mentees per 1 mentor; no more than 8 total in the group + - this scales better than 1:1 and peers can help each other in a community + setting +- Everyone is on the same journey +Member -> Reviewer | Reviewer -> Approver | SIG Member -> Chair +- Three months / one release cycle +- Private slack channel + For you to progress, the community wants to know you are dependable and + understand the domain. + +Mentors can rotate facilitating once a week for slack standups with the +expectation that cohort members need to check in with a predetermined status +update (accomplishments, challenges, etc) + +## Benefits of a Cohort +* Peer mentoring +* Clear goals, objectives, and timelines +* Each mentee is working toward the same goal, cohort has an end date/timeframe +* Exposure to multiple areas of the project making well-rounded contributors +* Mentors share time commitments and responsibilities +* Exposure to multiple mentors in an open and collaborative environment + + +## Mentor requirements +- Github Org Member +- At least the same level as the goal of the group (example: Reviewer for +Reviewers) +- Time commitment: facilitate biweekly, hour long zoom sessions plus curriculum +planning in between sessions (~1-2h/wk total). + +## First Cohort Success Rates +5/10 graduated into OWNERs files from members to reviewers in 2019. 2 are +subproject owners in 2021. + +## FAQs +I'm a SIG Chair/TL/Subproject Owner and have a need for more members, reviewers, +approvers, how can we form a cohort? +Reach out to #sig-contribex in slack or file an issue against +kubernetes/community + +I'm a contributor looking for a cohort, where do I go? +Look in the kubernetes/community repo for issues labelled "contributor ladder +mentoring" + +I'm not a chair, tech lead, or subproject owner but I'm a reviewer or approver, +how can I help? +Talk to your Chairs and Tech Leads about forming a group that you can help +mentor. + + +## Important Links +[Mentor Guide] +[Mentee Guide] + +[Mentee Guide]: /mentoring/programs/archive/group-mentee-guide.mdguide.md +[Mentoring/Contributor Info Form]: https://goo.gl/forms/SHWAiZ9Ih1qwuJbs1 +[Mentor Guide]: /mentoring/mentors/mentor-guide.md +[community membership guidelines]: /community-membership.md +[Chair]: https://github.com/kubernetes/community/blob/master/committee-steering/governance/sig-governance.md#chair +[Tech Lead]: https://github.com/kubernetes/community/blob/master/contributors/chairs-and-techleads/technical-lead.md From 848c0e39745b91abcb76f15977da2b4522355c5c Mon Sep 17 00:00:00 2001 From: Sylvester Carolan Date: Thu, 29 Aug 2024 17:47:22 -0400 Subject: [PATCH 7/7] Update hugo.yaml -change branch --- .github/workflows/hugo.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/hugo.yaml b/.github/workflows/hugo.yaml index 77e34d6bea2..fe1fe7845a2 100644 --- a/.github/workflows/hugo.yaml +++ b/.github/workflows/hugo.yaml @@ -5,7 +5,7 @@ on: # Runs on pushes targeting the default branch push: branches: - - 8021 + - main # Allows you to run this workflow manually from the Actions tab workflow_dispatch: