DEV Community

Cover image for First Attempt at Open Source Contribution: Hacktoberfest'23 Journey🚀💻
Jeeva Ramanathan
Jeeva Ramanathan

Posted on • Updated on

First Attempt at Open Source Contribution: Hacktoberfest'23 Journey🚀💻

This was the first time participating in Hacktoberfest, marking not only an initial attempt at the event but also my introduction to the world of Open Source contribution. This blog post will explore the path through the Hacktoberfest event 🛣️.

Image description

What is Hacktoberfest and Open Source Contribution?
Hacktoberfest is an annual worldwide event held during the month of October. The event encourages open-source developers to contribute to repositories through pull requests (PR).
Open source contribution is participating in the development or improvement of open-source software. This can involve anything from reporting bugs and fixing code to writing documentation

Discovery🔍

Unknowing where to begin, I planned to contribute to the projects that aligned with my tech stack and interests and started exploring repositories. There are various approaches to refine the search to find a suitable repository for contribution. GitHub's search function allows to filter results using hacktoberfest tags, programming languages, and recently updated etc. And some websites like goodfirstissue.dev, finder.usmans.me also helped to find a suitable repository to start with. Identifying an active repo might be particularly helpful.

Understanding the Repository and Contribution Guidelines📋

Once found a repository to contribute to, the next steps was what and how should I contribute.

Started by looking into the contributing.md, code_of_conduct.md, Readme.md files to understand the procedures. Additionally traversed the issue section and pull request section to understand how the issues are reported and addressed, which gave some better idea about it.

Each repository had different guidelines. Some allowed work to be started on existing or newly reported issues only after they had been assigned to us, while others allowed solutions to be provided to any open issues, which would be accepted if they met requirements. Additionally, there were repositories where all issues were not open, only with specific tags like ready to take, ready for dev indicates for open source contribution. So, checking the repository's guidelines is important as they provide all information from setup to how to create pull requests with proper titles. Starting with issues tagged good first issue, hacktoberfest is also suitable for making the first contribution towards open source.

Making Changes and Creating Pull Requests 🛠️

Initially forked the repository and created a working branch, then understood the code base and identified an issue to work on. After making the required changes and testing them, committed the changes to the working branch of forked repository and raised a pull request with base repository as original repository and head repository as forked repository-working branch according to the guidelines. The project maintainers reviewed the changes and provided some feedback or suggestions in some cases. After addressing that, the PR was merged.

Here are some of the pull requests (PRs)

My contributions include identifying and resolving issues, as well as implementing new features and updating documentation.

  1. Calculation Error
  2. Google Sign-in Feature
  3. Ping Pong Animation

For more of my contributions, check out the GitHub repository

Further Explorations and Challenges🤔

So, while contributing to the beginner repositories, opted to explore a few larger and real-time repositories during last week.

As this kind of large repository includes both frontend and backend, understanding the codebase and setting it up locally was quite hard, and for some, I did not had the necessary infrastructure or software in the system by the time. But gitpod.io was really helpful here in setting up the few projects that are integrated with it. Gitpod is a cloud-based development platform. It provided a seamless and ready-to-code environment, ease the complexities of local setup. In this process, I made contributions to the Biodrop and freecodecamp.

Image descriptionFortunately, identified an minor alignment issue in FreeCodeCamp and reported the issue with a workable solution. Following a while, the solution was also accepted as a temporary fix; However within the same issue, spotted another issue by proposing a fix. But after a loong back-and-forth discussion with the moderator involving testing on various browsers with different approaches, we came to a conclusion and the fix was also finally merged after the event. Pull Request: Button Alignment

✍️Writing insightful comments, creating descriptive issues, and submitting explained pull requests was really tricky.

Progress

By exploring various repositories, had the opportunity to observe different coding standards, structures and approaches to problem-solving.
It helped to have a better understanding of good coding structures, provided valuable insights into industry-standard coding practices. Also, it helped to improve collaboration and communication skills.

Conclusion✅

Hacktoberfest makes a nice platform to start with open source, more than making contributions, it's also a great opportunity to learn from the open source community.

Although I may not made significant contributions, it was still a good experience for me and a great opportunity to learn something new in the initial attempt towards opensource. Contributing to open source also allows you to understand how collaborative software development works.

And if your interest is towards open-source, I would endorse you to start the same, it does not necessarily need to be code contributions, there can be non-code contributions as well.

Happy Contributing✨!


You can hit me up on Github | Linkedin

Few other posts to check here.
Decoding Why 0.6 + 0.3 = 0.8999999999999999 🤯 in JS and How to Solve?

Top comments (0)