My Hacktoberfest 2024 Journey—Reflection

jfmartinz - Nov 3 - - Dev Community

Hello! This is my submission for 2024 Hacktoberfest Writing challenge: Contributor Experience

Why did I joined 2024 Hacktoberfest

Why did I joined? These are the reasons why I joined this year hacktoberfest.

Passion
Open-Source has always been something I'm passionate about. In fact, this is not my first time contributing to open-source. This is my second time participating, I've also active participating in programs like GSSOC and SWOC. These programs are where I truly developed the passion for open-source.

Improve Technical and Soft skills
Hacktoberfest offers a great opportunity to enhance both technical and soft skills. By reading code to understand the part of the codebase, writing and fixing code, and many more, I gain hands-on experience that strengthens my technical abilities. Being able to discuss, collaborate, and solve problems with other developers is essential, and you need effective communication and collaboration skills for that.

Hacktoberfest allows me to enhance both of these skills.

Future Career
I’m currently a third year computer science student, and I know that practical experience is invaluable. By participating in Hacktoberfest, I get real-world experience working on diverse projects. This hands-on experience is essential for my future career as a developer, helping me build a strong foundation of both technical skills and soft-skills—skills that are crucial in the industry.

Projects I Submitted PRs To

Here are some of the projects that I contributed to:

ephemeral-containers-plugin
I added a pull request template to the project. This template provides current and future contributors a standardized format to follow when submitting pull request to the project. This addition helps guide contributors on the details to include, which is valuable for both contributors and project maintainers.

bacloud22/Highest-priest-GPT
The website is not fully responsive across various screen size. I worked on enhancing the website’s responsiveness to improve the user experience on different devices, ensuring the site is accessible to a wider audience.

constitution-of-nepal-dataset
The maintainer made updates to JSON file paths, and I was responsible for reflecting those changes in the index.json file to ensure data references were accurate. This update helped maintain consistency in the dataset structure.

bacloud22/Highest-priest-GPT
The project’s documentation needed improvement, so I raised an issue and added several sections to the README, including:

  • An explanation of how the website works
  • Contributing guidelines
  • A list of all project contributors etc.

These additions make the project more user-friendly and accessible to everyone.

Key Learnings

Here are some learnings that I learned this journey.

Growth Comes from Stepping Out of Your Comfort Zone
I realized that as you become more comfortable with open source, it's essential to challenge yourself to go beyond fixing minor issues. Tackling more complex tasks helps you learn and improve.

In my case, I've been contributing to open source for quite a while now, and I noticed that I often stick to smaller tasks that don’t push my skills as much. While some of my contributions, like writing documentation and improving user experience, are valuable, I feel they're not enough for me to grow as a contributor and developer. I need to take on more challenging tasks to truly progress.

I’m not saying that fixing typos or handling minor issues isn’t important—these tasks are valuable, especially for beginners getting started in open source. However, as you become more comfortable, challenging yourself can lead to a more rewarding experience and help you grow significantly as a contributor.

Importance of Documentation
Another interesting I just realized in this journey is the importance of a good documentation of the project. I noticed that several projects I contributed to had issues with their documentation—some lacked essential details, others were vague or incomplete. This experience highlighted the critical role that clear and good documentation plays in helping new contributors and users understand a project. Now, I appreciate the value of good documentation more than ever; it not only improves accessibility but also empowers others to contribute effectively.

Self-Review your code
Before submitting a PR, it’s crucial to self-review your code, double-check for errors, and test it locally. Although common advice, it can’t be stressed enough how important it is to be thorough and avoid introducing problems for maintainers, ensuring a smooth collaboration and convenience both for you and maintainers of the project.

Final Thoughts

This journey with Hacktoberfest has been exciting and incredibly fulfilling. Contributing to open-source projects has always been a great feeling.

Hacktoberfest has strengthened both my technical and soft skills, which I know will be invaluable in my career. There’s still so much to learn, and I’m committed to continuing my contributions. Whether it’s to learn, connect, or simply have fun, giving back to open-source is something I’m excited to continue.

:)

. . .