GSoC 2021 My Selection Journey and Community Bonding period @CircuitVerse
So before we start with it, let’s get a basic overview of my project.
- About me
Hello Everyone, I am Abhishek R. Zade, currently an undergrad student in Information Technology at All India Shree Shivaji Memorial Society Pune.Savitri Bai Phule Pune University. I am in my third year. Currently, I am working with an open-source organization name CircuitVerse in this year’s GSoC.
- About my project
So my project is on Touch Compatibility with CircuitVerse Website. The current situation of the CircuitVerse website is, it supports only desktop browsers i.e mouse, it does not have any touch support. So I aim to bring out a website for touch devices, so more users can enjoy making circuits on their smartphones.
- How I got into GSoC 2021
Most of the people are curious to know how I got into the GSoC. Lots of them have an opinion of me that I am good at coding, a misconception that “He knows everything” but the truth is that I am just like everyone else. Sometimes I too get confused about what code I am writing, keep wondering for hours and hours. Sometimes I get the solution to my problem, other times don’t. So when the pandemic started I decided that rather than sitting idle, let’s do open source, at least I will be able to understand how software is constructed. Simultaneously I have started learning the flutter. Additionally, my secondary aim was to increase my network in the community. To get better knowledge and understanding of open-source, one must know how to use Git. Git is the most essential part of open source since its version control system help you share, save, and arrange your code. Once I learned Git, I started the search for organizations on the google summer of code organizations page. To get the specification of the exact time, it was June of 2020. I came across the Circuitverse organization with the tag of flutter(mobile-app). The next thing I did was visit the GitHub page of CircuitVerse. I cloned its repository and set up everything on my local PC. Afterward, I began searching for the bugs on the GitHub page posted by anyone so that I can fix them. The bugs were fewer since other developers were working on this project every day. But I kept trying, hoping to find some bugs but I didn’t find any. Once I found a bug but I wasn’t able to fix it. One month passed by without solving any bugs. Every day I read about 1–2 lines of code from random files from the project. One day, I just started a project on a local machine using a flutter run and was testing an app. Here comes the interesting part of our website, which is about online circuit simulation. I was looking for a simulator everywhere but was not able to find one, then I realized that there was no simulator design for mobile apps. I started researching and found that flutter was not well developed then to create a simulator. To tackle this problem, I have come up with a solution according to which we will integrate an internal browser to the app and link it to our web simulator. Here I came to know that our web simulator does not support touch devices. I thought I will wait for some time until someone makes it for touch devices. Again a month just flew away, I was wondering maybe I can make this simulator work for touch devices.
So now I have decided I will accomplish it. Before getting into this I cloned the website repository and set up the server in docker-compose. At first, I started solving bugs so that I can understand the codebase, after some time I started working on the feature GIF-VIDEO recording for the simulator. Successfully implemented it but haven’t yet merged it, there are some minor bugs. But fortunately, I got used to the repository and, finally, now I have started working on touch compatibility. Before starting it, I just posted on our community slack channel that I want to work on this project and one of the mentors replied this project is for this year’s GSoC idealist. When I heard about it, I immediately started researching, it was the month of December, three months before the official idealist announcement. I have started making this proposal, alongside research on how to touchstart on an HTML page. I will share my research in another blog. For now, let’s focus on the selection. So at the start of January, my organization had also applied for GSoC 2021. We all were waiting for the result to be declared. Few months passed by, and as March arrived, so did the result. Our organization was selected! Also, the idealist was officially declared, everyone had started making proposals. I was at that time, preparing my demo video to show it to the mentors. Before the student application process started, I had sent my proposal to many mentors for review. Most of them have given a good review and also helped me to correct the mistakes in my proposal. March ha started student proposal period had also started I have submitted my proposal, the very last day. After submitting I was just waiting for the result, suddenly I received a message on the Slack channel by one of the mentors that there is a small interview and a live demo of the project. I was okay with it as I was prepared for this day. I gave the interview everything went well. I was waiting for the result. May just started, I was busy preparing for the university exam. Finally, the d-day or result day arrived and it was at 11:30 pm, yes you read it right, the time was set globally for everyone.
So it was 11:29 pm, I was still confused as to where to find the result. Suddenly an email came and it said that you have been selected in GSoC 2021 for touch compatibility. I was at the top of the world, exhilarated for an hour after some time, I became normal. This was my journey of getting selected in GSoC 2021.
- Community Bonding Period
After selection, the next thing I received was a congratulation from my mentor and all my friends, teachers, and importantly my family members especially Mom, Dad, and the younger sister. The next day I received a link on the slack channel to the group meeting. It was scheduled for the evening, all students and mentors joined. We had fun talking to each other. After the meeting, next week there was a one-on-one meeting with the founder of CircuitVerse Satvik Ramprasad. He was also one of the mentors for my project. We discussed the project in this meeting. After this, I scheduled a meeting with my other mentor since I was having some confusion regarding the project and also the sync between student and mentor this meeting was particularly related to Phase 1 . Next week I had another meeting with other mentors about Phase 2. Everything was set, and I was just waiting for the coding period.