How to begin your contribution to open source projects?
Published: 2021-10-24 08:09:42

##Why to contribute?
From a `professional point of view` it is said that always `apply what you have learnt`. To do the same there are 2-3 places where you can use your knowledge and apply it. First, it is a `company` and the other one is `open source projects`. And being a student you should choose an open source project, because the company is not going to hire you at your early stage of college.
And another reason like everyone said is getting perks, experience in working on real projects, gives edge to your resume during placements, networking with people across different parts of the world,  etc, etc…..

##Why does it seem overwhelming to contribute to open source projects for beginners?
It’s because:-
You don't know about that project. 
You never used that product. 
You have a fear of a huge code base. ( But the reality is you don’t have to contribute to the whole codebase. You have to contribute to a very small part of it).
New way of communition through slack. And switching from `Instagram`, `Facebook` to `Slack` feels like your world has completely changed. Initially when you join slack you get bored and start excusing yourself since you don’t understand anything about the discussion going inside the channel, so better you leave this place and this is not for you. I totally agree with you all that switching to slack is hard, but believe me if you endure the talks, meeting, discussion going inside slack for at least one month. You will see that each morning when you get up either you will open your `email` or `slack` or `github` instead of `Insta`, `Facebook`, etc.
`NOTE`:
Don’t keep this ego that in one day you will do all things like installation of projects, read documentation of project, and blah blah. Please give time. During Installation of the project you may get problems or stuck at something  which may take a time. Because at the beginning you don’t have any knowledge. 

##How much time does it take for a complete beginner to get aware about the project?
In one word you need at least 1 month to know what a project is all about, what its use case is,  what problems it solves in the real industries, and many more things. 
Structure for the time to be given different parts of projects in the beginning:-
For Installation→ 1-6 days (totally depends from person to person).
For Reading documentation of project → 1 month
Use the project until and unless you get a feel of it. 
Watch the hands-on of that project and try to apply it in your local workspace.
Join the meeting. If you don’t understand anything in the meeting  it’s ok. But be with it. 
Slack → daily 1-2 hours
Start asking any doubts in the slack. Don’t feel shy about it. 


##How to begin your contribution with Kyverno ??
The best part about contributing to Kyverno is there are 2 options available for contributor to contribute on:-
`Firstly`, contributing to policies. It doesn’t require any coding experience. It only requires basic knowledge of Kubernetes resource, YAML, and also knowledge about kyverno. 

`Secondly`, through coding. By fixing bug, working on enhancement, etc.

So, by the time you get ready to contribute through code you can contribute through its policies.  As the policies are written in the same language in which Kubernetes resources manifest are written down i.e YAML. And this is the best part of Kyverno. 

That's all from my side. May this blog helpful for complete beginner.