2024年12月6日 –, Main Stream
語言: English
Big mentoring programs can help new contributors find your project, but if you've ever participated in something like Hacktoberfest or Google Summer of Code, it can be overwhelming to get so many new contributors at once. Even events like the PyCon sprints or hackathons take a surprising amount of preparation. Let's talk a bit about preparing your documentation, your tests, your tools, and your mentors so you're resilient and ready for a potential flood of new contributors.
I once worked with a women in tech organization that asked me to run a hackathon with about a week of warning, and they were totally taken aback when I said that wasn't enough time -- I'd done hackathons in the past, surely it was a thing I could throw together in time for their conference?
The best mentoring events take a lot of preparation. It's very easy to run an event where people feel like they didn't do much, or they didn't understand things, or things didn't work, or where the experienced folk got stuff done and the beginners got stuck and no one noticed. It takes more preparation to run events where you really manage to onboard people to your project, or at least let them get a real taste of contributing.
I've been running Google Summer of Code for the Python Software Foundation for a decade or so and participated in a lot of hackathons and code sprints. I love these events, but one of the biggest problems is that you often get a whole lot of contributors showing up at once, more than your mentors can handle in an ideal world. Sometimes they're very anxious and pushy, especially in cases where there are prizes or money involved. It's hard.
So let's talk about how to prepare. First, documentation: how much do you need? How do you test it? How can you empower your new contributors to help?
Second, tests and automation. Let's talk about linters, test coverage, and tools like pre-commit that might help people get quick feedback even if there's no mentor available.
Third, let's talk about bugs for new users, how to triage your issues list, and help let people self-direct.
Finally, let's talk about mentoring your mentors: how to use a buddy system, how to check in with the mentors, getting post-flood feedback, and keeping your mentors from burning out. I use buddy system for running whole programs and it helped Python-GSoC run smoothly when I had a kid.
Terri has a PhD in horribleness, assuming we can all agree that web security is kind of horrible. She specializes in saying “no” and explaining things in varied roles as an open source security professional, a parent, and the volunteer coordinator of a summer mentoring program for Python.