...
The main goal of a contribute-a-thon is to help bring additional feature contributors to a project or lab. It is similar to both a hack-a-thon and a bug-a-thon.
- A contribute-a-thon is like a hack-a-thon; however, instead of focusing on the use of a project or lab, it is focused on contributing to a specific project or a lab.
- A contribute-a-thon is like a bug-a-thon; however, instead of focusing on bug fixes, it is focused on feature contributions.
It is important to recognize that contributions can come in many forms. Contributions should not just be limited to code contributions. Think bigger. How can the project's or lab's documentation be improved? What sort of examples would be useful for people looking to contribute to the project or lab? What type of blog posts would help people who were interested in contributing to the project or lab?
Phases
At a high-level, a Contribute-a-thon would have a before, during and after phase. We'll first define the specifics of what are the possible actionable's to be done in each of the different phases. And structure it with who/which team will have to work on those actions.
...
- Create a contribution pathway we want to use in the campaign – what are the steps we want people to take? For example, read this blog post > read the "code of conduct" > clone the repository > pick issue tagged as "good first issue" > raise a pull request > until the Pull request is merged
- Work with the Hyperledger Marketing and PR team and the relevant teams to create a timeline for the campaign and define the channels we will use (Twitter, website, LinkedIn, Wiki, meetups, etc.)
- Create an Awarding Rules and Criterion section/page and put together on how will the winners be decided and add that in the 2nd phase of campaign
- Organize Enablement workshops to make community aware of pre-requisites of using the product and improve the documentation and scripts from the feedbacks.
- Reach out to partners (all DLT platform partners) to spread awareness on project and contribute-a-thonPlan a
Plan For the entire duration of the event
- Create a good amount of "Good First Issues" on Github to create a healthy repository of independent issues to work upon during the contribute-a-thon phase.
- Review the information currently available on "read the docs "about how someone can contribute to project and update or add more details and create new assets as needed.
- Create a task force of maintainers and key contributors to monitor the number of issues, review the pull requests as they come and answer queries on the rocketchat.
- Discuss on how to handle certain "What if" scenarios. 1) Too many pull requests, how to merge the code, 2) many people pick the same issue to work on, should should that be controlled at the onset or the best code wins? , 3)
- Discuss on campaign shout outs during the event (tweets, publishing publishing a daily leader board until the event, etc.)
- Determine how you will handle additions by contributors for items that were not in the original list of "known" issues.
Plan For post event actions
...
- Reward the final winners after contribute-a-thon sprint end
- Create a report on the jump/leap in the metrics post contribute-a-thon
- Write a blogpost about the entire event
- Write a report on what went well, what could have been better, or improved
- The campaign is focused on getting new contributors started on their journey with the project, but we want people to stay active and get more deeply involved after the campaign ends. Carve ideas on how can we make it possible.