GSoC 2020: What a Great Adventure! 🧗

Rajitha Warusavitarana
5 min readSep 12, 2020

Google Summer of Code results was announced on the 8th September. I am pleased to share that I have successfully completed the adventure I started with the SCoRe Lab community. It has been an amazing and enriching period where I got to improve my technical and interpersonal skills.

Climbing a mountain isn’t easy. It requires hard work, focus and commitment. Strategic thinking would be an added advantage too. At the same time, there are amazing people who encourage, guide and help to reach awesome destinations. I take this moment to express my gratitude to each and every individual that helped me along the way!

Photo by Benjamin Davies on Unsplash

Most of the open-source projects are maintained through voluntary work. In an open-source organization project mentors and organization admins plays a vital role throughout the Google Summer of Code program as volunteers. They make sure the students and projects get the maximum from the opportunity provided by Google Open-source. My mentors helped me a lot to achieve my project goals. They were very active and always ready to help whenever I had an issue. Their suggestions and reviews were very useful to improve the quality of the work I carried out. I am extremely grateful for my mentors Rajika Imal, Rumesh Eranga Hapuarachchi and Lakindu Gunasekara who spent their valuable time mentoring the Node Cloud project. I would like to give my special thanks to Rajika Imal for guiding me in the code generator and providing a high-level idea of the components in a code generation tool. The SCoRe Lab community was really supportive throughout the whole journey. Thank you SCoRe Lab for this wonderful opportunity!

Furthermore, I would like to thank Guhanathan Poravi sir for encouraging students to participate in extra-academic activities and supporting them to go above and beyond. I would also like to remember Pasan Missaka and Anuranie Samath-Hettiarachchi who helped me in the initial stages when I started learning cloud computing concepts.

Learning outcomes

I started contributing to the Node Cloud project in 2019. Since then I have learnt a lot from the Node Cloud project. During the Google Summer of Code program, the main goal was to integrate a code generation component to the project. Even though I was familiar with the Node Cloud project and cloud services before, code generation was something new to me. It was challenging to understand the concepts of abstract syntax trees, parsers, transformers and compilers. However, with the help of online materials and mentors I was able to apply those concepts and integrate the code generation tool in Node Cloud. I am really happy for taking up this challenge and successfully completing the project. GSoC helped to gain many technical skills. I learnt the Typescript compiler API and deeply about transformers where source code can be transformed to generate new source code. As a part of the project, I had to analyze many SDKs of several cloud providers which made me more knowledgeable in cloud services and their functionalities. After implementing the code generation tool the next goal was to automated the API documentation process, as a result of that I learnt the JSDoc framework which is widely used to generate documentation for JavaScript projects. The code generator was improved to automatically insert JSDoc comments to generate the API documentation. During the Google Summer of Code program, I wrote blog articles about the project progress where I improved my writing skills too.

Blog articles

  1. GSoC 2020: Beginning of a New Adventure
  2. GSoC 2020: Getting familiar with the playground
  3. GSoC 2020: One more week left in the community bonding period
  4. GSoC 2020: Coding is Official!
  5. GSoC 2020: Parsing, Transforming and Generating
  6. GSoC 2020: Finally! Automated code generation for Node Cloud Azure plugin
  7. GSoC 2020: Diving into Google Cloud SDKs
  8. GSoC 2020: Easy package management with Lerna
  9. GSoC 2020 : Automated code generation using Google cloud Client based SDKs
  10. GSoC 2020: Completing the Transformers for Google Cloud plugin
  11. GSoC 2020: Tasty Testing with Mocha and Chai ☕️
  12. GSoC 2020: Documentation is equally important as code 📚
  13. GSoC 2020: Working on the Final Touches 🖌️
  14. GSoC 2020: 📢 Ready to hear some awesome news?

Evaluation Feedback

GSoC first evaluation feedback
GSoC second evaluation feedback
GSoC Final evaluation feedback
Google Summer of Code certificate

All the work I carried out can be found in the final submission document.

What’s Next?

This beautiful adventure of Google Summer of Code 2020 has come to an end, but there is no end game what I am doing with open-source. I am really looking forward to continuing my contributions towards the SCoRe Lab community and open source in general! Especially on the projects which are related to cloud engineering. The Hacktoberfest festival falls on the next month, which is a month-long celebration of open-source software. The previous year Hacktoberfest helped me to get on with open-source and for this year’s Hacktoberfest I am planning to create some good first issues in the Node Cloud project for newcomers. I believe that this will help people to find their interest in open-source and to the SCoRe Lab community as well.

I am going to stop here concluding the last article about the Google Summer of Code experience.

Thank you ✌️✌️

--

--