Getting Started in your Contributing Journey
Tags: github, programming, opensource, codenewbie
Published: 2024-02-05 18:03:39

## TL;DR

In this article, you will find the key steps to starting your open-source contributing journey and some essential resources on where to start. 


![First Gif](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dzo262yxq45sb44h9hzm.png)

<hr/>

## Some Open-Source Repos to Get Started
Before getting started, here are some projects that have some first good issues. 
These are great tags to look up for in projects. They offer opportunities for beginners to tackle their first set of manageable issues.

### Taipy
![Taipy](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/23aplym3pz2mapscrm2t.png)

{% cta https://github.com/Avaiga/taipy %} Star ⭐ the Taipy repository {% endcta %}

<hr/>

### Pytorch
![Pytorch](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/whthch6lliynkgwsdp0q.png)

{% cta https://github.com/pytorch/pytorch %} Star ⭐ the repository {% endcta %}

<hr/>
### Hugging face

![Hugging face](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bcjxjvak01kfeqzynwas.png)

{% cta https://github.com/huggingface/transformers %} Star ⭐ the repository {% endcta %}

<hr/>

### Scikit Learn
![Sklearn](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jn4wllv9tyev176tgw6p.png)

{% cta https://github.com/scikit-learn/scikit-learn %} Star ⭐ the repository {% endcta %}

<hr/>

### Novu

![Novu](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rego8wn2qpeiee35285v.png)

{% cta https://github.com/novuhq/novu %} Star ⭐ the repository {% endcta %}

<hr/>
### Date-fns

![Date](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/92ancfqebflphjjufcpb.png)

{% cta https://github.com/date-fns/date-fns %} Star ⭐ the repository {% endcta %}


<hr/>

## 1- Get to know the Open-Source Culture
First things first, get deep into understanding the open-source culture. Get to know the practice of sharing and collaborating on resources in a way that allows others to use and modify them.
**Resources**: Check out this [website](https://opensource.guide/). They have insightful articles about how to get started, best practices, and valuable hands-on advice.


![First](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xrznz29quwd9qnzicdem.png)

<hr/>

## 2- Selecting your First Project
For a first contribution, ensuring your projects align with your interests is essential. 
Look up libraries in the language you like or in thematics that might bring added value to your portfolio. 
Don’t forget to coordinate your first contribution with your skillset; I recommend looking for “First Good Issues” tags. 
Ensure the project you choose has a good and active community to guarantee they are responsive in helping you.
**Resources**: Check out this [website ](https://goodfirstissue.dev/) that curates a list of the first good issues available making your search easier.


![Second](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q4544nc5l9xldscu554m.png)

<hr/>

## 3- Mastering GitHub
Contributing to your first project goes hand in hand with mastering GitHub. 
**Resources**: I recommend using this GitHub app, [GitHub Learning Lab](https://github.com/apps/github-learning-lab), to get started with GitHub and make sure you master it before starting contributing.
Also, check out this [repository](https://github.com/firstcontributions/first-contributions) that gives a hands-on guide on how to make your first contribution.


![Third](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uph67yc55axavjl9yrxa.png)

<hr/>

## 4- Understanding the licenses
When contributing, you will always see a license on the repository. 
Make sure you get familiar with the different open-source licenses to understand how your contribution is protected and shared.
**Resources**: Thanks to this [website](https://choosealicense.com/), licensing will hold no mysteries. 


![License](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8wb133fzseggo0o7xxz4.png)

<hr/>

## 5- The "CONTRIBUTING.md" file
A vital and recurring part of the contribution process is examining and understanding the CONTRIBUTING.md file or contribution guidelines of the repository before making your PR.
**Example**: Check out [this example](https://github.com/Avaiga/taipy/blob/develop/CONTRIBUTING.md) of contributing guidelines.

![Contributing](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b8bwgbfhj7zyzzrqdl84.png)

<hr/>

## 6- Monetize your Work
Once you have contributed a couple of times and feel it’s something you enjoy and are comfortable with, you can look into projects that help you monetize your contributions.
**Resources**: Check out [Quine](https://quine.sh/); this website showcases open-source projects and their issues, a great way to combine business with pleasure.


![Monetize](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mgld23qkn9fu4zde6e6x.png)

<hr/>

**Contributing is not just about coding.**
You can contribute through documentation, design, and community support, so don’t feel intimidated and start contributing and make the community stronger! 
If you have some projects to share that are good for newbie contributors, don't hesitate to share them!