My Hacktoberfest 2020 Experience

Subscribe to my newsletter and never miss my upcoming articles

Today my first 4 pull requests passed the maturation period and I received the email to claim the prize. I thought this would be an excellent opportunity to share my experience with the Hacktoberfest event, as this was my first year as a contributor and a maintainer.

As a Contributor

Participating in Hacktoberfest as a contributor was surprisingly fun. In the beginning I was actively searching for new projects to contribute to. I was looking for good first issues, issues with the hacktoberfest label, and things that were within my tech stack. I placed my own projects on hold for about a week so I could focus on contributing to others' work. During that time, I contributed to some cool things like an API with algorithm endpoints. I added workflows and GitHub actions to a few projects (I love GitHub actions).

In the second week I decided to push myself further. I started to contribute to things completely outside of my techstack. I contributed to a repository of .svg heart images - and learned how to make SVGs in an image editor AND by modifying the code directly (how cool is it to code an image?). I also contributed to the Hacktoberfest site, which runs on Ruby and required me to set up Ubuntu for WSL (turns out Ruby and Windows don't get along). I scratched the surface of exploring Vue and Tailwind and Nuxt by contributing to an app that validates the eligibility of a repository for Hacktoberfest.

Those projects came from some awesome people I got to meet by hanging around the Hacktoberfest Discord server. I got to connect with Matt, the community manager for Hacktoberfest (and possibly the person responsible for 10% of the internet), Luke - a developer at Vonage and fellow Among Us fan, Raven - the DigitalOcean designer who swears they aren't a dev but still has a GitHub, Joe - the streamer who does a fantastic job streaming at 22:00, and countless other amazing developers.

As a Maintainer

On October 3rd, the rules for participation changed and required repositories to "opt-in" to the event by adding a hacktoberfest topic to the repository settings. I elected to do so for my Discord bot and the corresponding documentation project. The contributions I received were phenomenal. One contributor offered a full refactor of the bot codebase (WOW!), another continues to write tests for the commands for me (something I struggled with because discord.js client was challenging to mock).

I also started a new project specifically for Hacktoberfest - another Discord bot, intended to spam Matt with love. The project came about as my response (inspired by DigitialOcean employees) to the backlash the event received this year for the initial flood of "spam" contributions. The project evolved into We Love Hacktoberfest, a bot that responds to a few key names (Matt, Luke, and Raven) or those users when they message. Luke then submitted a PR to add me to that list - a pleasant surprise. That project took off pretty well, and still has the most start out of any of my repos.

I also ended up doing a lot of work on my own projects, thanks to the inspiration from the contributions I received. The biggest one was cleaning up my Discord bot, setting up its brand, and preparing to grow its user base (verification here I come!).

In Conclusion

Hacktoberfest was an unbelievable experience, far beyond what I had anticipated. I learned a lot, met many cool people, and strengthened my passion for development.

For my readers, I have a couple of asks:

  1. Continue contributing. Even after the event is over, keep contributing to open source. It's the best way to give back.
  2. Continue supporting each other. Celebrate your fellow developers' success, help each other learn, and always be kind.
  3. If you chose the swag prize: That's okay! I did too. I encourage you to plant a tree, as well. There are options as low as 0,50€ and you can do so on behalf of Hacktoberfest. Please help our environment.

Comments (1)

Ayushi Rawat's photo

Great read.

My suggestion:

  • Try to make use of images or gifs to make it more interactive.

Looking forward to your next article!