The GirlsScript Summer of Code Experience


My primary objective in my summer break was to explore various fields of Computer Science. I was eager to explore various fields in computer science during the summer break. I felt that the MOOCs and courses I had studied were highly theoretical in nature. I was eager to work on some projects to improve my understanding. I came across on the social media which introduced me to the GirlsScript Summer of Code. Having gone through the programme description I felt highly motivated to participate. I had always wanted to work on an Open-Source project. Without hesitation, I applied to participate in the event. 
After going through the logistics of the programme and the projects being offered, I narrowed it down to the projects titled ‘Competitive Coding’ and ‘Project Sangita’. I really liked the idea of these two projects and felt that I could learn something new and interesting. Having interacted with the mentors, I managed to figure out the pre-requisites of the project. Project Sangita was based on the idea of building an online open-source NLP toolkit for Indian languages. It gave me an opportunity to learn about the practical aspects of the field. My mentor for Project Sangita, Samriddhi Sinha, suggested a list of sources that all the participants could go through to get started.
As the programming period began I was assigned the task of finding suitable datasets. I also worked on restructuring the project. The objective was to make things more organized. I learned the basics of file handling in Python as I had to change the structures of various directories in a manner that ensured that the product would still work. At the same time, my mentor asked me to start studying about unit testing. I also worked on the idea of expanding the project to the language of Bengali. I also worked on implementing a tokenizer for Bengali. However, due to the limited time of the project and time constraints of the mentor, there were a few aspects of the project that we could not quite complete. Nonetheless, I did learn a lot about how interactions work within the Open Source Community. At the same time, I learned about certain skills, like unit testing, which plays an important role in a software engineer’s work but isn’t quite taught at the university level.
I also contributed to the project of Competitive Programming by submitting solutions to certain challenge problems which were posed by the mentors and submitting other algorithms. One of the most important things I learned was the importance of making your code readable and understandable to the general audience so that they could figure out what a given code snippet was doing.
The aspect in which I felt the program could improve was that the participation by the mentors on certain projects was not quite adequate during the second half, probably because just as everyone involved in the projects, the mentors too had various other commitments as there academic year started in this period. I feel that it would be a better idea to schedule the programme to take place only during the summer break with no overlap with the academic semesters of the various parties involved. 
Finally, to conclude, I would like to add that I had a great time interacting with both the mentors and the participants alike. The friendly competition with other participants pushed me to contribute more and improve my skills.