Each year, in October, thousands of developers work together to create and improve all kinds of software projects as part of Hacktoberfest. It’s a worldwide hackathon event that’s organized and sponsored by Digital Ocean and Dev. Underbelly joined in on the fun this year and hosted four official hack nights for the local community here in Salt Lake City. At its core, Hacktoberfest is a celebration of open-source software.
Open Source is Awesome
We value open source software because many of the tools that we use are in fact open source. The fact that people from all over the world work together to create programming languages, software libraries, frameworks, and applications is incredible. This collaboration doesn’t just happen in October during Hacktoberfest, but all of the time. We all benefit as a result, whether you’re a developer, designer, or really any person using technology.
How does it all work? An open source project is hosted somewhere public. GitHub is a popular place to host projects, and you’ll find all sorts of projects from individuals and companies on there. A typical open source project usually consists of a few things:
- The code itself!
- Documentation (hopefully!)
- The documentation usually includes instructions about how to set up or use the software. Plus guidelines for how to contribute.
- The issues could be feature requests or bug reports. Project maintainers use them to keep track of the work that needs completion.
A project can have anywhere from one to a few thousand different people involved in maintaining and improving it. Contributors often use a version control system called Git to interact with the project. Git helps many people work on the project simultaneously without overwriting each other’s changes.
I would recommend checking out Digital Ocean’s Introduction to Open Source guide if you are interested in learning more.
Finding the Right Open Source Project
It was fun to meet and interact with the local development community throughout the hack nights this month. Since Hacktoberfest is a worldwide event, participants can work from anywhere they would like to, but it's still fun to meet in person. The event, to many attendants, was their first time contributing to open source, so it was a great opportunity to help each other out. For most of our nights, we helped each other find projects and learned about git.
I have participated in Hacktoberfest for a few years now, and the event is something I look forward to every October. It’s always exciting to discover the different projects hosted on GitHub. Searching for new for projects to contribute to feels like a treasure hunt. It can be a challenge to find the “right” project, but it’s satisfying when it happens. Here are some things that I look at and keep in mind when searching:
- What programming language(s) are used in the project?
- Can I get the application to run on my machine?
- Do I understand what the project is?
- Are the issues descriptive enough for me to understand what the problem or requirements are?
- Have I had any experience with the problem? Is it something I am interested in solving?
Open Source Project Highlights
This year, I was able to find and contribute to a web application called OpenPace. It allows runners to set goals and track their progress. This was an exciting find for me because I love running and was excited about the technology behind the app. I was able to add a feature and fix a few bugs along the way. Check out the source code on GitHub!
I also had fun creating a silly little game. It started as a basic version of Snake. I decided to open it up to the broader development community for collaboration. So, I made a few issues on GitHub, describing the features I wanted, then tagged them with #hacktoberfest to help other developers discover the project. I was amazed to see how many people had contributed to the game. In total, sixteen different people added some features, like music, sound effects, animation, and performance improvements.
One hack night attendee shared some improvements he made to a baby-carrying inventory management system, a project headed up by a group called Ruby for Good. He explained how he found the project on GitHuband decided to start with some small changes to get to know the codebase. He was then able to contribute more and more.
His approach is a great strategy when it comes to contributing to open source software. Even small changes have a lasting effect. Great software is almost always the result of many people working together, making micro iterative improvements.
Underbelly sponsored a raffle for our hack night attendees, with the grand prize being a Nintendo Switch Lite! Raffle tickets were awarded based on attendance, as well as Hacktoberfest contributions. We created a small script to make the raffle drawing a little bit more suspenseful. Of course, there’s also a limited edition Hacktoberfest t-shirt that DigitalOcean awards those who complete the challenge (submit four pull-requests during October). Developers love swag, and this is a great way to help encourage involvement in open source software.
As Hacktoberfest comes to an end, we want to give a huge thanks to all of our hack night attendees. We hope everyone who came mingled with our community, learned something new and was inspired to use open source software. This event is indeed coming to a close, but coding will continue to happen. Big thanks to DigitalOcean and Dev for organizing this awesome event. I’ll be looking forward to my t-shirt!