cft

How to get involved in Open Source projects during Hacktoberfest?

In this article, you will know everything about open source contributions through Hacktoberfest event such as... What is it, how to start, some guidance, best practices that should follow, some open source projects which you should look through, and many more!


user

Suchitra Giri

2 years ago | 6 min read

What is Hacktoberfest?

Hacktoberfest is an annual month-long celebration of open source software. It happens every year in October. During this event, everyone can support open source by contributing changes and then earn limited-edition swag.The aim of this event is to encourage developers to contribute to open source projects and give back to the community.

Also, it encourages newbies to learn about open source and helps to start their journey towards open source contributions.

Who doesn’t know about open source ... can follow this(I am assuming if you are completely new)

What are the prerequisites to getting started?

The prerequisite is nothing because in this event anyone can take part and contribute to open source. We believe contributions are not just like code change or bug fixing, non-code contributions are also valid and considered equally important. In my opinion, the best place to start with open source projects is documentation in this you can fix some typos, add some content, translate the documentation into another language. And also you can do some design work, etc…

These are some non-code contributions that can help you to get started.In contrast, if you want to contribute to the codebase, then you should have a basic understanding of Git and GitHub. So, that’s it, you are ready to go…

Why participate in Hacktoberfest?

Although receiving a free t-shirt is always cool, but also there are more important reasons to participate in Hacktoberfest. Whether you are a maintainer or a participant, you will surely learn and benefit a lot from Hacktoberfest You will be amazed to know when I will be telling something which really cool and insightful.

Like below are the some well known and widely used software that you might be using but not aware of. So, these projects are held by the community of open source people within the globe. As an example, here are the 10 popular and widely contributed projects...

10 popular open source projects 

Mozilla Firefox

Mozilla Firefox is an open source web browser developed by Mozilla Foundation.First released in 2002 under the name Phoenix. It's available for most operating systems including Windows, macOS, Linux, and most phones and tablets.

Technologies: C++, C, HTML, JavaScript

List of repositories here

Linux 

Linux is a free and open source project developed by Linus Torvald in 1991. Basically, it is an operating system kernel that is open and free for everyone.

Technologies: C, Assembly language

List of repositories here

Apache Cassandra

Apache Cassandra is an open source NoSQL distributed database designed to manage massive amount of structure and unstructured data across the world. I was developed at Facebook for inbox search and open sourced in July 2008. 

Technology: Java

List of repositories here

Top Contributor: Jonathan Ellis, CTO & Co-Founder at DataStax

Tensorflow

TensorFlow is a free and open source software library for Machine Learning and Artificial Intelligence. It was created by Google Brain Team in 2015.

Technologies: Python, C++

List of repositories here

Django

Django is a Python based open source web framework that follows the model template views architectural pattern. It’s designed to help developers achieve their most important objective, which is rapid development.Technology: Python

List of repositories here

Kubernetes

Kubernetes is an open source container orchestration system for automating computer application deployment, scaling, and management. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation.

It aims to provide a "platform for automating deployment, scaling, and operations of application containers across clusters of hosts". It supports a range of container tools, including Docker

Technology: Go

List of repositories here

Ansible

Ansilble is an open source community project sponsored by Red Hat. It is a radically simple IT automation engine that automates cloud provisioning, configuration management, application deployment, intra-service orchestration, and many other IT needs.

Technologies : Python, PowerShell, Shell, Ruby

List of repositories here

Geany

Geany is a small and lightweight IDE that runs on Linux, Windows, MacOS, and every platform that is supported by GTK libraries.

Technologies: C, C++

List of repositories here

Renovate

Renovate is the essential “keep absolutely everything up-to-date” code maintenance tool. Acquired by WhiteSource in November 2019, Renovate is designed to save developers time and reduce security risk by automating dependency updates in software projects. 

Technologies: JavaScript, TypeScript

List of repositories here

Jenkins

Jenkins is an open source automation server. It helps automate the part of software development related to building, testing, and deploying, facilitating continuous integration and continuous delivery.

Technology: Java

List of repository here

These projects are giant and managed by the community member, not helped by particular ownership. Also, open for everyone who wants to contribute to. Interesting right!!

