hotosm / fmtm

Field Mapping Tasking Manager - coordinated field mapping.
https://fmtm.hotosm.org/
GNU Affero General Public License v3.0
43 stars 44 forks source link

Best practice to reward open source contributors #135

Closed petya-kangalova closed 1 year ago

petya-kangalova commented 1 year ago
  1. Identify best practices in encouraging and rewarding open source contributors 1.1. Research incentives mechanism for new contributors- contributor rewards, badges, etc. 1.2. Explore implementation of the AllContributors Bot https://github.com/hotosm/fmtm/issues/83 or research other alternatives 1.3. Join monthly HOT Open Tech and Innovation Sessions and encourage contributors. 1.4. Share your experience via a blog.
CartoonistDev commented 1 year ago

Hey Petya, my name is Chizzy, I am an Outreachy applicant. I am excited to be here and to contribute to this issue. Mind if I as how I can start?

AugustHottie commented 1 year ago

Can i do 1.1?

petya-kangalova commented 1 year ago

@AugustHottie yes, please go ahead working on 1.1 :)

AugustHottie commented 1 year ago

Great! I'll create a google docs page and post it here, if that's okay.

petya-kangalova commented 1 year ago

Welcome @CartoonistDev ! The issues here are linked to identifying incentives for contributors or maybe research alternatives to AllContributors Bot? Use of badges or other areas?

AugustHottie commented 1 year ago

@petya-kangalova I've documented my suggestions regarding rewarding best practices for open source contributors. You can view it here: https://docs.google.com/document/d/1SinvCNotJTnoAuM89uIj4HFCGanVYkxx87TCIDGdY6Q/edit#. Please feel free to comment or reach out.

BhaswatiRoy commented 1 year ago

Hello @petya-kangalova In 1.2 do we need to draft a summary of how the AllContributors Bot is working and what features are implemented?

Balofire commented 1 year ago

Hello, @petya-kangalova I have a few interesting suggestions for 1.1, should I just write them out in a comment here or is there a format I have to follow

Balofire commented 1 year ago

Hello, @petya-kangalova I have a few interesting suggestions for 1.1, should I just write them out in a comment here or is there a format I have to follow

should I open a new issue and write my suggestions there?

Balofire commented 1 year ago

@petya-kangalova here's a google dock I made, that has my suggestions for 1.1 https://docs.google.com/document/d/1S7xPxEm1ywacOKR0CXU6Qi5S29ctrQV51gqECgP4CZ0/edit?usp=sharing

Roseford commented 1 year ago

Hi @petya-kangalova, I'm Uju an outreachy participant and I would love to begin working on 1.2 . Can I get a go ahead so i can jump on it?

JoyNyuguto commented 1 year ago

Hello @petya-kangalova, I am Joy Nyuguto, and here are my suggestions for task 1.1 There are several incentive mechanisms that can be used to encourage new contributors to participate in a research project. Some of the most common ones include:

Contributor Rewards: This is a common incentive mechanism that involves providing financial or other tangible rewards to contributors who contribute to the research project. Rewards can be in the form of cash, gift cards, or other types of incentives that can motivate contributors to participate.

Badges and Recognition: Providing badges and recognition to contributors who make significant contributions to the project can also be a great way to incentivize new contributors. Badges and recognition can be displayed on the contributor's profile page or social media, and can provide a sense of achievement and recognition for their work.

Gamification: Gamification is the use of game design principles to incentivize and motivate contributors. It can involve using leaderboards, achievements, and other game mechanics to encourage participation and engagement.

Community Engagement: Engaging contributors in the research community can also be an effective way to incentivize new contributors. This can involve providing opportunities for contributors to network, collaborate, and share their work with others in the research community.

Training and Development: Providing training and development opportunities to new contributors can also be a powerful incentive mechanism. This can involve providing access to training resources, mentorship, or other types of professional development opportunities that can help contributors build their skills and advance in their careers.

Overall, the key to incentivizing new contributors is to provide a variety of different mechanisms that can appeal to different types of contributors. By offering a range of rewards, recognition, and development opportunities, research projects can attract and retain a diverse and talented group of contributors.

JoyNyuguto commented 1 year ago

@petya-kangalova here is my 1.2 suggestion. 1.2. Explore implementation of the AllContributors Bot https://github.com/hotosm/fmtm/issues/83 or research other alternatives The AllContributors Bot is a useful tool for managing contributors to open-source projects. It automates the process of adding contributors to a project's README file and helps to recognize the contributions made by individuals. Here's how you can explore the implementation of the AllContributors Bot:

