Getting started with Open Source ? (Beginner Guide)
In Android Development

Before starting Open Source Contribution, you might wonder why it's essential to do it. That needs to click in your mind. The 3Ws - WHAT, WHY, and HOW?
What is Open Source?
Open Source means something that is 'Publicly Available', it can be used and modified by anyone. In IT World, we have Open Source Softwares those are widely used over the Globe. For example:- VLC Media Player, Mozilla Firefox.
WHY Open Source Contribution?
You need to know no software in this world is 100 % perfect. That means there is always a need for improvements in every software and it could include fixing a bug or implementing a new feature. It could be easily seen in the case of Apps that you see over PlayStore(About App Section) like version 1.0.9, and version 11.8.3
In Today's World, People used to be good at pointing out mistakes and blaming each other.

If you have this Quality, Congratulations you are already an Open Source Contributor. Yaa, I m not kidding...
Similarly in Open Source, you need to point out bugs, and functionality that needs to be added to enhance the app's performance and user experience.
What are the Benefits of Open Source Contribution?

BENEFITS:-
Impacting several users worldwide
Flexibility
Networking
Scalability
High Learning Curve
Problem Solving
Working on Scalable Projects
* Don't do a Contribution if you are doing it for the sake of money, rewards, or appreciation. Learning should be your Motive that will help you to Grow better and all others are By-Products of Open Source.
HOW to do Open Source Contribution?
Prerequisites:-
Get familiar with GIT and GitHub. Learn basic commands like Commit, Fork, Clone, Push, Pull Request(PR), etc.
Recommended Steps to Follow for Contribution:-
Go through the Readme to get an overview of the App Codebase including the purpose of the app and then analyze the Code.
Join the community and ask mentors publicly any queries related to the codebase that you are not able to understand.
After going through the codebase, you are much more familiar with the app codebase.
Fork the Repository (Repo).
Clone the Project on your local System.
Now, start testing the codebase on different devices and screens.
You will definitely come up with some idea that needs to be added to enhance the app or in case you will not get work on someone else open & unassigned issue.
Go to the original Repo and report a new issue if it's not already mentioned.
Ask the Mentor or Project Admin to assign you the issue, if it's valid they definitely gonna assign you the issue.
Once the issue is assigned to you, start working on the issue in your local system.
Create a new feature branch from the main branch and start resolving the issue, test on various Android Devices
Once you are completely Sure, Commit and Push the Changes
Make a PR on the Original REPO, mentioning the issue number along with Proofs in the form of Screenshots, Video Clips.
Mentors will check out and if they have 100% satisfied with your work, they will definitely Merge with Main Branch, or if not they will ask for Changes.
Once your PR is successfully Merged. Congratulations you have successfully completed your first contribution.

BONUS:- Android Developers might ask where they will find Open Source Android Projects.
Participate in Open Source Programs like GSOC, and GSSOC where you will find lots of Open Source Android Projects to Contribute.
Be active on LinkedIn where several Android Developers post their projects mentioning they are Open Source most of the time.
You can check out this GitHub REPO
#Share your Learnings in the Comments. Keep Learning and Exploring!
