How I crack GSoC 2022
Tags: gsoc, google, opensource, beginners
Published: 2022-05-26 16:46:09

How I crack GSoC 2022
## What is Google Summer of Code?

> It is not an internship at Google, or anything working with Google. Make sure your relative does not post it on the WhatsApp group, so…..

In simple words, google summer of code is a program that promotes or provides an opportunity for [Open Source](https://opensource.com/resources/what-open-source) Contributions in Open source Organizations.

First Google announces the program officially and starts the application for an Open source organization to participate, then the open-source organization is announced along with its projects for GSoC, then contributors contact and submit the proposal for a project at the respective organization. Then after evaluating the proposal, the organization Admin sent the list of students from their end, then google provides the slots and announces the accepted contributors and Projects for each organization.

Learn more about GSoC, [here](https://summerofcode.withgoogle.com/).

Eligibility Criteria, [here](https://summerofcode.withgoogle.com/terms/contributor).

## When should I start?
Right now is the best time, the time when you get to know about it is the best time to start.
But mind that "Selection is not confirmed".

## Workflow for getting started
- Search for Organization(Most Important and difficult task)
- Start contribution

### How to choose the right Organization?
Everyone had their perspective to choose the number of organizations! But I will prefer to choose only 1. I mean you can explore many organizations but start contributing to 1 only.

You should first choose the organization on the basis of your interest. In my case, I was searching for organizations based on:
- web Development
- Javascript technology
- Past GSoC project
- Supportive community

> If it is taking you 1–2 weeks, trust me it is okay and well worth it. Do not aim for a goal in hurry.

### How to start contribution?
- Go to the community channel to interact with members and mentors.
- If you are a beginner, checkout for issue with `good first issue` as a label.
- If it is taking time to get your first PR pulled and merge, don't worry, my first PR is not even merged yet, the rule is never stopped.
- Go for the comparatively higher issue next time. Higher issue does not mean with the number of codes, I mean complexity.

### Important points regarding contributions?
- Quantity never matters, Quality matters. One of the contributors with more PRs than me did not get selected.
- Your learning curve in the community should be exponential.
- Try to review PRs as well, which can improve your understanding. I always try to read the PRs of other contributors and past GSoC fellows, it clears my thoughts and knowledge by getting to know other's approaches.
- Try to participate or attend community meetings and threads!
- Don't raise an issue for anything you see in the deployment, sometime it is expected, so always try to raise a thread in the community, after getting approval there, raise an issue in Github.

## My journey

I got to know about CircuitVerse organization through an open-source event in July 2021, I participated in that and won 100$ gift vouchers as well. My first contribution, [PR](https://github.com/CircuitVerse/Blog/pull/88), it was just SCSS code. I want to thank Nitin and Shreya Prashad for guiding me.

And then the Fun Began!!!

I decided to continue my contributions to CircuitVerse and then I got to know about the CircuitVerse GSoC experience. I reach out to the CircuitVerse fellow GSoCers and trust me they were really supportive and encourage me to contribute. I want to thank Pavan Joshi, Ruturaj Mohite, Manjot, and Ayan Biswas for that, they are my mentors now.

I was not aware of Ruby on Rails at all at that time. It was my first time contributing to a large codebase, so it took me around 15 days to set up CircuitVerse Main Platform.
I got my first `good first issue` in CircuitVerse, [PR](https://github.com/CircuitVerse/CircuitVerse/pull/2360). 

Then I started learning Ruby on Rails. Learning while implementing it into a large codebase is the best way to understand, trust me. Then I contributed my first Rails code-based PR and got merged. I got inspired by Aboobacker(Org Admin & my mentor) and Satvik Ramaprasad(Founder). It gave me more confidence. I always try to challenge myself 1 step ahead of issues.

On November 28th, 2021, the organization admin invited me to join the GitHub community as a member for my consistent contributions.

> Honestly, I was not aiming CircuitVerse for GSoC only but for the experience and for the open-source. I am always enthusiastic to solve the issues, participate in community meetings, and review others' PR. I got very comfortable with the CircuitVerse environment.

I try to contribute to other repo as well as CircuitVerse.
Checkout My All contributions [here](https://github.com/pulls?page=1&q=is%3Apr+author%3Avedant-jain03+archived%3Afalse+user%3ACircuitVerse).
The organization announces its expected Projects on the wiki before the official GSoC site to get the maximum time to draft the proposal.

### My project selection!
I selected Project 2: CircuitVerse Platform Improvements, I selected the project because:
- I had major contributions on the main platform only, so I was very comfortable with the whole platform codebase.
- Tech stack required.
- Scope and need.

### Proposal Drafting
A proposal plays a very vital role in selection especially when there is more than 1 approaching active contributor.
on 7th Feb 2022, CircuitVerse announce the Projects on the wiki and 19th April was the deadline. I had enough time to make a good proposal, I never hurried, I planned to review my first draft by 20th March and I did on 23rd March.
So, there were mainly 6 features that need to be implemented so I first start with the feature under my understanding.
I discussed my approach towards each point with mentors which helped me to understand the expectation of the mentors as well. This point is very important as I was taking some of the features differently but they were meant to do something different, this small misconception can result in a bad choice. I never think ashamed while talking to mentors. I always pinged them whenever I need, not necessarily for small issues.

Finally, I drafted my proposal using the template given by the Organization.

Timeline is one of the most important judging criteria, so choose or draft the timeline wisely.

#### Key Points
- Take time to research the scope and needs of the Project.
- Ask mentors for any doubts without hesitation.
- Choose the approach wisely, if you are not able to add the final code, you can add pseudo code.
- Draft the timeline section wisely.
- Review your proposal 2, 3 times. I reviewed it 2 times.
Do not stop your contributions after proposal submission, be active in the community.

I had my interaction interview as well for the GSoC.
And finally…….

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tji722b22yz3w4ft4zk5.png)

I was so happy, I remember that I shouted out loud for almost 5 minutes saying yes, f***, I did it, ab bol.

But I had many rejection stories and I never celebrated this thing.

**GSoC is my first ever life achievement that satisfied me.**

There are many fellows who got accepted in their 1st, 2nd, or even 3rd attempt as well. You should never give up. It will make sense after getting it. 

I tried GSoC'21 but now I realize that I was not prepared at that time and got Selected for GSoC'22 because I don't give up and try my best.

If I can so do you….

Best of luck.

If you have any doubts, connect with me in:

[Twitter](https://twitter.com/vedantj_03).

[Linkedin](https://www.linkedin.com/in/vedant-jain-781006145/).

I will post more blogs on this platform, so follow me.