I think this is a good thing for Rust to consider when trying to become more friendly to new contributors. I remember finding a first issue was daunting when I was first starting out (luckily the impl period was ongoing so there were people around I could ask).
I’ve seen other projects have bots (similar to Rust’s highfive bot) that can be used to assign people to issues and will unassign them if a PR hasn’t been submitted or the assignee hasn’t responded in two weeks (I believe the Zulip project has something like this).
There’s a couple advantages to this I think:
- It removes the need to add people to the rust-lang org so that they can assign themselves (this is still advantageous for active members of working groups to be notified as a group).
- It helps when a potential new contributor finds an issue that they might be interested in but it has been assigned for weeks with seemingly no progress. I found, being new, that I was unsure what the protocol was here - can I ping the person to see if they are working on it? What if they don’t reply? Can I just start working on it?
- A new tag wouldn’t be required and then maintained because the bot handles that and you can filter for unassigned issues.
- Such a bot could make suggestions based on the tags the issue has (
A-NLL, etc.) as to who might be a good person to ping for pointers.
Another potentially interesting solution would be a dedicated channel somewhere (Zulip or Discord preferably - depending where people are) for new contributors, I think there are some advantages to this:
- This channel wouldn’t have any ongoing discussions between regular contributors that might seem daunting or that a new contributor might not want to “interrupt”.
- This channel could be a good place for a new contributor to ask if there are any good issues to start with and also gives them someone to act as a point of contact to ask questions about the issue. One of the major benefits of the impl period and working groups is that there’s a channel dedicated to it where you can throw questions - it’s a lot less clear who is a relevant person to ping if you’re stuck when you just find an issue on GitHub.