DEV Community

Cover image for I reviewed 200+ PRs in 10 days - Here is what I learned
Bhupesh Varshney 👾
Bhupesh Varshney 👾

Posted on

I reviewed 200+ PRs in 10 days - Here is what I learned

This post is written from both a Maintainer as well as a Contributors perspective.

Ya I know it's "late" hacktoberfest but it taught us a ton of things specially to me.

Did you enjoy contributing to opensource ? Was this your first one ? Share you thoughts below 👇

I will be sharing some common mistakes beginners make while contributing on GitHub plus some handy tips for Maintainers as well.

What this is about ?

I wrote something about 30 Seconds of C++ in the following post make sure you check it out.

So what ?

Well Thanks to Hacktoberfest, 30C++ received a huge amount of PRs during October 🎉 🎉 (more than 250)

Being a maintainer as well as a struggling contributor I have collected some tips/tricks for both maintainers as well as contributors.

Before I share some tips and tricks here are some repository stats from the period I started reviewing them (4 Nov - 13 Nov)

Day Merged Closed Request For Changes
1 5 0 1
2 7 5 1
3 10 9 3
4 8 17 2
5 20 24 3
6 14 20 3
7 5 6 4
8 3 15 0
9 10 36 3
10 2 11 0
Total 84 😄 143 ☹️ 20 🤔

1. Read CONTRIBUTING Guidelines.

If you want to contribute to anything on GitHub MAKE SURE TO READ THE CONTRIBUTING GUIDELINES (yes I am screaming right now)
If the guidelines are not present, create an issue ask the maintainer whats the process for implementing/changing something.
Just make up your mind whenever you want to contribute on GitHub just have a look at the guidelines, this will save your as well as maintainer's time.

2. Its hard for beginners.

So you are a beginner (know a little bit of HTML,C++ etc) but you wanna contribute to opensource what do you do ?
you add your name to a README!!

OC btw

No! that's not Open Source, Hopefully Hacktoberfest blocked these kind of contributions this year.
I know many of you know this already but Opensource is a "Continuous Process" its not that easy as you may think but surely its satisfying in the long run.

Have a look at the following post by Rafiullah Hamedy for better understanding of OpenSource.

3. Always check for existing PRs

If you are ready to implement that amazing feature or fix that noisy bug just make sure someone already hasn't contributed to the same issue before.

Same valid for issues make sure there is not a similar issue open or assigned to anyone.

4. It's not about the free T-shirt

No bhupesh you are wrong !!
Well sometimes it is okay so your contribute for the first time on GitHub during October, what after that ?

ididit

I have seen people just coming for the Free T-Shirt its not that bad but at the same time its not good as Opensource is a continuous process.

I really liked what Dylan Anthony said in his article

Contributing to open source should be the goal, it should be the means by which you achieve other goals.

Just make sure whenever you are contributing, your are learning something new (not just in October).

5. Draft PRs are underrated

Earlier this year GitHub released a new feature called Draft Pull Request.

This way you will be able to inform the maintainer that you have started working.
The maintainer cannot merge the PR unless you are done with the changes at the same time he can review your changes in the PR.
Its pretty handy in case your are not sure for the changes you made (it would still count as a contribution after all its a PR)

6. Saved Replies 💬 are pretty handy

For maintainers with huge repositories, GitHub has this nice feature where you can save replies to common queries like thanking the contributor, review etc
head over to GitHub > Settings > Saved Replies to save common replies to queries.

7. CI/CD is must

As a maintainer you should set up CI/CD pipelines even for your not so great projects it helps you ease up deployment and testing by using best practices.

Next Steps

We are working on the next iteration of 30 Seconds of C++, 30C++ 2.0 you can join the discussion on our discord server.

Congratulations 🎉 🎉 to all the contributors whose Pull Requests got merged.

A big thanks 🤗 to DEV and DigitalOcean.

Until next time ...

gif-next

Top comments (7)

Collapse
 
pavelkeyzik profile image
Pavel Keyzik

Hi! This was my first Hacktoberfest and I really enjoyed that. It was a really interesting time for me. I created one Pull Request to a trick-or-treat-game repository. And other commits were just to my own project. Also, I created some issues with the Hacktoberfest label and gave an ability to contribute people some easy tasks to my repository.

Collapse
 
bhupesh profile image
Bhupesh Varshney 👾

🎉🎉

Collapse
 
5anthosh profile image
Santhosh Kumar • Edited

Definitely adding CONTRIBUTING.md to
Fcal

after reading this

Collapse
 
bhupesh profile image
Bhupesh Varshney 👾

Facl looks dope 👌
too bad I am not good with JS 😅

Collapse
 
5anthosh profile image
Santhosh Kumar • Edited

Neither I am , I am more of backend developer

This library is more suitable for frontend, so I learnt Typescript for that.
More import thing is always craft is more important than its language

Collapse
 
maniflames profile image
Maniflames

Woahhh bhupesh, nice work!

Collapse
 
bhupesh profile image
Bhupesh Varshney 👾

Thanks a lot 😊