# Getting contributors Your project is likely to be better if what you create is used by others and they feed back their ideas for additional features or improvements. ## Personas and pathways A persona is a description of a user of your project or tool. It should describe an imaginary person based on observations and knowledge of real life, and existing or potential users which provide enough detail for someone to imagine the persona's needs and reactions to the project. Once you have created personas for your main users, you can imagine how they will interact with your project following these engagement phases: 1. Discovery: How they first hear about the project or group. 2. First Contact: How they first engage with the project or group, their initial interaction. 3. Participation: How they first participate or contribute. 4. Sustained Participation: How their contribution or involvement can continue. 5. Networked Participation: How they may network within the community. 6. Leadership: How they may take on some additional responsibility on the project, or begin to lead. For an example persona and its pathway through an open project as well as further resources to help you create your own personas, see the [Mozilla Open leadership training](https://mozilla.github.io/open-leadership-training-series/articles/building-communities-of-contributors/bring-on-contributors-using-personas-and-pathways/). ## Code of Conduct If your project is open for individuals to contribute and you grow a community, this community will need to be welcoming and inclusive to thrive. One way to establish guidelines for participating in your project is to create a Code of Conduct or Participating Guidelines. These documents can be used for virtual interactions but also for any events you might host related to your project. Codes of Conducts serve two main purposes: * Establishing the kind of behaviour encouraged in the community you would like to create as well as clearly outlining unacceptable behaviour. * Outlining the process by which problems or violations of the guidelines will be addressed and who will be in charge of enforcing the Code of Conduct. Many openly developed projects have a Code of Conduct in place that often is openly licensed and can be re-used and adapted for your own project. The [Turing Way Code of Conduct](https://github.com/alan-turing-institute/the-turing-way/blob/master/CODE_OF_CONDUCT.md) is one example of a Code of Conduct built on various existing ones and can be adapted further. You can also consult the Mozilla Open Leadership Series [section on codes of conduct](https://mozilla.github.io/open-leadership-training-series/articles/building-communities-of-contributors/write-a-code-of-conduct/) for further guidelines and examples to get started on a code of conduct for your project. ## Contributor guidelines In addition to setting out some ground rules for the behaviour expected when collaborating on your project, you might want to provide some hands-on steps that potential collaborators should follow to add their contributions. Those instructions are laid out in a CONTRIBUTING file (this is an idea borrowed from software engineering where capitalised filenames are the norm for the most important files of a project). Your audiences for the contributing guidelines are your potential contributors who need to understand what is expected from them, project consumers who need to know how they can remix and re-use your work, and yourself who creates and maintains the file as a key part to outline interactions with your community. Similar to other key documents, is it recommended that you look at examples of contributing guidelines of similar projects and re-use those. Here are a few suggestions of what your contributing guidelines could cover: * Your project vision. * A welcome to potential contributors. * Pointers to the Code of Conduct. * A list of other important resources such as the README file or your project's roadmap. * Communication channels where contributors can reach you. * How to submit changes. * Good first bugs or issues to start working on. * How to report a bug. * Your recognition model and how contributions will get acknowledged. * Where to go for help. Have a look at the [Turing Way contributing guidelines](https://github.com/alan-turing-institute/the-turing-way/blob/master/CONTRIBUTING.md) to understand how you can contribute to this book and re-use some ideas for your own project.