So, this is a great time to contribute to the event of Hacktoberfest. Let’s start...

How to take part in Hacktoberfest

In this event, you can take part as 

  • Participant
  • Maintainer
  • Event Organizer

How to Participate in Hacktoberfest as a Participant

Here are some steps you should take to start participating

  1. Go to the official page of Hacktoberfest and register yourself as a participant.
  2. After registering yourself, find some projects on GitHub and choose wisely according to your skills and interest.
  3. Find repositories that have "opted-in" to Hacktoberfest. This means repositories that have the "Hacktoberfest" label.
  4. Explore some projects, read their documentation, make some changes if you want it will also be considered. Read the CONTRIBUTING.md file, it will help you to get started with the particular project.
  5. Want to contribute to the codebase, fork the repo, clone it in your own local machine, try that project, find some bugs, errors, or also if you want some features.
  6. Rise the issue with a proper explanation about features/bugs etc.
  7. Then, if the maintainer assigns you that issue, start working on that and make a pull request.
  8. After submitting your PR maintainer might be requesting some changes, so do that as well.
  9. If your change is valid, then the maintainer will merge your PR into the main project.
  10. Congratulations, you completed your 1st PR 😀

How to participate in Hacktoberfest as a Maintainer

In this event, if you want to contribute as a maintainer that means you have an existing project, and you want to open source them so that, participants can contribute and make some PRs.

And you are the owner of the project who maintains everything like reviewing the PRs, merge the PRs, and other maintainers’ work.

As an example, Hoppscotch and Typesence are the projects which took part in Hacktoberfest 2021.

How to participate in Hacktoberfest as an Event Organizer

It is well known that what event organizers do. Basically, they organize the events give some talks about open source contributions, spread awareness about Hacktoberfest within the community, groups, or organizations.

So, here if you want to take part then you have to organize some events with your community or groups. Invite some people to talk, get together, and spread the things about open source in Hacktoberfest.     

Beginner-friendly guidance in open source

  • Read the contribution guidelines of the project before working on it. 
  • Fork the project repository
  • Clone it on our local machine
  • Follow the project docs of installing required dependencies
  • Run the project, try it your own
  • If you want some changes, raise an issue 
  • Make sure to get assigned to an issue before working on them
  • Create a new branch, don’t push your change directly to the main
  • Make a pull request with some changes (Don’t spam)
  • Request maintainer for reviewing the PR
  • Don’t be discouraged

Some resources to getting started 

Best practices

Do’s and Don't’s

Hacktoberfest is about making a positive impact on open source projects. Please keep this in mind when you're making PRs. Repositories that encourage folks to make a quick PR to win Hacktoberfest, such as simply adding their name to a list or creating collections of algorithms and data structures (DSA) etc., do not follow our values and will not be counted. Hacktoberfest is not about winning a t-shirt, it is about giving back to open source in whatever capacity you can. You can report repos that don't follow our values at https://hacktoberfest.digitalocean.com/report.

Hacktoberfest remains opt-in this year, and maintainers must add the Hacktoberfest topic to their repository if they wish to participate and for contributions to count. PRs that are made to those repos must then also be accepted by a maintainer to count, either through having an approving review, being merged, or having the hacktoberfest-accepted label added. View the full details at https://hacktoberfest.digitalocean.com/resources/participation.

They also want to focus on maintainers this year and show some appreciation for all the amazing open source work that they do. As part of this, they're offering swag packs to active maintainers during Hacktoberfest, similar to how they reward contributors that make valuable contributions through PRs. Maintainers will need to complete 4 or more actions against PRs in a participating repo to be eligible for a swag pack. View the full details at https://hacktoberfest.digitalocean.com/resources/maintainers.

Hacktoberfest is ended this year but contributing to open source is not, for learning and contributing to open source is not required any specified month or time. Keep learning and keep contributing!

Thanks for reading!

Upvote


user
Created by

Suchitra Giri

Curious to know about me, then read my latest articles. I am enthusiastic about code, and technology!


people
Post

Upvote

Downvote

Comment

Bookmark

Share


Related Articles