Contributing to Open Source: My Hacktoberfest Experience
Learn how to get free stickers, t-shirts, hoodies, and more by contributing to open-source projects. In this blog, I will share my experiences as a four-time Hacktoberfest participant and receiving fantastic gifts from project maintainers. Why am I writing this blog? I'm doing it to document my experiences for next year and to improve my swag collection skills. This blog will also help beginners learn how to participate in open-source projects.
What is Hacktoberfest?
Hacktoberfest is a month-long celebration of open-source software. Throughout the entire month of October, developers of all skill levels are invited to contribute to open-source projects and, in return, receive limited-edition swag such as stickers, t-shirts, hoodies, and more. This description is taken from the trigger.dev Hacktoberfest website. The year 2023 marks the 10th edition of Hacktoberfest, and you need to know about GitHub or GitLab before participating in this event.
Where to Start?
I first learned about Hacktoberfest from a YouTube video, but I forgot who created that video or its title. In 2020, 2021, and 2022, I simply made four pull requests to become eligible for this event and receive a t-shirt and stickers. I made with my friends DoyitaIlimnida, Tridibesh0101, imSaharukh, arnob016, MahianSadim, and xementor to help each other with this event.
However, 2023 is different. There are no physical items being shipped to our addresses by the official Hacktoberfest. But that's not a bad thing; we received digital items and planted trees, in addition to receiving lots of holopins.
So, where should you start? This question was already answered when I first learned about it from a YouTube video. But this approach may not be suitable for finding all the projects organized for this event. You need a list that shows the status of all events.
Hacktoberfestswaglist.com is the main source for knowing about all the events. I also contributed to this project to complete my four pull requests every year. crweiner is the maintainer of this project.
From the project, I first learned about Swirl Search for my initial contribution through a tutorial.
How to Contribute to Projects
First, you need to familiarize yourself with the project, its contribution guidelines, and good first issues. I recommend choosing projects that match your familiarity with programming languages and technology. Don't forget to read the event blog or article on how to participate in the event and ask questions on their social groups like Discord, Slack, Telegram, etc., regarding your contribution. If you don't get a response, send a direct message (DM) to the maintainer with your queries.
Afterward, I reviewed all swag lists and wondered if contributing was really that easy. I came up with an idea: Is there an event that accepts only blog tutorials? I searched on that list and found out about Swirl Search. I read their Hacktoberfest blog and joined their Slack. I messaged them about my tutorial idea, and after some conversation, I decided to create a tutorial on Running Swirl in Google Colab. I made it and shared it on Slack. They accepted my tutorial, and Sid Probstein, Adam Haight, Saurabh Rai, and Erik Spears supported my tutorial and shared it on Twitter, LinkedIn, and Dev.to.
How to Join a Team
After contributing to Swirl Search, I messaged Saurabh Rai to ask how I could improve my development skills. He suggested that I make more open-source contributions and explore more projects. I started watching YouTube videos about Hacktoberfest again and found a video discussing the Nevo Hacksquad.dev event. To participate in the Hacksquad event, you need to join a team. Initially, I randomly joined a team, but none of the team members were interested in contributing to open-source. So, I left that team and searched for a better team on Hacksquad's Discord server, under "Looking for a team." I sent a message stating that I was looking for an active team and eventually found one with active and communicative teammates: Nabin Bhatt, Digvijay Shelar,
Kritik Jiyaviya, and Shahriar Shatil. Our team name was
Vortex 🇧🇩🇮🇳🇳🇵. In our team, everyone was interested in open-source projects. After forming the team, we ended up being one of the top Hacksquad leaderboard teams. Santosh Bhandari, Furtidev, and all the moderators were extremely helpful and guided us on making contributions.
So, what should you learn from my team joining experience? I recommend that if you want to make open-source contributions, you need to be in an environment with a similar mindset so that you don't deviate from your goals. They will stay in touch with you and help you in many ways. Always show respect to each other and assist people. If you see your teammates making low-effort contributions like fixing typos to maximize points, it's better to leave the team.
How Long Should You Participate?
Hacktoberfest is a month-long event, so you should make as many contributions as possible to improve your contribution skills. This event provides a great opportunity to have experienced programmers review your code and acknowledge your contributions to their projects. This helps strengthen your network, so don't miss this opportunity.
In October, I successfully contributed to and merged PRs in 12 projects, totaling more than 45 pull requests.
My Recommended Projects to Contribute
Always refer to hacktoberfestswaglist.com to discover all the events. Below, I have listed some recommended open-source projects to contribute to. The choice of projects is up to you, but these are the ones I contributed to this year and received swag from.
The trigger.dev project is also very strong, and you can contribute to it. You may need specific skills like Typescript, but you can also contribute to their documentation. They create issues with diamond cost labels, which indicate the difficulty of the issues. The project maintainers are positive and excellent communicators. They will review your pull requests and provide guidance. Dan Patel, Matt Aitken, and Nicktrn will assist you in contributing to this project. Always ask questions on their Discord server if you have any queries.
During trigger.dev contrubution I made some cool api reference example like how to use twitter api to make a post.
I achieved 1st place at Trigger.dev Hacktoberfest event, earning 4,000 diamonds.
The Novu project is a good starting point for Hacktoberfest. You only need to make three PRs to be eligible for their free t-shirt. Visit novu.co/hacktoberfest to learn more about their event. Sumit Saurabh and Prosper Otemuyiwa guided me in merging my pull requests.
I successfully contributed to 3 PRs in the Novu documentation.
github.com/keyval-dev/odigos This project is also suitable for beginners. Eden Federman and Amir Blum are very helpful in guiding you to contribute to their projects. I was also fortunate enough to be eligible for a t-shirt.
github.com/swirlai/swirl-search This open-source project is ideal for beginners to contribute to. All you need to do is look at their issues and join their Slack. The maintainer will help you contribute to this project. I wrote a tutorial about running Swirl Search on Google Colab and became eligible for their swag.
I mentioned this project earlier. Visit their Github project and choose an issue to contribute to: github.com/crweiner/hacktoberfest-swag-list. They might not provide swag, but it's a great way to gain experience in making pull requests.
You can also contribute to github.com/mondaycom/monday-ui-react-core projects. My Hacksquad teammate, Kritik Jiyaviya, was the top contributor for Monday-UI-React-Core Hacktoberfest. Although they don't provide swag, you gain valuable experience in React.
Josh Goldberg’s Projects
Josh is a very active open-source contributor who has created numerous projects. He is the typescript-eslint maintainer and the author of LearningTypeScript. You can select a good first issue from any of his projects, and he will guide you in making successful pull requests. I was fortunate to make a small PR to his github.com/JoshuaKGoldberg/create-typescript-app project.
If you want to discover more projects of this kind, you can search on GitHub with filters like this: https://github.com/search?q=comments%3A0+comments%3A0+label%3A%22good+first+issue%22++language%3ATypeScript++++&type=issues&ref=advsearch&state=open&s=created&o=desc.
You can also use websites like firstissue.dev, goodfirstissue.dev, up-for-grabs.net, etc., to find your first issue and contribute to it. I suggest ensuring that the project maintainer is active before contributing to the project.
If you want to make a contribution based on a specific skill, start by setting your target and learning all the technologies that the project or organization is using. Don't hesitate to ask the maintainer if you have any queries.
I started without a team, and that affected my motivation during the event. So, here's the final plan: Form a Team -> Join a team event (Like Hacksquad) -> Contribute as much as possible -> Share and help each other -> Done.
Here are some key points to keep in mind:
- Always show respect to each other.
- Look for good first issues first.
- If you have any questions about your contribution, DM the maintainer.
- Enjoy the experience, learn, explore, and share your journey.
- Just do it; no one cares about your past skills.
- Avoid making trivial contributions or low-effort changes; make meaningful contributions.
- Add your experience to your resume and share it on Twitter, LinkedIn, Discord, etc.
Hacktoberfest is a fantastic event that provides valuable experience in open-source. The open-source community will help you enhance your software development skills in a fun and accessible way. Don't miss this opportunity.
- Step by Step Guide on How You Can Contribute to Open Source this HacktoberFest!
- Hacktoberfest 2023: A Beginner’s Journey into Open Source
- Beyond Hacktoberfest🚀
- My Hacktoberfest 2023 Experience with Trigger.dev
- Contribute to Swirl this Hacktoberfest. Win Swags up to $100
- Spamtoberfest 2023
That concludes my Hacktoberfest 2023 journey. If I've forgotten anything, please comment below, and I will update my blog. Thank you for reading, and good luck with your Hacktoberfest 🎃.
If this blog has been helpful to you, consider buying me a ☕coffee. It would make me very happy 😃.
Tell us about your open-source journey in the comments below! 🚀🚀