Why small contributions matter greatly?
When you're new to open source, a question that often comes up is, "How big should my first PR be?" It's a valid question, and actually quite crucial if you want to contribute to open source projects.
When you're new to open source, a question that often comes up is, "How big should my first PR be?" It's a valid question, and actually quite crucial if you want to contribute to open source projects. You might be wondering why this question is so important. Well, as the title suggests, even small contributions matter, but not everyone talks about it or realizes its significance. It seems like a simple question with a straightforward answer, right?
And yes, it is. But let me explain why. I think sharing real-life examples not only makes it more believable but also more personal. Most tutorials and articles these days lack that personal touch, so I want to address this topic based on my own experiences.
How small or big can a PR get?
First things first, let's understand the difference between a small and a large pull request (PR). Generally, a large PR involves making extensive modifications across multiple files, sometimes even introducing major changes that can disrupt the project. Project maintainers don't usually prefer these kinds of PRs because they are difficult to review and have the potential to destabilize the project. I want to make it clear that large PRs do happen, but they are relatively rare compared to the multitude of small PRs.
Now, let's talk about small PRs. Unlike large PRs, small ones are much easier to handle. They are quick to read and understand since they have less impact on the codebase. However, don't underestimate the potential of a small PR. Depending on its purpose, it can have a significant impact on how a documentation, website, or even a piece of code functions. So, even though they may seem minor, small PRs can actually make a big difference.
Let me provide you with a few examples of common small PRs that you might come across:
- Documentation changes: Making improvements or clarifications to the project's documentation.
- Spelling correction: Fixing typos or misspelled words in code comments, documentation, or error messages.
- Code formatting: Ensuring consistent and clean code formatting, such as indentations, line breaks, and spacing.
- Basic bug fixes: Addressing simple issues or bugs in the code that have straightforward solutions.
- Grammar correction: Fixing grammatical errors or improving the readability of comments or documentation.
- And more: There are numerous other small PRs that can be valuable, such as refactoring redundant code, improving variable names, optimizing performance, or adding simple tests.
These kinds of PRs are super important for any project, especially the ones with lots of docs. It's tough to keep everything updated when projects change or add new features, so mistakes and inconsistencies happen a lot. But for the folks who put in tons of hours to create free and open source projects, even the tiniest contribution means a lot. Seriously, even a little dot or a space can be a big help. It's a way for us users of open source stuff to show some love and support to the projects we use. When we actively get involved and make things better, we're helping these projects succeed and thrive.
My personal experiences
I've been involved in the open source community for over 7 years now, both as a maintainer and contributor. Throughout these years, I've made numerous PRs to well-known tech giants like Stripe, Vue.js, Angular, Firebase, daily.dev, Quasar Framework, and more. I want to share some of the notable small contributions I've made to these projects. Most of them involve documentation updates and minor bug fixes, just to show you that this is a real thing. Even small acts of help like these are greatly appreciated by maintainers of large open source projects.
Vue.js
Documentation changes
Stripe
Stripe.js library documentation improvements
Nuxt.js
Documentation update
Firebase
Functions example bug fix
Daily.dev
Documentation changes, grammar improvements
This one's a bit funny coz it's just an emoji change 🤣 but hey!
Angular
Typo correction
Quasar Framework
Typo correction
Documentation update
Nativescript Vue
Documentation update
Capacitor
Documentation update
DaisyUI
Starter list update
Website meta image update
Example updates
And many more! 😄
Closing remarks
As you can see, most of these are documentation changes and it's okay. They are small, easy to review, and adds great value to the project. Some might say that these are just small changes and bigger PRs are better, don't pay attention to them. The true value in open source is the collaboration no matter how small or big your contributions are. So next time you see a typo or misspelled words or minor grammar correction, go for it, fork the project and submit a PR! Happy open sourcing!
About the author
Joff Tiquez, hailing from Manila, Philippines, is the individual behind the establishment of OSSPH. He is a web developer who strongly supports open source and has been overseeing projects like Vue Stripe for an extended period. To get in touch with Joff, you can visit https://bento.me/jofftiquez.