First, you'll need to have a GitHub account and access to a repository where you want to add the bot.

Go to the AllContributors Bot GitHub repository (https://github.com/all-contributors/all-contributors-bot) and read the README file to understand how the bot works.

Next, you can follow the instructions in the "Getting Started" section to add the bot to your repository. This involves granting the bot access to your repository and adding a configuration file.

Once you have added the bot, it will automatically generate a table of contributors in your project's README file, based on the information in your repository. You can customize the table to display different types of contributions, such as code, documentation, and translations.

You can also use the bot to manually add contributors to the table. To do this, you can use the following command in a pull request comment: `` @all-contributors please add for For example, if you want to add a contributor named "Alice" for their code contributions, you can use the following comment:

`` @all-contributors please add alice for code The bot will then automatically update the table in your README file to include the new contributor. Alternatively, if you are looking for other alternatives, you can consider using other GitHub apps like the "contributors" app by Github, which automatically generates a contributors list for your repository. Another option is to use a static site generator like Jekyll, Hugo, or Gatsby that has built-in support for generating contributors' lists. Lastly, you can write your own script or program to generate a contributors list based on the information in your repository.

allcontributors[bot] commented 1 year ago

@JoyNyuguto

I've put up a pull request to add @tool! :tada:

I couldn't determine any contributions to add, did you specify any contributions? Please make sure to use valid contribution names.

Could not find the user "Alice" on github.

CartoonistDev commented 1 year ago

Hi @petya-kangalova below is a link of my documented suggestions for 1.1

https://docs.google.com/document/d/1IRem-To4bz6rLiL0RCI30fK9DM97QlvKWGWDpaYPFnA/edit?usp=sharing

Currently working on 1.2

Linda-Njau commented 1 year ago

Hi @petya-kangalova I've attached the link to my google docs with suggestions for 1.1 and 1.2. I'm looking forward to your comments.

https://docs.google.com/document/d/19FH8kQZ5re0RJ3OqjVI5g64QZffkNO1M9z-0G8shUsI/edit?usp=sharing

Roseford commented 1 year ago

Hi @spwoodcock @petya-kangalova This is my bit on 1.2, I hope it solves some of the problems @spwoodcock is having :)

The link attached is a compilation of the research I did on implementing the AllContributors Bot and alternatives to it. It begins with the description of the AllContributors Bot and how to implement it and only gets better. It describes an automation process that makes things easier after just one configuration. Then, there is a detailed research on an alternative to the AllContributors Bot which, interestingly, can be used on its own or combined with the AllContributors Bot for more efficient outcome. There is also a little bit on Git Action which is being used for the whole automation process. That's it!! I hope you have a great read and I'll be happy to get some feedback.

https://docs.google.com/document/d/1HFwK1cYbH3W1BhYHUa41QvQn7GyVrMVOqR9Rt56MZfw/edit?usp=drivesdk

spwoodcock commented 1 year ago

Hi @Roseford thanks for the detailed info. I finalised setting up the all-contributions bot today. It's up to Petya if we decide to use something else.

Also, I'm sure this won't be that visible, but for anyone reading this: please try to only tag me for code related issues or PRs. I am happy to review documentation related PRs, but don't have time to join the discussions on issues (I'm contributing for free, alongside my usual day job). Thanks!

jenny-Musah commented 1 year ago

Hi, @petya-kangalova, I don't know if this project is still open for contributions, if it is I would like to make a contribution to 1.3

jenny-Musah commented 1 year ago

@petya-kangalova , for 1.4, says i should share my experience as a contributor Or to Identify best practices in encouraging and rewarding open source contributors in my experience as a contributor?

jenny-Musah commented 1 year ago

@petya-kangalova, for 1.4, https://medium.com/@jennymusah99/best-practices-to-reward-open-source-contributors-a4475365af4f best-practices-to-reward-open-source-contributors-a4475365af4f this is a link to a blog about best practices in encouraging and rewarding open source contributors in my experience and this is the link https://medium.com/@jennymusah99/my-experience-in-the-open-source-community-c32e091bc006 to a blog on my experience as an open source contributor.

fractaldatalearning commented 1 year ago

Hello @petya-kangalova I’ve done a bit of research on best practices in contributor engagement and summarized it in this google doc: https://docs.google.com/document/d/19kkMKbV_r5ewj9t6kT5Jo0Hw49M4f7PpUTNB0XnF2HI/edit?usp=sharing