My GSSoC'23 Journey

My GSSoC'23 Journey

My first open-source program

ยท

5 min read

Introduction

First of all, I am introducing myself, My name is Avdhesh Varshney. I am a B.Tech student at NIT Jalandhar. I have participated in Girlscript Summer of Code 2023 and secured 6th overall ranking among 1500+ active participants.

Journey begins...

So, Let's start my journey, at the start of this program, I had no idea how to start contributing to the open-source program and there were so many questions in front of me like, how to choose a project, who could give me the work, how I would contribute to that project, and which technologies were still required to start contributing and so many. ๐Ÿ˜ฅ

On joining the discord server, many contributors started contributing and discussing their contributions on the server. Still I cannot understand where I should go to start my contribution. I also asked the discord moderator ๐Ÿ‘จโ€๐Ÿ’ป, and he told me but that is not understandable to me ๐Ÿ˜ตโ€๐Ÿ’ซ. So, I had to go to YouTube ๐ŸŽฎ to search for 'how to start contribution?'.

Contribution starts

But in the end, I finally got the hang of how to start contributing. I had gone for creating my first issue on github, which is ๐Ÿ•น๏ธ Bingo Game ๐ŸŽฎ. So, leave everything, first of all, I should describe WHAT IS GSSOC.

What is GSSoCโ“

GirlScript Summer Of Code (GSSoC) is a three-month-long Open-Source Program conducted every summer by the Girlscript Foundation for beginners. With constant efforts, participants can contribute to numerous projects under the extreme guidance of skilled mentors over these months. With such exposure, students begin to contribute to real-world projects from the comfort of their homes. GirlScript Summer Of Code has witnessed active participation over the years, and the 2023 edition aims to carry the legacy with a promising impact.๐ŸŽ‰

This is just a copy-and-paste definition of GSSoC. ๐Ÿ˜Ž

Won the first war of my open-source contribution ๐Ÿšฉ

Now come back to the point, after getting assigned that issue, I had to start to create the game. This game took four days which will be enjoyable for me. Now, this time is to create a first pull request and I created my first pull request carefully by reading word-to-word of contributing file of the GameZone successfully created my first pull request and won the first war of my open-source contribution.

How to choose an open-source project?

Choosing an open-source project in GSSoC is very easy. All the projects are listed on the official website of the GSSoC. See Link ๐Ÿ”—

On clicking on any project, you will get two links - one of the YouTube link where the project admin explains the project and another one of the GitHub repository where the project's code is present and you can contribute.

Here you can see last year's projects of the gssoc and can learn accordingly. You can filter projects according to the coding languages. So, you can go through it to filter out projects that have been recurring for the last few years or those languages that are mostly used in many projects.

In this way, by doing homework, you should learn those technologies and prepare your projects for easy contribution when the program starts.

How to start contributing?

The following points should be noted while contributing to any open-source program,

  • The issue will be assigned on a first-come-first-serve basis.

  • If you are thinking of making a PR then at first be sure to get assigned.

  • If the issue is not assigned to you then your PR may or may not be accepted.

  • Feel free to create issues for bugs or suggestions and get assigned to them. Don't spam the issues otherwise, the program organizer can ban you.

  • Select your self role(whether it is contributor, moderator, advisor, etc.).

  • Projects on Discord to get access to your projects channel, if your project is a participating in the gssoc or you are a project admin.

After assigning what do we have to do?

  • Firstly read the contributing.md file of that project carefully.

  • There are some as follows-

      1. Fork the repository with command line.
      2. Set your git base on your system.
      3. Clone the repository on your system.
      `https://github.com/<username>/<project-name>.git`
      4. Do the necessary changes on the project according to the issue created.
      5. Create a separate branch for creating the pull request.
      `git checkout -b <branch-name>`
      6. Add those changes using git base.
      `git add .`
      7. Commit those changes.
      `git commit -m <commit-message>`
      8. Push your code to your forked repository.
      `git push -u origin <branch-name>`
      9. Finally, Create the pull request.
    
    • Follow these lines and all of you start your open-source journey.

How to create a pull request?

Steps to create a pull request-

  1. Ensure that you have self-reviewed your code ๐Ÿ˜€

  2. Make sure you have added the proper description or comments for the functionality of the code.

  3. You have added a README file to your repository.

  4. Add your project screenshot while creating the pull request by following the proper conversion specified here.

  5. Submit your PR by giving the necessary information in the PR template and hanging tight organizer or project-admin will review it soon ๐Ÿš€

Contd...

Finally, you all have learned, how to contribute to open-source programs. If you still feel any issues, you should post your problem on the Discord server or any other social media, where your mentors are active. They all respond to your problem within 12 hours and resolve your problem.๐Ÿ‘ฆ

After one month of a long journey, the leaderboard will be live now and you can know your name by the name of your GitHub account and improve your rank by making more and more contributions and merging them. In this way, your open-source journey will become at the end.

Last but not least, regardless of every open-source contribution, whether it's a small fix or a big feature, is a testament to your passion for learning and your commitment to making a difference. Take pride in your effort, for it's the heart of open-source collaboration! ๐ŸŒŸ

ย