# How to make open source projects contributor friendly, Part 2
Andrew Pham (opens new window), Product and Design
Published on July 27, 2021 | 5 min read
# Ways to engage with contributors
Once you have some contributors interested in your project, there are multiple ways you can stay connected and keep each other up to date. For open source projects, it's helpful to have defined communication protocols in place and make sure new contributors are on-boarded into these ways of communication.
At Hikaya, we invite all our contributors, both current and former, to a dedicated team communication tool so that everyone can stay connected. Since many contributors are working from different parts of the world, we have taken a “remote by default” stance, which means all work tasks, decisions, and communication should happen in designated places such as a messaging channel or tasks should be well documented in a way that contributors can seamlessly hand off or pick up work from each other.
# Daily communication
First, it's helpful to have a space for daily communication like a messaging platform like MS Teams or Slack set up. Invite your contributors to your workspace so everyone has a place where they can ask questions as they get started. A messaging platform often can take the place of an “office” for remote teams so make team channels to promote discussions on specific topics while including some channels to promote your team culture.
# Project boards
Next, it’s helpful to have a place to organize issues as task cards for your project. Issues can be created to break down specific tasks that need to be completed and then added to a project board so that contributors can see what issue cards in the backlog are ready to be worked on. A common method to manage the workflow of issues in a project board is to use it as a Kanban board (opens new window).
At Hikaya, we use GitHub Projects (opens new window) to manage and track issues across our projects. Since our open source projects are managed in code repositories in GitHub, it makes it easy to link any pull request with an issue in the project board to see the work of a contributor.
# Get the word out
On your open source project repository ensure you have a way for potential contributors to get in touch if they are interested in contributing to the project. It can be helpful to post on job boards that you are looking for contributors. In these advertisements, it can be helpful to include links to your repository as well as a list of open issues so if contributors are curious they can easily investigate further.
Once you have these advertisements published, consider creating a simple application process so interested contributors can express interest or apply to your project. As contributors apply, you can use this opportunity to ask questions about their profile and why they are interested in contributing to an open source project. The lesson we have learned at Hikaya is that it is most valuable to find contributors who want to continue making contributions over time so that they can progress and build upon their early contributions. By allowing your contributors to be part of team discussions and information sharing sessions it can help them better understand the project’s goals and the ability to contribute at a deeper level to your project.
# Treat contributors like members of your team
When thinking about the role you’d like a contributor to play in your project, think of them in the same way as you would be hiring them. This ensures you treat your contributions with the same professionalism and support as you would any new team member. Open source contributors are people who often have a day job and are primarily driven by eagerness to work on interesting projects where they can develop new skills or are simply looking for a new challenge to solve. If you can tap into what a contributor is passionate about, it can help to align on common goals.
If you’d like to move candidates on to the next stage, you can invite them to an initial call. These calls could be a mix of interview questions that try to better understand their motivations for contributing as well as a way to introduce them to the project. Some logistical topics can be helpful such as confirming their schedule of availability and how long they would like to contribute to keep expectations aligned. Spend time discussing the product vision while also being practical and ensuring they have everything in order to get set up.
Here is a summary of topics that we use at Hikaya when onboarding a new contributor:
- Schedule an initial call to introduce the project and learn more about the contributor. During the call, gain a better understanding of why they want to contribute and how they think they can add value. The relationship is sustainable when contributors are not only excited about the technology stack but also passionate about the overall project vision.
- Discuss logistics and set expectations to ensure contributors and project owners respect each other's time and contribution to the project.
- Invite to communication channels used by the project and send out calendar invites for any recurring contributor calls. Help to resolve any setup issues they are facing.
This is post is part of the blog series How to make open source project contributor friendly. In case you missed it, here is Part 1: Initial setup (opens new window).
# Further Reading
# About Hikaya
At Hikaya (opens new window), we are building a number of open source projects that help nonprofits better manage their data. By building open source solutions on common data standards, we help nonprofits worldwide improve their delivery of goods and services to those most in need while making reporting to funders more transparent. We are a team of data scientists, designers, humanitarians, and software engineers who have lived and worked in some of the most challenging parts of the world and are always welcoming new open source contributors to our team. If you are interested in contributing or would like to learn more, check out our projects at https://github.com/hikaya-io (opens new window).