What is Hacktoberfest?
Hacktoberfest is an online event running throughout the month of October that encourages developers to make contributions to open source projects on GitHub.
GitHub is an online hosting platform for git repositories. An open source project is simply a public repository that the creator accepts contribution from the public.
Related: See our post introducing Git and GitHub.
Once you’ve registered with the event the whole idea is to make at least 4 pull requests that are accepted by the repository maintainer. Once you’ve completed the challenge you might be eligible to receive a prize.
Registering to take part in Hacktoberfest is completely free and open to anyone. There are a number of rules to follow that are outlined in the official Hacktoberfest page but here are the key points:
- Your pull requests should be submitted between October 1 – 31st.
- For a pull request to count it must be to a public repository on GitHub that has the #Hacktoberfest tag or if your pull request is labeled with #Hacktoberfest-accepted.
- Your contribution should help the repository in some way and don’t make spammy contributions. For example, a pull request to fix typos in documentation is not encouraged (i.e. Quality > Quantity).
As a general rule don’t go after spammy contributions and make sure to follow the guidelines listed by the repository maintainer.
Why take part in Hacktoberfest?
If you’re a developer I think the better question is why not!
It’s a great opportunity to get involved in the open source community. You’ll get more experience dealing with repository maintainers and knowing how to perform pull requests the right way.
If you’re new to coding, getting involved in an event like Hacktoberfest will accelerate how soon you become familiar with git and Github. A large part of Hacktoberfest is knowing how to interact with Github repositories and dealing with git commands such as forking, pull requests, branches, merging and so on.
While the chance of winning prizes acts as an incentive for people to take part, I believe more important than this is the knowledge you’ll gain from the experience.
By being more actively involved in the open source community you’ll discover the benefits and learn to collaborate with other developers.
Taking part will also allow you to work on your programming skills just by actively coding more. Not to mention the challenge is simply fun!
If you maintain public repositories it’s a chance to promote your projects by tagging them as #Hacktoberfest. Just by doing that you’ll very likely have many people willing to make contributions to your repository.
In summary you NEED to take part in Hacktoberfest because…
- It’s a great incentive to explore the open source community.
- You might come across some open source projects that you’re passionate about and eventually become an active contributor.
- It’s a chance to grow your development skills as participating will push you to be more active in coding.
- You will brush up on your knowledge of git and Github.
- If you’re a project maintainer, it’s a great opportunity to raise awareness for your project.
- By successfully completing the challenge you can use that as bragging rights if it’s your thing 😎
Related: Here are 10 incredible projects showing the power of open source
Advice for those new to Hacktoberfest based on my experience
I found out about Hacktoberfest about mid way through October 2020. Although I wish I knew about it before it began I’m glad I discovered it before the month ended!
Immediately I registered and began looking for ways to contribute.
When searching for valid repo I advise making use of the search options available on GitHub. For example, you can perform a search for “Hacktoberfest” to find repositories that have opted in.
You can refine the search results using various filters also.
Once you have found a repo that you’re interested in, the real work starts!
Each participating repo will likely have a Readme.md and Contribution.md containing guidelines you should follow to make a contribution.
Also browse through the ‘Issues’ section of the repo to see if there are open tasks you can work on. Some maintainers may ask that an issue is raised that you’re assigned to first before you can submit a pull request, just make sure you follow the rules.
Make your changes and submit that pull request! Once that’s done keep an eye out for comments on your pull request in case any changes need to be made before the pull request is accepted.
If it all goes well your change will be accepted. Congrats!
What I’ve learned from taking part in Hacktoberfest
Open source is fun and not intimidating
I was always one to shy away from suggesting changes or taking on a task on public repositories. My experience with Hacktoberfest has shown me there is nothing to be intimidated by. In general, open source repositories are very welcoming and cater for all levels of development experience.
It has taught me not to be afraid of getting involved with open source and from this learning I will be putting in a more active effort to make open source contributions.
GitHub is an important platform for developers
I learned more about GitHub and its features just by participating.
I interacted with repositories that have GitHub actions which is a way to automate workflows based on Github events. As an example, with Github actions you can add an automatic check on code formatting submitted through a pull request to make sure all code submitted has consistent formatting. This is just one of the many workflows you can use to make things easier through automation.
I’ve also realised that GitHub in general is a great platform for hosting your projects. Plenty of features are available to aid in managing open source repositories.
Every developer should have a GitHub account. If you don’t use GitHub already to host your projects, make sure to check it out.
Look out for developer events
As I only got involved in Hacktoberfest mid way through October I didn’t get to plan ahead. Now I know of the existence of Hacktoberfest, what I would do differently next time is to set aside time leading up to the event to plan out my participation.
As I also host public repos as part of the inspirezone GitHub I will plan ahead and get repos I want people to contribute to ready for the event in advance. Again, Hacktoberfest is a great way to promote your open source projects so take full advantage of it.
Also, there are several other events like Hacktoberfest that encourage collaboration between developers. It’s a good idea to look up what these are so you can get involved when the time comes.
Hacktoberfest is a great way to get involved with the open source community.
If you happen to be reading this in the month of October, checkout Hacktoberfest right now!
If not, make notes and look forward to the next Hacktoberfest.
However, open source is all year round so don’t just wait until October to get involved! Browse GitHub right now and look for open source repositories you can contribute to!
Update: In terms of my own contribution to repos for Hacktoberfest, I submitted the 4/4 pull requests and completed the challenge, but unfortunately due to a glitch with the Hacktoberfest system I did not get a completion badge.
If you participated how was your experience with the 2020 Hacktoberfest?