I’ll jump on the logical model.
You are awesome David, thanks. I will probably collect all the concerns in a doc and try to address them from a policy view point. I will be meeting @Justin W. Flory soon and will get his inputs as well on the same. Thankyou
TL;DNR
- Problem: Finding contribution opportunities in the vast Fedora ecosystem can be difficult for newcomers.
- Solution: A chat bot trained on git repositories could identify “easy fix” and “good first issue” labels, consider repository activity, and prioritize contributions to active projects.
- Benefits: Helps newcomers find suitable projects, promotes community growth, and complements existing human-led onboarding efforts.
- Challenges: Prioritizing active projects might disadvantage smaller or less active ones.
Key points to emphasize:
- Focus on contribution opportunities: This is a specific and actionable goal.
- Leverage existing data: Using git repositories and project labels provides a solid foundation.
- Balance prioritization: Consider factors like project activity and label usage to avoid favoring larger projects.
If a chat bot is the right deliverable for this project, I think we need to narrow the data set and scope of the bot to something more limited than general knowledge about the entirety of the Fedora Project. The most challenging theme that I see to this project is that this task is difficult even for a human to do today in Fedora. There are various tools out in the Open Source marketplace for measuring community health, documentation, and other signs of healthy projects, but many of these tools today are not built for communities like Fedora. I sense a chat bot targeting general knowledge about Fedora will face similar challenges us as mere humans.
Instead, a spin on this idea that I do think would be useful would be to train a chat bot on how to find contribution opportunities across the Fedora ecosystem. We all know Fedora is vast and huge, and it is true that navigating the ocean of Fedora can difficult sometimes, even when you have been here a while. A chat bot that could help identify “easy fix” or “good first issues” in various Fedora projects, both engineering and mindshare topic areas, could be very useful.
Consider the existing Fedora Easyfix site, which is outdated and seldom maintained by projects listed on there. However, despite it being outdated, it is still a resource that is linked across the community and gets used as an onboarding resource. We have long talked about revamping the website or even dropping it completely. But maybe this is a place where an AI-powered chat bot could be effective at solving a difficult problem for humans.
The data set for this experiment would be git repositories that are identified as places of contribution in Fedora. Some projects may use labels like “easyfix” and “good first issue”. We could train the bot to group like terms used across different projects. We could also train the chat bot to consider the last activity of the repo and last activity on an issue. How likely is it that a repository will accept the patch if someone submits one? How much activity is happening on the project? Could we give extra weight to projects that both identify good first issues, and also are active and well-maintained?
The risk to this weighting is that only the projects that are most active will be rewarded with prioritization. Smaller projects or teams that are just getting off the ground may face difficulty. One possible mitigation would be to give a heavier weight to a repository that is highly active over a short period of time.
What do you all think? Does this seem more useful? I am not very interested in a chat bot for onboarding because I concur with what others have said previously. Folks in Fedora add a human touch to open source with how we do onboarding. This is unique. While I respect that there is no single path into Fedora, I concur with @ankursinha that it is better to connect with other humans and people early in your contribution journey. And I don’t want a chat bot to compete with this good thing we already do.
I am more excited by a chat bot that helps identify smart and active places to contribute for newcomers. This is a challenge that feels ripe for an AI/ML sort of effort.