8 Consultant Recommendations
We synthesized the above responses and drew upon our experience working in OSS communities to develop concrete yet flexible recommendations for the Astropy community. Addressing the most prominent theme across all of our work–newcomers’ struggle to cross the threshold from user to contributor–was our primary focus in developing the recommendations. We also sought to develop recommendations that would help the community manager to better accommodate community members from non-U.S. and non-European countries, to adapt communication strategies to community needs, and to understand and shape the culture of the project.
8.1 Help newcomers acclimate
As mentioned in multiple sections above, joining an OSS project can be an intimidating and confusing process. Project leadership, staff, and experienced community members can make this process easier to navigate in a number of ways, many of which are low-cost and relatively simple to implement.
- Continue to be welcoming: At the abstract level, a community should be welcoming when a newcomer first encounters project members. If a newcomer joins Slack, for example, a welcoming message from the community manager and acknowledgment from some of the experienced community members can encourage continued engagement and contribution. In a study of newcomer integration to three OSS projects, the authors found that “almost all non returning newcomers can be attributed to receiving no reply or a condescending reply from the community.”
Likewise, tone and approach to answering newcomer questions is essential to encouraging newcomers to remain in the community. While core contributors, maintainers, and other experienced community members are almost always busy and need to be efficient, taking the time to interact with care and intentionality can facilitate a healthier climate and should be encouraged by project leadership. Astropy’s contribution guide does a great job of articulating these values; occasionally referring experienced community members back to this document to refresh their memories and helping them develop the interpersonal skills to enact these values could improve things even further.
- Evaluate project-person fit: Developing ways to quickly evaluate whether a person’s skills and interests are a good fit for the community helps to ensure that most community members are active and engaged participants rather than passive and resigned observers. A community manager can aid in this process by developing rubrics and using tools like My GitHub Resume, but a curated list of issues and project needs suited to different skills (akin to LibreOffice’s hack list) can make the evaluation process less time-intensive for project staff.
- Make it easy to find communication channels: Some respondents in our survey and interviews noted that they didn’t know about all of the various ways they can engage with other community members. As one participant recommended, adding these options to the project’s documentation and to its website would help newcomers find the appropriate places to ask and answer questions, get to know other community members, and learn about upcoming events and opportunities.
- Identify good first contributions: A well-maintained list of good first issues is essential to helping newcomers feel welcome to contribute. Astropy does this well using the label feature on GitHub, but may benefit from advertising these opportunities on a regular basis (e.g., in monthly newsletters, on Slack, or in non-Astropy forums). Likewise, Astropy should ensure that there are multiple good first issues labeled at any given time so that potential contributors can have a better chance of finding an issue suited to their abilities.
8.2 Develop and visualize user-to-contributor pipelines
All OSS projects tend to struggle with getting users across the threshold to being contributors. We encourage Astropy and its community manager to develop and visualize pathways to becoming a contributor so that newcomers and long time users can easily see the steps they need to take to make contributions. This effort begins with identifying the common personas of existing community members. For example:
- Novice user (e.g., students)
- Engaged user (e.g., researchers who use Astropy in their work)
- User-novice contributor (e.g., users who contribute to documentation)
- Developers and Maintainers
- Junior
- Intermediate
- Senior
Building out these archetypes with the skills required to move between them–perhaps by using skill and mastery rubrics–and making these visualizations available to community members alongside learning resources can make the pathway less daunting for those who wish to contribute more to the project.
It is important to develop these pathways in such a way that does not inhibit new, unforeseen talent flowing into the community. Across our research with Astropy and other communities, we’ve seen how the “old guard” can preference skills and approaches that have been valuable in the past (and may remain valuable today) to the exclusion of different abilities that may add value. This issue may become increasingly important as advances in other domains (e.g., AI and machine learning) filter into the astronomy community.
8.3 Make existing resources visible
As mentioned with communication channels, Astropy already has robust infrastructure in place for community members to communicate, learn, and understand project expectations. These resources, however, are not always easy to find. It could be beneficial to consider how these resources can be advertised in commonly-viewed places: in project documentation; on the project website; pinned in popular Slack channels or Discourse threads; and/or in dedicated GitHub repos. We identified several resources that, to date, are not particularly easy to find:
- Communication channel options (e.g., how to get added to Slack)
- Astropy Learn modules
- Code of Conduct reporting mechanisms (more on this in the DEI and CoC report)
- In-person events (formal and informal opportunities to connect)
- Good first issues (see above section)
8.4 Improving culture
Most community members we interacted with throughout our research and consulting were happy with the climate and culture of the project. There are, however, opportunities to improve this further and ensure that community members remain engaged while moving from user to contributor.
- Engage community in synchronous online events / community calls that vary in time zone feasibility
- Regularly share priority channels across other channels (i.e., advertise the conversations happening on Slack via email list, point out the email list via Slack / Facebook, etc.)
- Make priorities for new skills and approaches clear (e.g., send out requests for varied expertise, such as “Do you or someone you know want to help Astropy better implement linter functionality?”)
- Make more direct connections to communities we want to see better represented (e.g., HBCUs, citizen scientists, non-U.S./European users and contributors)
- Develop standard welcoming processes for newcomers, including messages from the community manager, lists of resources, etc.
- Develop and advertise ways to make improvement suggestions to the CoCo and other leadership
Overall, Astropy is in a healthy and exciting position with its community development efforts. The community manager has the combination of technical knowledge and social skills to make a definitive, sustained impact on the health of the community, both in tracking and evaluating engagement and in fostering productive communication among Astropy members. With continued support for regular introspection (e.g., surveys, interviews, and engagement tracking), we believe Astropy will remain a model community for the broader OSS community while moving toward its technical goals.