Discovering the Path to Contributing to Open Source: My Personal Journey
Tags: opensource, beginners, programming
Published: 2023-04-07 21:56:27


This article is a brief and concise narrative of my personal experience in learning how to contribute to open source projects, as well as some tips on how you can do the same.
 

## Introduction

![Nobita](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yrbn4rqh1ao8l3l8bov2.jpeg)

Hi there,I might look like Nobita but I am not. My name is PJ Mohammed Shoaib, and I'm a 21-year-old, final year engineering student who's always been fascinated by the world of technology.I am basically interested in front-end development, ui/ux designing and writing .


## what is open source and How I found about it?

Open source refers to software that is made available its source code to anyone , allowing users to view, modify,add features and improve it.Open source software is often free to use, but not always, and it can be licensed in a variety of ways.

Recently I got a chance to attend an event "Azure Open source day" conducted by [reskilll](https://reskilll.com/) ,where I learned what is open source from the speakers and met so many folks who already have done open source contributions
![event_tweet](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f4xd7p86080ch2ey04d4.png)

## How I learned to contribute to open source ?

After attending the event,I was very curious to learn to contribute to the opensource and by exploring about it ,I found a community named "Eddie hub" who helps the beginners learn and understand the process of contributing to open source.

**Eddie hub**:{% embed https://github.com/EddieHubCommunity %}


## Requirements to start contributing

- Basics of Git
- Github Account
- Any programming language/Technology (Not Mandatory initially)

It is not mandatory that we have to contribute only the coding part.Initially We can contribute by correcting the mistakes  in documentation or improve the design part of the organisation.Even the smallest contribution is also counted

## Steps to do open source contribution

First understand the basics and need of git [here](https://youtu.be/2ReR1YJrNOM)

After you learn the basics  follow these steps and commands :

1.**Fork the repository**: Go to the project's repository on GitHub and click the "**Fork**" button to create a copy of the repository in your own GitHub account.

2.**Clone the repository**: In your terminal, navigate to the directory where you want to clone the repository and run the command `git clone https://github.com/your-username/repository-name.git `  replacing your-username with your GitHub username and repository-name with the name of the repository you forked.

3.**Create a new branch**: Create a new branch for your changes using the command `git checkout -b branch-name`, replacing branch-name with a descriptive name for your branch.

4.**Make your changes**: Edit the files in your local repository to make the changes you want to contribute.
After the changes you can identify differences between files or branches and understand the changes made to a codebase by using `git diff`

5.**Commit your changes**: Use the command git add to stage the changes you've made, then use the command` git commit -m "Description of your changes"` to create a commit with a descriptive message explaining your changes.

6.**Push your changes**: Push your changes to your forked repository using the command `git push origin branch-name`, replacing branch-name with the name of the branch you created earlier.

7.**Create a pull request**: Go to your forked repository on GitHub and click the "New pull request" button to create a pull request from your branch to the original repository.

By using these steps, I did my first open source contribution

![open source tweet](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y0wseqtiyu1qgctk6yj1.png)


## Benefits of open source

- Improve your programming skills
- Build a professional portfolio
- Network with other developers 
- Learn new technologies  
- Give back to the community
- Develop communication and collaboration skills


Thank you for reading the article ,Hope I have contributed in your journey of open source