GSoC - The Community Bonding Period
Hii readers, I am back with one more article on GSoC. After the announcement of GSoC results and after sharing my pre GSoC journey with you, GSoC period finally started on 17 may onwards, cheers!!
In case you’ve missed about what GSoC is? and how I prepared for it in my pre GSoC phase? refer to the previous articles. ⬇️
GSoC-A Global Program Enhancing Open Source Culture
Every year as the GSoC program officially starts, it begins with the first phase of the Program that is Community bonding period ✨✨ and it is held from May 17 to June 7.
In this post, I will share my community bonding period experience with CircuitVerse and how you can also utilize this time to get the best out of it.
What is the Community Bonding Period ?
It’s the period of time between announcement of accepted students(May 17) and the time these students are expected to start coding(June 7). This is an excellent time to introduce students to the community, get them on the right mailing lists and working with their mentors on their timeline for the summer.
Community bonding period is the phase of learning more about the project and getting introduced with the community.
🧑🎓 In this period students get familiar with the codebase they have to work and form good communication with mentors and other selected GSoC students lying under the same hood.
Before the execution i.e Coding Period, Community bonding period serves as an important phase for learning, planning and experimenting on things before starting with the concrete implementation of the project.
Community Bonding Period with CircuitVerse
The Start 🔰
After being grateful for being a part of GSoC with CircuitVerse.😀 I recieved a lot of congratulations and cheers from the community CircuitVerse.🤩 🎊
It was an immense pleasure for me after receiving a lot of appreciation from mentors as well !!🤗
As the community bonding period started, I was invited to attend a hand on meet call inorder to get introduced with other GSoC students and mentors. And we also get the opportunity to share our personal experiences.
This was the time when I got the opportunity to meet all the awesome people of CircuitVerse with whom I worked a lot in my pre GSoC phase.
In the meet, I got the opportunity to meet awesome mentors for my project Aboobacker Mk and Nitish Aggarwal. Along with this, we were also introduced with the general GSoC process at CircuitVerse.
I also got the opportunity to have a hand on personal interview session with Satvik Ramaprasad (Founder of CircuitVerse) for further discussion on projects. It was a great learning experience to talk with him on different technical aspects of the project.
The Learning 💻
After a week of introduction with mentors, creation of respective discussion channels and project dashboard for respective projects. It was time to learn more about the codebase and spend quality time discussing the implementation process for the project.
I used my few weeks of community bonding period for learning more about CircuitVerse codebases of different platforms.As I was familiar with a major part of the codebase, consequently I did a short overview on the remaining part of the codebase too and tried to understand technical aspects behind them.
In the learning period, I figured out the complete layout structure of website in detail and also designed some solutions of mine for producing quality I18n architecture for the project.
Along with this a brief overview of simulator controls were done by me.
I was working and discussing with my project mentors Aboobacker MK and Nitish Aggarwal and tried to create an approach according to their expectations for the project.
It was a great experience talking to mentors while discussing I18n architecture for different platforms of CircuitVerse.
The planning ✍️
As I will be working on major 5 platforms written in different technologies. A proper planning was necessary for concrete implementation of the project.
A proper plan was created in order to have major focus on Rails main platform and Simulator. Accordingly, I decided to work on Rails and Simulator(JavaScript side) throughout the GSoC period and grab a few weeks for I18n implementation for other platforms.
I planned to divide Rails and other platforms codebase in different parts, and update my project dashboard with different tasks to be achieved in the coding period.
Proper dissection of tasks and projects was important to give best possible results and an easy to review process for mentors.
The experimentation ☑️
Starting with setting up fresh repositories for all platforms, I started doing some practical things on codebase to get familiar with the pros and cons of my approach and opted for betterment according to it.
On the Rails side I practically performed I18n tasks so that I can be clear on some technical aspects during the coding period. Along with this I worked on I18n solutions for Jekyll, Flutter and DocsifyJs.
CircuitVerse Simulator written in JavaScript needs to be decoupled in future so that it can be integrated in the mobile app, and CircuitVerse software written in electron.
I had a brief discussion about creating rails backend independent I18n architecture for the simulator and accordingly I had to experiment with different JavaScript libraries for it.
For quality code generation, I experimented with different VS Code extensions for yaml formatting and trailing spaces detection.
Tips for Community Bonding Period 💁♂️
- Use this period to design an approach according to the organization’s expectations.
- Set up a development environment and start to get more in-depth knowledge of the codebase.
- “Quality Code Matters” - Research on tools that will help you to generate quality codes.
- Do some practical experimentation of your approach to get more familiar about pros and cons.
For more, stay tuned!!
Best Regards ~ Pavan