Hacktoberfest can be both a wonderful and hectic time depending on the onslaught (or lack thereof) pull requests that you get within the month of October. Having been a maintainer myself of a somewhat popular repository for going on three years now, I’d like to share some of our learnings with you so you can make the most of Hacktoberfest and hopefully enjoy yourself in the process.
Ready, set, hack!
There are plenty of quotes on the internet about preparation being the key to success, and you know what? They’re right! A little bit of preparation on your part before October 1st can make a world of difference in how the month goes. Here are a few suggestions for ways you can prepare your repository and make it welcoming to all contributors:
- Make sure your README is up to date. This saves you and your contributors time in the long run. If you describe your project and expectations clearly, you’ll spend less time asking contributors to make changes, or making the changes yourself.
- If you have a style guide, make that readily available in your repo as well. You’ll spend less time fixing style issues, and more time working on testing code or verifying steps.
- You can also implement automated linting to clean up the code. GitHub has quite a few free plugins you can choose from.
- Create a Pull Request template. This was key for us in the first year. Asking contributors to describe what they were changing and why saved us a ton of headaches in the long run. Contributors can also link to an issue they’re hoping to close in the PR which is awesome because then you don’t have to search for it after you merge in their changes.
Label your issues and pull requests
A clearly-labeled issue is an inviting issue. Contributors can get to work much faster if they have an idea of how difficult an issue may be to tackle. They can size up the workload and decide if they’ve got the skills to get it done in a reasonable amount of time. In addition, labeling issues for first-timers make it a lot less daunting to new contributors perusing your repository. If you don’t have a lot of issues in your repo currently and you’ve got a stacked backlog, go ahead and add a few issues each day to keep ‘em coming back for more!
Some of the labels we’ve used in the past include:
- Easy, medium, hard
- Hacktoberfest approved /review for Hacktoberfest
- Invalid or Spam
Automation and you
If you’re so inclined, you can use GitHub webhooks to automate messages to all of your contributors. Want to say thank you to everyone? There’s a webhook for that! Need your contributors to sign a CLA before you can merge in their changes? There’s a webhook for that! GitHub has some awesome documentation, so if you’re not familiar, you can learn how to set up webhooks here. If you’d like to dig even deeper, my awesome colleague Tilde wrote a post on Probot automations earlier this month.
Sample Webhook Message
Holy PRs, Batman!
So your community has come through in a MAJOR way and dropped a pile of pull requests in your lap. Congrats! Problem is, you’re on a lean team and have NO idea how you’re going to get all of these merged in. Never fear, I’ve got some suggestions for you.
- Get support from your manager. I realize that not all of you are maintainers from 9-5, but if you are, make sure you get support from your manager and team to work PR reviews into your sprints during the month of October.
- Ask for help. Even if this is a side project, I’m assuming you’ve got SOMEONE in your life, a coworker, friend, sibling, etc., that you can bribe to help for pizza/cookies/etc.
- Take it easy on yourself - this is what the “Hacktoberfest approved” label is for. Not all pull requests need to be merged in during the month of October for them to count towards the sweet DigitalOcean t-shirt we’re all coveting. As long as you take the time to give the PR a once over and make sure it’s not spam or invalid, you can take your time.
Encourage Open Source Contributions
What if you don’t get any contributions or very few? Never fear. October is a long month, so reach out to your communities in whatever ways you can! Here are some suggestions I have for drumming up interest in your project
- Write a blog.
- Tweet about your blog post. And your project. Tweet early, tweet often.
- Make sure you mention SWAG. We all know the power that Tshirts and stickers wield in the tech community. I’ve been fortunate enough to work for a company that offered up swag in the past, but thankfully DigitalOcean is hosting this fabulous month-long event so you don’t have to give away your own stuff!
- Hold a meetup if you can. I cannot stress this enough. Getting a community of people together that are either learning about or huge proponents of open source is incredibly fun and rewarding.
We’re over half-way through the month of October, but hopefully, some of these suggestions can make their way into your current or future workflows. If you have any questions about being a part of the open-source mantainerati, please don’t hesitate to reach out. I’m stoked to see what your communities come up with.