How to Participate in Hacktoberfest 2022

How to Participate in Hacktoberfest 2022

What is Hacktoberfest

Hacktoberfest is an annual event hosted by DigitalOcean that aims to encourage developers to contribute to open-source projects and give back to the community.

Through this event, many developers gain the confidence to be part of the open-source community, and open-source projects and organizations benefit by getting the help to grow their projects.

In this article, I'll help you understand what Hacktoberfest is, why you should participate as a maintainer of an open-source software and as a participant who wants to contribute, how you should choose a project to contribute to if you're a participant, and how to prepare your repository to be part of Hacktoberfest and receive contributions.

Every October, over 100k participants from all over the world participate in Hacktoberfest by going on GitHub, choosing a repository, and contributing to it.

Contributions are done by submitting a pull request (PR) to any repository that is participating in Hacktoberfest. Once your pull request is deemed accepted (we'll go over how that works in the next sections), it will count into your participation in Hacktoberfest.

To successfully participate in Hacktoberfest, you will need to submit at least 4 accepted pull requests to any repositories that are participating in Hacktoberfest.

Once Hacktoberfest is over, which is at the end of October, the first 40,000 participants to have submitted at least 4 accepted pull requests will receive a t-shirt or a tree. And, starting this year, maintainers will be able to receive swag packs as well!

Why Participate in Hacktoberfest

Although receiving a free t-shirt is always cool, there are more important reasons to participate in Hacktoberfest. Whether you are a maintainer or a participant, you will surely learn and benefit a lot from Hacktoberfest.

As a Maintainer

As a repository maintainer, Hacktoberfest allows you to grow your community. By participating in Hacktoberfest, your repository will receive more traffic from developers who are looking to participate.

So, even when Hacktoberfest ends, if these developers liked the experience of contributing to your repository, they will come back to help with more issues.

Managing an open-source project can be hard, especially since you might lack the time to improve and expand on the project as a maintainer. So, Hacktoberfest is a great time to receive help on issues that have been pending for a while or enhancements that can be done to improve your project.

As a Participant

Whether you're a beginner or not, there's always room for learning and expanding your knowledge. One of the best ways to do that is by contributing to open-source projects.

Open-source projects usually provide tools, libraries, or other types of resourceful services for the community for free. Contributing to them and helping them to keep going is helpful for the community, and ultimately for yourself.

As each project is different, each might rely on different programming languages, frameworks, tools, or other types of resources they use or provide. By contributing to them, you'll take the time to check how it works, what they use, and so on. You also take the time to solve a problem or an issue in the project or bring new enhancements to the table.

So, when you contribute you're also taking on new challenges to solve, which is a great way to learn and practice your skills.

If you're a beginner, by participating in Hacktoberfest, you can finally get over any fear you might have that is stopping you from contributing to open source projects. It was through Hacktoberfest that I finally started my journey in contributing to open source projects.

How to Participate in Hacktoberfest As a Maintainer

As a maintainer, you need to do the following to make sure your repository is participating in Hacktoberfest:

  1. Add the hacktoberfest label to your repository.
  2. Add the Hacktoberfest label to issues so that participants can know which issues they can work .This is also helpful if you want to attract participants to simpler issues that they can start with.

Hacktoberfest will not only reward participants who have submitted at least 4 pull requests, but also maintainers!

You can register for Hacktoberfest as a maintainer. Then, you'll need to complete at least 4 or more actions related to pull requests in participating repositories. These actions can be:

  1. Merging the pull request.
  2. Approving a pull request review.
  3. Adding the hacktober-fest label to a pull request.
  4. Adding an invalid or spam labels to a pull request.

How to Accept Participants

Participants will participate by sending pull requests to fix issues in your repositories. A participant's pull request is considered accepted for Hacktoberfest if it's merged, if it has passed approval by reviewers or if it has the label hacktoberfest-accepted . So, if you accept a participant's pull request, but you're unable to merge it before October ends, or you appreciate the work they put in but for some reason, you can't merge the request, you can add the label to the pull request, and it will count into their participation in Hacktoberfest

How to Reject Participants or Stop Spam

Unfortunately, so many participants use this event just to get the swag kit and don't actually care about helping open-source projects. So, you are bound to receive some useless pull requests that do not fix any issue, and some might even cause problems.

These pull requests can be time-wasting for you, and it would definitely suck for them to count to their participation in Hacktoberfest. So, it's encouraged to use the labels spam or invalid on any pull request that should not be accepted and should be considered spam. Recommendations

How to Participate in Hacktoberfest as a Participant

Participating in Hacktoberfest is easy. Here are the steps you should take to start participating:

  1. Find repositories that have "opted-in" to Hacktoberfest. This means repositories that have the "hacktoberfest" label .
  2. In these repositories, look through their Issues tab. You should try to specifically find issues with the hacktoberfest label, as maintainers will ensure to use that label with any issue they think would be best for Hacktoberfest participants. However, you can still choose any issue you think is fitting and you can contribute to.
  3. Before working on any issue, make sure to comment on it and that you get assigned to the issue. This saves time for you and the maintainer and avoids any misunderstandings that might happen.
  4. Once you are assigned the issue, make sure to read the contributing guidelines which are found in any repository in CONTRIBUTING.md. These guidelines usually include details about the code base, how to contribute to different parts of the project, what you should or shouldn't do, and more.
  5. If after the contributing guidelines you still are confused about certain details, you shouldn't hesitate to ask the repository maintainers questions. You can do that either by commenting on the issue or using the Discussion tab that should be part of the repository.
  6. Once all is clear, fork the repository, create a new branch, perform the task you've been assigned, and when you're finally done submit a pull request with all the details required based on the repository you are contributing to.
  7. If the time is running low on your pull request, meaning that your pull request was submitted at the end of October and the maintainers are not able to merge it any time soon, request from the maintainers that they add the hacktoberfest-accepted label to your pull request. That way, it will still be counted into your participation.

These are the steps required of you to participate in Hacktoberfest. Even if you're a beginner, if you try you'll see it's not so hard!

Do's

As a participant, here are a list of things you are encouraged to do:

  1. Pick projects that either will actually benefit from your contributions or you will learn something from the contribution. Unfortunately, with the start of Hacktoberfest, a lot of repositories are created just to get attention. Contributing to them is easy, sure, but it doesn't actually benefit the open-source community or, ultimatly, you. Choose a project wisely.
  2. Be respectful and patient when contributing to any repository. Although this should apply all year round and not just during Hacktoberfest, it's essential to remember in Hacktoberfest. Most repositories get 10x more traffic, contributions, issues and pull requests in Hacktoberfest. So, the maintainers are almost always in over their heads with the amount of reviews they have to provide and keep up with. So, respect the repository's rules and maintainers and be patient if it takes time for your pull requests to be reviewed or for you to get assigned an issue.
  3. Keep contributing even after Hacktoberfest. Hacktoberfest encourages you to remember to contribute to open source projects, but it shouldn't be just this month. Take the time every now and then to contribute to these projects and help the community.

Don't's

As a participant, here's a list of things you shouldn't do:

  1. Don't send in useless pull requests. For example, I had a lot of participants contributing by sending pull requests that just adds a line in a file, or adds a comment for the sake of adding something. This is a waste of time, counterproductive and is the entire opposite of what Hacktoberfest is about.
  2. Don't overstep your boundaries. If an issue is not assigned to you, do not send in a pull request to solve it anyway. Most repositories and projects have a certain workflow to manage issues and pull requests, and this can cause a mess. Check before working on an issue if someone is working on it.

Conclusion

There are many open-source projects that are looking for your support and contributions, and what a better time to do that other than Hacktoberfest! Make sure to get your list of projects ready to contribute to them and give back to the community.