community icon indicating copy to clipboard operation
community copied to clipboard

Maintenance Czarring

Open mrocklin opened this issue 6 years ago • 7 comments

For background, a group of people working at various companies donate 20-25% of their time to maintain the various Dask issue trackers Each Tuesday, one of those ~suckers~ contributors volunteers to be the "maintenance czar" who is in principle responsible for making sure that things run smoothly. This involves ...

  1. Handling new issues
  2. Being first reviewer on new PRs
  3. Being kind and welcoming, while also firmly directing novices towards time-efficient behavior
  4. Making sure that existing issues and PRs progress to a done state
  5. Corralling other maintainers as necessary, but not depending entirely on them

It's an intense and time consuming job, even when you know what you're doing. And it's actually pretty hard to know what you're doing because this jobs requires a broad set of technical and social expertise:

  1. Moderate understanding of the Dask project
  2. Broad (but not deep) understanding of all of the PyData stack (numpy, pandas, scikit-learn, jupyter) as well as other technologies like AWS, kubernetes, HPC deployments, SSL, and so on.
  3. Social and interpersonal skills to handle people in an efficient but sensitive manner
  4. Organizational skills to not let things get left behind, and to stay responsive to dozens of simultaneous conversations

Being Czar builds these skills, but it's painful to start, both for the czar, and for the community, who probably gets sub-optimal response that week.

Recently (maybe because of at-home quarantine?) we have a growth in both demand and supply.

  1. There seems to be an increase in issues and PRs
  2. We have more ~suckers~ contributors donating their time

As a result Czarring has become more intense (at least for me). I would like to suggest that we start co-czarring, intentionally combining someone who is familiar with this task, and someone who is new. I also think that we should figure out a steady practice (daily video checkins?) that they do together to be productive both in handling the inbox, and also in knowledge transfer.

cc @TomAugspurger @jrbourbeau @quasiben @jsignell @jjhelmus @gforsyth @martindurant @jacobtomlinson @jcrist

mrocklin avatar Mar 30 '20 15:03 mrocklin

+1 for co-czarring from me. I've found co-czarring to be a pleasant experience

jrbourbeau avatar Mar 30 '20 16:03 jrbourbeau

Can you say a bit more about what made it a pleasant experience? I haven't done this before, and I think it would be useful to figure out some sort of structure as a group.

On Mon, Mar 30, 2020 at 9:28 AM James Bourbeau [email protected] wrote:

+1 for co-czarring from me. I've found co-czarring to be a pleasant experience

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/dask/community/issues/39#issuecomment-606103644, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACKZTH33LXVNM5KHKZC3ZDRKDCCNANCNFSM4LWWLD4Q .

mrocklin avatar Mar 30 '20 16:03 mrocklin

Yeah, definitely. Here are a few thoughts:

  • I found going through issues / PRs together on a video chat to be really helpful with knowledge transfer. Using a higher bandwidth form of communication really lowered the bar for asking questions and quickly providing additional context or some institutional knowledge.

  • It's nice to have someone in the trenches with you. In particular during a high-traffic weeks when it's easy to get overwhelmed with notifications.

  • Video chats also help with team building. Outside of a weekly 30 minute meeting, this group primarily communicates on GitHub. This is great for dealing with everyone's busy schedule, but I personally get a lot of value out of video chatting with others here. In particular since we don't all work at the same institution and get to interact through other means, chatting while czarring makes this feel more like a cohesive group.

  • Sometimes going through issues / PRs together can be much more efficient than going through them solo. You can just ask the other person what they think about something instead of pinging them on GitHub with the same question. (Though we still want to summarize offline conversations on GitHub both for future reference and for others who weren't part of the offline conversation)

  • (This is a lower priority point) I enjoy seeing how others go about their work. For example, I didn't know about git grep until I saw @quasiben use it when screen sharing. Now I use git grep all the time. Small productivity things like this are a great fringe benefit of video chats.

jrbourbeau avatar Mar 30 '20 17:03 jrbourbeau

For the sake of having something concrete, I'll propose that we continue monitoring issues and PRs on GitHub as we have been, but now with two people to manage the load. Additionally, we have a daily 30 minute video chat between maintenance czars to check in and go through the current set of backlog notifications.

That's just one possible way of doing things. What do others think?

jrbourbeau avatar Mar 30 '20 18:03 jrbourbeau

I've also enjoyed co-czaring, though it can be more of an up-front time commitment when on-boarding a new czar.

TomAugspurger avatar Mar 30 '20 20:03 TomAugspurger

Yeah, I think that we might want to figure out what works well between two czars of different levels. For example, perhaps the new-czar (baby-czar? czar-ushka?) takes a first crack at things, hopefully this clears out the rote activities (like asking people to provide minimal examples) and then the two sync up afterwards? Ideally some division of labor makes it easier for all involved, rather than a strictly increasing amount of work for the old-czar.

On Mon, Mar 30, 2020 at 1:59 PM Tom Augspurger [email protected] wrote:

I've also enjoyed co-czaring, though it can be more of an up-front time commitment when on-boarding a new czar.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/dask/community/issues/39#issuecomment-606246716, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACKZTFPALNWX67UTVA6XZDRKEB4VANCNFSM4LWWLD4Q .

mrocklin avatar Mar 30 '20 21:03 mrocklin

@gforsyth and I are co-czarring this week. We'll report back on how things go at the meeting next week

jrbourbeau avatar Mar 31 '20 22:03 jrbourbeau