DEV Community

Cover image for My Journey into Open Source
Prakhar Yadav
Prakhar Yadav

Posted on

My Journey into Open Source

Its intimidating when you first step into the world of open-source. There are events held online such as Hacktoberfest to help you get an insight into this by encouraging and helping you make some dummy/noob PRs. But once you experience that, you feel a thirst to actually make a meaningful contribution to some project. That's where the struggle begins.


rocket_launch_800x600_v2


So I had first participated in Hacktoberfest in 2018. Receiving all the goodies was fun but it was something through which I just got introduced to the world of open-source. I wanted to contribute to more projects but most of the times I was so overwhelmed with the complexity of the projects and the code base that I almost always shunned the thoughts to make any form of progress.


nervous-anime-face


This continued for 2 complete years! Until I was pushed and had to force myself into it. I'm currently in the final year of my Master's degree and I had just had experience in C++ and Qt framework, making only small fun projects and desktop apps. I know Python but only that much that allows me to get by my days in the university. Never learned it in thoroughly or practiced it by making projects.
I got an assignment in my Software Architecture course, where it required me to make contribution to open-source projects, it can be a bug-fix, a feature request or resolving some code issue. Now we know that all these aren't easy. I started looking up projects and that's when I realize that I'm extremely restricted to my choices, as I only knew C++ and majorly only had been solving problems on Leetcode.
(Psst. Newbies! This message is for you:
To all the people struggling with such limitations in languages, I urge you to get out of the comfort zone of your favorite language and learn new one. Don't clip your wings by your own hands.)


bird with spread wings


This realization hit me so hard. Learning other language widens the scope/domain to play with, but it also makes us diverse.
If you wonder which language you should pick-up, why not try JavaScript? I have started learning JavaScript (from the most famous FreeCodeCamp of course). It is a thing that's running on frontends, backends, desktops, mobile, name it! It's everywhere. Even on IoT devices now. (whaaaaaaaat...)


open-source green logo


Anyhow. So I landed on KeepassXC Github repository where someone asked for a feature request to color the app based on the color they wanted. I took it up and started working on it, made some progress and asked on the feedback. I was responded that I took the right direction but since it was just an experimental feature, it may never be merged. Although the maintainer was polite and encouraged me to try things and keep learning, but I have an assignment to complete. So I hit a dead-end there.

Next I moved to another repository looking at the projects and realizing that had I known JavaScript well, I would not have had such difficulty in doing so. After some time I stumbled onto IssueHub.
Searched for C++ and tag: beginner, and somehow stumbled on another project.


github sigil


This time I did some more research. Looked at how beginner labelled issues were handled. Saw the conversations, went through the CONTRIBUTING.md, looked at the CodingStyleGuide.md they had, and decided to pick an issue accordingly.

I hope this time my changes get merged to the project and I have something to show for my assignment. But assignment or not, I just want to say to all the freshlings here, just go ahead and try with minor issues, and as you develop and study the code you will be able to make worthy contributions to a project that you want to. It takes effort and patience. But then, what doesn't?


see you later gif

Latest comments (8)

Collapse
 
guigod profile image
guiGOD

You asked about a “Mentor” on Freecodecamp, but my reply was flagged “advertisement” and was hidden from you (which is silly).
I just found preply.com where I pay for face to face video conferencing lessons hourly. And in my first lesson, the guy actually pointed me to freecodecamp.com for self studies. But all the questions that arise when learning new stuff can be really hard to find answers to on Google. So hard to frame the question in the right way and use the right terminology.

With codecamp and preply I’m now moving full speed ahead! Enjoy!

Collapse
 
strawberries73 profile image
strawberries73

Thank you for sharing your experience! I am new to Open Source and in my last semester of Computer Programming and Analysis. In my course, Hacktoberfest is part of an assignment. I am glad I chose this course so that I can be more comfortable contributing. ☺️

Collapse
 
prakh_r profile image
Prakhar Yadav

Amazing. Courses like these really align with one’s interests. Kudos to your teacher as well 🥂and have fun in this assignment 😊

Collapse
 
anja profile image
Anja

Hi Prakhar, thanks for sharing! 😊 It's great that you now feel more confident contributing to Open Source! I also made fixed some beginner issues during the hacktoberfest this month, it's so much fun.🎃

Collapse
 
prakh_r profile image
Prakhar Yadav

Right! Right! 😃 and with such community and helping people, it is definitely much motivating to continue.

Collapse
 
suchitra_13 profile image
Suchitra

Thank you prakhar for sharing your experience with us!!
it's helpful for me.

Collapse
 
prakh_r profile image
Prakhar Yadav

I hope it was worth your time 😅

Collapse
 
prakh_r profile image
Prakhar Yadav • Edited

This was my first post worth calling article. Thankyou guys for showing support. I feel motivated 🤗

Thanks
Rishabh and Ramankit for helping me in the journey of OSS. You guys are my inspiration.