Canonforces

by Kanish Bodhwani22/1/2022

Introduction

Canonforces is a tool for competitive programmers who enjoy engaging in friendly code competition with other programmers and building professional connections. We are leveraging the Codeforces platform for their open APIs to retrieve user data from Codeforces and display it in a beautiful dashboard. Users are able to create friends and invite them for competitions.

I got an opportunity to work on it during Foss Overflow 2021, which gave a platform to many other students like me to realise the power of contribution in open source and teamwork too. This was undoubtedly a very enriching experience and also a good kickstart to look forward to GSOC. This is the best project that I've worked on and I learned so many things during this program only. I built the whole project from scratch and we have features like showing users stats and user profile to better engage with users. I will be more than delighted to continue contributing to Canonforces in future to give it a perfect shape as proposed.

Experience

In my initial days, I learned typescript because writing in with Next is quite tough. I was majorly active in solving real world problems and building products of great use-cases. This was my first meaningful collaboration in an open-source project. I applied for this program because Project Canonforces caught my attention. I could relate to the concept of learning to code, I was ready to not only apply to work in it with some of the new ideas that could be built withing the app but also learn typescript from scratch to implement it all by myself. I had been contributing to open-source programs before but never really understood how impactful open source contribution can be.

I was lucky enough to have an amazing duo of Mentors, @Sudhir and @Adarsh , who were always willing to assist me. We used to communicate often via the company's own Discord server, and because to their help, I never felt as like I was being abandoned as is more often the case. In a month, I began from zero and currently, I am working on implementing messages and users followers which feels super amazing. Through this program, I have gained enough confidence to continue contributing to open source programs! On top of that, this was a paid program and some cool swags are also being given to all the selected participants!

Major Take-aways

  1. Learn to interact with codeforces API.
  2. Learn to work with Typescirpt.
  3. Idea of contest making is being added.
  4. A stout foundation to prepare for Google Summer Of Code.
  5. The Art of writing a "Clean Code" with testing.
  6. Work on a project you enjoy since it's one you relate to.
  7. Made a cool connections with people and mentors.

Special thanks to @Sudhir, @Adarsh who helped so much during this program. I truly got to learn a lot from them.