GSoC 2017 - Community Bonding Period

It’s been a week since student projects have been announced for the Google Summer of Code program this year — my own proposal being among them. Students and their mentors are currently going through the “Community Bonding Period”, where students are just getting immersed into their open-source communities before the real coding period begins. During this time, I’ve been hanging out on IRC channels and groups specifically for GSoC students and subscribing to mailing lists. But to really get myself back into the groove of consistently coding, I’ve been working on a couple of bugs left over from the open-source course project I was working on during the Spring 2017 semester (which has extended into the summer as my Google Summer of Code Project, yay!) for the past week. In particular, I revisited a bug I started working on late January of this year and hadn’t given it much love since I was swept up by another project.

–insert screenshot of new colour picker design–

Now that I no longer have the stress of final exams, essays, and course projects weighing on my mind, at least for the next couple months, I’ve been able to think about how the past year has been an exciting, fast-track course into the world of Open-Source Software. And I mean this quite literally, I actually took a university course on contributing to open-source projects at the beginning of the year (note: this is the same open-source course project I mentioned above). The course was called the Undergraduate Capstone Open Source Project, which I had only found out about through a friend who was participating in it the semester before. In particular, the project I worked on was with Mozilla’s Firefox Developer Tools where the majority of the semester I have been implementing an outline tool for the CSS Grid Inspector Tool in Firefox’s Developer Tools. So on top of getting comfortable with the general workflow developing for the Firefox Developer Tools code base, I was able to tread new ground on a feature that had been just a design spec before I began working on it. During this process, I worked closely with my mentor for guidance on its implementation as well as navigation on the necessary parts of the code base to achieve weekly goals. It was also during this time I learned about GSoC through my mentor. I truly learned a lot on this project, and aside from honing my JavaScript, CSS, and HTML skills and the general difficulty it takes to learn a whole new code base, it was really the first time I got to seriously work on an open-source project, so naturally I was very interested in applying. My mentor would also be mentoring as part of Mozilla’s Firefox Developer Tools for GSoC as well! I remember juggling between two project ideas to propose for Mozilla’s Firefox Developer Tools, one idea involved the Colour Picker Tool I had worked on with other students as part of the mandatory UCOSP code sprint, and the other being an extension of my work on the CSS Grid outline tool. I really wanted my proposal to be accepted and so I needed to create a proposal whose intent was clear and that there was just enough work to be done so that I had a working product by the end of August. I ended up choosing the grid outline tool as the project of my proposal.

–insert gif of early grid outline prototype –

There were several reasons why I chose the grid outline tool, but these were my top 3 reasons why I had chosen this one in the end:

  • My familiarity and current involvement with it.
  • My skill set and knowledge were closely related with what was needed to develop the project.
  • I just really, really enjoyed it.

I knew the project I would be proposing needed to be something I knew I was passionate about. It needed to be something where — even if it were to be rejected, I would still want to work on it regardless. So, I shot for the stars and wrote that proposal and submitted it before the deadline. Fast-forward to May 4th and I received an email about my project proposal being accepted! Needless to say I’m excited for the next chapter in my journey with open-source software. I’m glad GSoC has something like the “Community Bonding Period” since it’s given me the chance to reflect on this past year as I know things will become pretty hectic as soon as the working period of GSoC begins. You can find my project proposal here.

Written on May 11, 2017