Diverse Leadership - Community.o Workshop Followup

At the Community.o Workshop, I gave a presentation about Diverse Leadership. You can view the recording here:

As promised, I would like to begin the followup discussions about this topic and further discuss many of the fantastic ideas that have been mentioned.

My first step, is to transcribe the notes taken from the event and present them here. I will add to this post as I go. The second step is schedule a virtual meeting to begin laying out priorities and action items.

There were 4 leadership areas that I asked people to discuss in the context of improving diversity within them:

  1. Code of Conduct Committee, Nonprofit boards
  2. Mentorship and Office Hours
  3. Conference Speakers and Program committees
  4. Code Owners

I will post the transcribed notes in separate posts below. If you watch the video you can also see the groups going through their notes.

Code Owners Notes:

Responsibilities:

  • Quality Code Review
  • Long-term planning + vision for a component
  • Pushing patches for people w/o commit access
  • Design review for things like large refactors
  • Bug triaging
  • Onboarding new contributors

What can we do better to lower barriers?

  • More than 1 code owner
    • You don’t need to know everything to begin the role
  • Automate expertise inference
  • “Default reviewer” == “code owner”
    • People could sign up as a default reviewer and learn more about the system

Do we need an official code owner system at all?

Should there be a code owner meeting to evaluate who are inactive code owners?

There should be a way for code owners to take a break

Improve/Introduce mentorship

Concern: Automated process is infrequently run and probably will silently break

What do we measure? How accurate would it be?

What do you define as a code owner component? (eg. “windows code owner”)

Barriers to entry: Add structure and process to becoming a code owner

Code owners nominating new owners is a potential point of bias

Code of Conduct Committee & Nonprofit Boards Notes

What are needs of the boards/committees?

Barriers:

  • Training
  • Responsibility requirements
    • Sponsorship of company
    • “Legal” involved - LLVM could own
  • Process of application (especially for CoC - not well-defined)
  • Visible and Meaning leaders: to care when there is a call to action
    • Connection to the community
  • Employer doesn’t recognize work in open source
    • Metrics: INS + OUTS
    • Cost of divergence is high
    • Employees have greater benefit in open source
      • How to translate to employers
    • Benefits of bureaucracy - LLVM needs titles and formality (i.e. code owners)
    • Recognition
  • Tooling to back leadership roles
  • Adoption must be community driven
  • Thanklessness for more responsibility
    • But more formal
  • Congrats to new contributor
  • Going from “new” to “board” or CoC
    • Encourage newcomers with recognition
    • “Badges” for longevity

Org Barriers:

  • Momentum 2x year meetings
  • Poster board refreshes in Jan
  • Technical stuff happens
    • Org stuff learn those lessons
  • Repurpose existing things i.e. office hours
    • Design discussion?

Encourage more in leadership

  • Also encourage newcomers

Mentorship and Office hours

Maintaining beginner bugs

  • Detailed comments on bugs solved
  • Pari programming sessions
  • Focus on less time-sensitive bugs
    • Code cleanup

Create videos of debugging or investigating bugs or using useful tools for code cleanup

Github code spaces to simplify steps

What if less experiences mentor has questions themselves (and do not get answers from the community; need support for more knowledgeable mentors) ← GSOC

Solving bugs is harder than beginner feature

Advertise that it is useful for community to have reviews from newcomers

Learning through code review

  • Code owners add newcomers for extra review on a patch

Telling managers that value of mentoring ties with recruiting

Telling managers that you need to mentor to get help on a project

Advertising office hours to more people, possibly students

  • Office hours could be low overhead
  • Engineers working while waiting for people to join

Advertize Google calendar for office hours

  • Maybe add to the community newsletter?

Setup linkedIn for the LLVM Project

Conference Speakers & Program Committee

Shadow committee? (“trainee” committee)

Barriers to entry

  • Time expectations (could be clearer)
  • Currently ~few days
  • Review expectations

Training:

  • How to review (constructive feedback)
  • Update good reviews
  • Make available to next PC

Clarify purpose/scope (v.s. academic)

What makes it unique

Invited speakers

Youtube useful

Clarify submissions/checklist for submission

Motivation:

  • Contribute, represent
  • Learning, networking
  • Discount for PC members?