Week 2
What Is A Contribution?
Many people find open source very scary. I know I used to. However, like I said the previous week, the key to overcoming fears of things that could be great for you is in understanding. I still haven’t contributed any code to an open source project, but from understanding what an open source contribution is and the benefits it can bring to my life I am no longer afraid but excited by it. So let’s talk about the scariest part of open source to developers, contributions.
I remember what I used to envision when I would think of an open contribution. Flame wars. Complex code. People not responding. Giving up.
All these fears used to overwhelm my mind.
The truth is, a contribution doesn’t have to be scary. It doesn’t even have to be code. It can be:
- Ideas
- Visual design
- Organizational skills
- Fixing typos
- Writing tutorials
- Helping newcomers become acquainted with the project
- Literally anything that can help the community
Knowing this, let’s redefine what an open source contribution is to make it less scary.
An open source contribution is being part of a community.
Everyone is part of a community. So when reframing contributions that way, instead of being scary and foreign, they are something we are all intimately familiar with.
With that in mind, I can clearly envision what I would like my first open source contribution to be. I personally love to teach people. That is why I went into software in the first place. I also love to understand the internal workings of things. Those two interests combined would make me love to write some kind of tutorial to help others become acquainted with a project I am passionate about. That way it would require me to learn the ins and outs of a project while teaching others something I believe would add value to their lives. That is something that I am definitely energized by.
So now that I have told you my vision for my first contribution, I would like to state now a personal goal of mine.
Within the next three months, I would like to contribute code to a huge famous project that fits my interests. Huge because of the mentorship and all the interesting people around the world I can learn from and teach. Famous because it is probably something I use or would love to learn to use.
Two I have my eye on are Kubernetes and Node. I currently work in distributed systems at my day job (exclusively docker and rancher), so knowing the internal workings of Kubernetes and contribute to the codebase would be fascinating to me. Node would also be very interesting, because I am interested in networking code and runtimes.
Let’s see in 3 months how far I get and how my first contributions go :).
That is it for today and feel free to think about what a good first contribution may be for you and define a long term goal for yourself. For more information on what open source is and how you can begin contributing, check out this article!