GSoC stands for Google Summer of Code. To quote about page of the GSoC website:
“Google Summer of Code is a global program focused on introducing students to open source software development.”
Many open source organizations apply to the program. Then you apply by writing a proposal for a project in one of the selected orgs. If your proposal is accepted, Google awards you with a stipend for working full time for 3 months with that particular organization.
For more details on how the program works and how you can get selected, refer to this article – watchout.iitr.ac.in/2019/05/summer-diaries-gsoc.
I wrote a proposal for a project in Zulip (a team chat platform) and got selected.
In first year, I saw my seniors apply for the program. I tried but failed. Though the effort that I put into searching for an organization turned out to be helpful. I discovered Zulip and found the community to be welcoming and extremely helpful.
I started contributing to Zulip in December 2018. Searched for an issue that I could get started with easily as a new contributor and submitted a pull request for the same. All the issues on Github are appropriately labelled, so that really helped. By March I had around 40 commits on the main repository.
It’s not just about how good your proposal is for getting selected. What matters more is how much you contribute to the organization. By contributions I mean submitting pull requests, opening issues, and even getting involved in the community.
If you want to apply for GSoC in future, you should pick an organisation based on your interests and then prioritise the one which has an active community. You really do get to learn a lot of things when working in such an environment.
All the contributors were informed that the projects we’d be working on would be flexible and would change during the course of time. Unlike many other organisations, all the GSoC interns work on many different projects, even if some of them weren’t part of their proposal.
I like to have a bunch of different things to work on at the same time. On a regular basis, I work on a project that was mentioned in my proposal. Apart from that, I am frequently tagged in issues and PRs that need my attention.
Since it’s a remote internship, timings are flexible. Some (people from India) tend to work at night when people on the other side of the globe are awake, while some are awake during the Indian working hours. In any case it’s much better to fix a particular time to work.
My mentor regularly asks me what I have been working on. At Zulip, we have a dedicated stream on the chat called “checkins” where members post about what they’re working on or even something that’s happened in their lives. It’s a nice way to be in touch with everyone :)
One really interesting thing is the planned discussions. These take place frequently and the topics vary from debugging to history of Zulip. Of Course they are knowledgeable. Everyone is involved and you get to hear a lot of interesting opinions.
Sometimes you face challenges but that’s where you ask the community. Everyone is extremely helpful. It hardly takes any time to resolve an issue that you face. Overall my experience here has been great.
GSoC is unlike other internships. Here, you’re actually expected to deliver. You’re treated the same way any other person working in the organization is. It’s not hard to “crack” GSoC, you just need to find an organization that aligns with your interests (and hopefully it has an active community).
I’ve liked my time working at Zulip. If someone wants to contribute, feel free to reach me out. Of Course you can also leave a message on the open chat. Someone will definitely help you to get started with an issue that you find interesting. Or you could just give it a visit and get to know what Zulip is.