How to contribute to Open Source for the first time?
Follow this 9-step guideline to make your first contribution on Github as a junior engineer or data scientist.
Stand Out With OSS Contributions a Beginner Engineer
If you are early in your coding journey, contributing to open source is the best way to break into tech. In this first edition of my newsletter, you will learn how to start contributing in 9 simple steps.
Why Contribute to Open Source?
Many assume that simply having a well-crafted portfolio is sufficient to secure their first engineering role in tech. But, job-seekers often overlook the fact that employers typically favor candidates who have practical collaborative experience on real-world projects, that mirror the dynamics found in a standard industry environment.
But, how do you get that experience if you have never had an engineering job?
You guessed it. Contribute to Open Source Software!
You will find unique opportunities that are hard to come by elsewhere, such as :
Collaborating in a real-world software development experience.
Networking with like-minded engineers, expanding your professional network.
Getting exposure to industry standards and best practices in coding and documentation.
Receiving feedback from experienced contributors which can accelerate your learning.
Practicing your communication and problem-solving skills in public.
Let’s get started with 9 simple steps
It is not as complex as you think it is. Follow this step-by-step guideline towards your first pull request.
1. Find a project
Use GitHub's Explore menu to browse projects by topic.
Look for tags like "good first issue" or "contributions welcome" . See the image below.
You can also choose your favorite programming language!
📍 Consider contributing to our active new open-source project for the Discord community “Break Into Data” → Here!
We use Python, if you were wondering. 😌
2. Find an issue
Browse the project's issue queue.
Choose an issue you feel comfortable tackling.
Engage in conversation on the issue if needed.
Here is an example of a Github Repo that I use for our community’s Database Management System.
3. Review Contribution Guidelines
Read the project's README for specific contribution rules.
Or find a separate Contributions Guidline page
Each project may have different guidelines, make sure to follow them if you want your PR accepted!
4. Fork the Project:
Click the "Fork" button at the top of the project page.
Choose yourself as the owner and create the fork.
5. Git Clone and Create a new Branch:
Copy the path of your fork and clone the project on your local machine
git clone <URL-of-your-fork>
Navigate to your repository.
cd <repository-name>
Create a new branch and navigate to it with a single command
git checkout -b <new-branch-name>
6. Make Your Changes:
This is a good time to remind yourself of the contributions guidelines.
As a first time contributor, consider fixing typos, updating documentation, addressing bugs or even adding new features.
Be respectful and considerate when altering someone else's code.
7. Commit and Push Changes:
This is how you add all the changes you made to the original fork
git add .
git commit -m “a short description of the change”
git push origin <new-branch-name>
8. Open a Pull Request (PR):
Yay! You made it this far.
On GitHub navigate to the repository where you pushed your branch.
Click on green button - "Pull Request"
Select your branch and the branch you want to merge into (usually the main branch of the original repository).
Fill in the details of the pull request: a title, description, and any other necessary information or templates provided by the project.
Submit the pull request.
9. Wait for Feedback:
If your pull request is approved, maintainers will merge it into their branch.
If changes are requested, make them in your branch and push them again. Your pull request will automatically update.
Join our community on Discord!
If you want more guidance and support from people who are one step ahead of you, consider joining our community - Break into Data !
There you will find resources for active contributors and learners.
We are developing a software that uses Discord’s API to create progress trackers in:
Fitness
Coding
Study time
Content Creation.
Here is how it works.
Once you join the Server you will be prompted to create a goal and submit every day in our submission channels to keep you accountable.
Then our Discord bot collects all the submissions and creates a personal record as well as a group leaderboard.
We use gamification concepts to help us stay consistent with our daily targets.
Whether it is getting a job in tech or up skilling towards Data Analytics, Data Science or Data Engineering, you will find what you are looking for!
If you just want to contribute, check out our Open Source Repository - Here !
Happy Coding! 🥳
Open Source Contribution goes brrr...
This is such a great write up!