DEV Community

Cover image for โœจ This is how I contributed code to open source as a beginner ๐Ÿš€
Bap for Quine

Posted on • Updated on

โœจ This is how I contributed code to open source as a beginner ๐Ÿš€

Hey gang ๐Ÿ‘‹

Making your first coding contribution can seem SCARY. ๐ŸงŸโ€โ™€๏ธ

At Quine, we are super happy to have recently hired Lorenzo, a fantastic product intern!

Image description

His first task was:

Here is his story of becoming a first-time coding contributor accompanied by his insights on how you can do the same ๐Ÿซถ:

1. ๐ŸŽ™๏ธ Lorenzo, what is the story behind your first coding contribution?

The journey started when I first discovered Quine and got introduced to the open-source (OS) world. I initially did some courses on how to use GitHub and how projects are usually laid out. There were some videos on Youtube as well as DataCamp that helped me do this for free.

Once I had enough information, I looked for a repository (also called repo) to which I could contribute. This is where I found extremely useful as browsing repos on GitHub can be a chore. However, here I could filter by my language and topic of preference which was very useful.

Once I found a repo I wanted to contribute to, I went to see what good starter issues existed. Since I learned to read documentations in school, an excellent first contribution was fixing aspects of a documentation (if you want to learn the mechanics on how to contribute to documentation click here). Once I made my contribution and it was accepted, I still missed a big part of the experience: making a coding contribution.

In this, I continued to use Quine to look for repos that had more my level of skill and that were more approachable. Once I found an issue I thought I could do, I had to understand how contributions were formatted and done in that repo.

This took some time but it was a needed part of the journey. After feeling confident enough in it, I sent over my contribution. There was some back and forth with the project owner (that are called maintainers on GitHub), which ultimately led to my contribution being accepted. ๐ŸŽ‰

2.โš”๏ธ Do you think open-source is only for experienced coders?

Open source is for anyone who wants to be part of a project and a community. Whether you are a veteran programmer or a beginner, there is always a place, repo and issue for you.

If you want to be part of open-source, you want to be part of a meaningful project. On a side note, I do find that the beauty of it comes when a valuable project brings people from all over the world together.๐ŸŒŸ

3. โŒ What was your biggest mistake?

My biggest mistake was waiting for maintainers to respond and not utilising that time to contribute to more repos. I wholeheartedly recommend spending the downtime solving new issues.

Indeed, it is possible that sometimes maintainers do not answer back to you. In these cases it is good to have worked on other projects. Also, to anticipate for this, you can find the response rate of maintainers on quine before going for a specific issue. This will help you in your decision process of which projects you want to commit your time on.

4. ๐Ÿ•ฐ๏ธ If you could turn back in time, how would you do it again?

I would focus on making as many pull requests (PRs) as I could. A PR is when a developer sends a contribution to an open-source project. It is then on the project owner to either accept or reject the PR/contribution.

This is the best way a beginner can improve. When making many PRs, you can quickly enhance and gather knowledge on how each repo work - especially since the project maintainers can guide you in the process.

5. ๐Ÿ‹๏ธโ€โ™€๏ธ What are the top 3 tips you would give to somebody who never contributed?

In no particular order:

1. Find a repo that you feel comfortable with. Don't feel intimidated by the big technical projects. The first contribution can often be the hardest because you need help finding a repo or an issue that fits you.

2. Make sure not to limit yourself to a single repo or a single issue. Particularly when starting, attempting the most issues gives you the best chance to get a PR merged. You will also find that when PRs don't get merged, you learn a lot of valuable insights into how the repo works and what is needed.

3. Donโ€™t be afraid to fail or ask questions. I failed a couple of times in my journey to make my first contribution. For example, I had to go through a lot of back and forth with maintainers. I also had to Google or StackOverflow a couple of things. Don't think that asking questions is a sign of weakness. It is a strength.

If you are ready to start contributing to other projects, we have compiled a list of projects with easy issues you can start with. Check out the list of projects on quine. sh, and here's a short playlist in case you are blocked. ๐Ÿš€

If you haven't yet, you could join our discord server if you need any help or have any questions. ๐Ÿซถ

Top comments (12)

ranggakd profile image
Retiago Drago

Inspiring, mate!

fernandezbaptiste profile image

Thanks for the kind comment - hope you are reading this Lorenzo ;)

chiragagg5k profile image
Chirag Aggarwal

Great article bap!

fernandezbaptiste profile image

Thanks a lot Chirag ๐Ÿ˜„

awb3er profile image

Gives hope to newbies like me :D. Nicely written!

fernandezbaptiste profile image

Thanks for the nice comment! ๐Ÿ™

ashnunez profile image

Thank you for the short playlist!

fernandezbaptiste profile image

My pleasure :)

leomiguelb profile image

Love this article!

fernandezbaptiste profile image

Aw man, thanks ๐Ÿ™

nathan_tarbert profile image
Nathan Tarbert

Hey nice article!

rennemanny profile image

That was nice