Online - preparation
!!! Example "TL;DR" 1. Join the Discord server 2. Prepare a quick pitch for your project (not needed for Git/general mentors) 3. Prepare your issues for the sprint 4. Be prepared for an intense yet rewarding 4 hours - bring coffee/tea, and your best mentor/cheerleader/support attitude
Introduce yourself and your project¶
Action needed
Please come prepared to give a 1-2 mins intro to the project you will be mentoring on. You do not need slides but we want to make sure we introduce you to the folks.
Selecting issues¶
Make sure your sprint is successful with careful planning ahead of time. As part of preparations, project leads/mentors will need to triage and prepare issue queues and identify what they want to work on in the sprint.
Info
We have already pinned your repo's issues and beginner-friendly issues in Discord for discoverability.
If you want to go the extra mile, choose one or more of the following strategies:
- Tagging issues with your
mentored-sprints
orSciPy-2021
in your project's repo makes them easier to find. - Tagging issues for newcomers - they should be actionable, self-contained items folks can work on.
- Reserving easier, newcomer-appropriate issues for sprint newcomers ahead of time.
Tip
Make sure to find diverse issues: documentation, code, design, checking tutorials, working on social media packs or policies.
As the day progresses, keep track of the issue numbers you’re working on. Track if they are assigned, who is working on them, and if they are done. Your issue queue might manage this, but you could also use the hackmd linked above.
General and Git mentors¶
Most of the help you will be providing on the day will focus on Git questions (merge conflicts, Git flow, rebasing) as well as debugging setup environments. For this you need to monitor the helpdesk
channels and if needed use the Duckly channels to jump into 1:1 debugging sessions.
We have both project and open rooms in Duckly. To get the link and invite folks we recommend using the Discord commands:
1 2 3 4 5 6 7 8 9 |
|
This will display the Duckly room link and should work in all Discord channels:
!!tip
If you find that the helpdesk
and ask-the-community
tables are too quiet feel free to jump into a project table and support the mentors and attendees there.
Three ways to make it easier for newcomers to contribute¶
Helping new contributors get set up makes a huge impact.
-
Researchers have found that the most significant barrier to open source code contribution is getting a local environment set up. Newcomers who spend a long time getting set up find it frustrating and demotivating. Gitpod is a great tool to help streamline the process. ( it can also make an excellent contribution for intermediate contributors)
-
Show them where they can help - When preparing for your sprint, project leads should collect issues that need addressing for each project. To make it easier for people to find places they can share their expertise and enthusiasm, one recommendation is to group the issues by type of work, or expertise needed. Mozilla’s advice for newcomers on participation basics recommends that new people should "find a project they are interested in." We take care of this by inviting projects and encouraging attendees to check projects in advance.
-
Learning-by-doing - The idea is that you reserve appropriate issues in the time leading up to the event. These types of issues will give contributors experience with whatever workflow you’re using while taking care of tasks that are relatively quick to resolve.
Tip
Helping newcomers commit changes to your project gives them a successful experience in your community and increases the likelihood they will come back for more. Furthermore, ownership and effort increase the perceived value of concepts, things, and projects to us. The feeling of knowing code you’ve checked, written, or influenced is being downloaded (tens or hundreds of) thousands of times a month can be a huge motivator.
Everyone has something to contribute¶
Be insistent that contribution sprints are for EVERYONE and make EVERYONE welcome, coder or not, independent of their background, skills, and experience. EVERYONE can contribute. Always communicate in advance that there are tasks for non-programmers (documentation, UX, manual testing, etc.). Everyone can help each other - when possible, encourage folks to work in teams of 2 or 3!
Motivate, support, say thank you!¶
Make sure to acknowledge and thank contributions - no matter how big, small or unexpected!
Tip
Use the !bang {username}
command in the #celebrate-wins
this also helps us to keep track of the progress and to work on an impact report.
Make sure there is noise on social media. People are proud to be part of the action, both the team and the listeners out in the community, but there’s often no time or thought of it during the event itself; a post-sprint shoutout is always great. When doing so, use our official hashtag: #MentoredSprints
When to use which tool and how¶
Virtual sprints are so different from in-person events. We have tried and tested many tools and approaches, so you do not have to (well, some of you have been part of the journey and we are so grateful for your help and feedback).
- Discord: This is our headquarter. Do you want to persist information, links or conversations? Discord is our go-to. Each project has a voice and a text channel. Use them. The
helpdesk
channels are reserved for our general and git mentors. If folks are struggling with Discord, Git or else send them tohelpdesk
, and someone will help. - Discord: use it to share gists or make announcements
- Duckly: the pair programming experience we have been missing; in the past, we have seen folks trying loads of stuff to share code and errors. This year we are using Duckly. We have tried to make it as easy as possible for you to move between apps. When you need to jump into a debugging session or walk folks through code, use the command
!duckly {project}
from Discord and follow the link to your room. - You can install the tools/plugins if you like and want to share code with folks, but we have asked them to do this so they can share code with you
Info
The Mentored Sprints team takes care of inviting folks to the server in advance.