Google Summer of Code (GSoC) 2018 with SPDX

How It All Began ?

I had been contributing to scancode-toolkit for quite a while and it took me a few months to get accustomed to the codebase. It was the 12th February, 2018 and the list of accepted mentoring organizations was published. I booted up my laptop in excitement to give the list a glance. When I scrolled through, I was unable to find AboutCode (the organization I was contributing to) in the roll. I was devastated at the unfortunate event and spent the next few hours pondering over my endeavour since the past couple of months.

I had always dreamt of becoming a DOUBLE GSOCER and I knew it wasn’t going to be easy. This would mean I would have to reiterate the entire process, i.e. shortlist an organization and start contributing from scratch ! After a heavy setback, I decided to continue with the struggle and not give up on my aspiration. I found SPDX (Software Package Data Exchange) which is an open standard for communicating software bill of material information (including components, copyrights, and security references). I spent the next few weeks exploring the Python library to parse, validate and create SPDX documents and preparing mockups. Since the project involved lexing and parsing, I had to comprehend the fundamentals of compiler theory. Fast forward to the judgement day; I was busy refreshing the GSoC page, in the middle of the road, with my friend to check the result and here’s what it displayed:

Furthermore, I received a mail from Google confirming my selection for the paramount program.

What’s next ?

The community bonding period is almost over with just a week remaining. I have almost completed upgrading the Document class and initiated a few bug fixes. I would like to heartily thank my mentors @pombredanne and @krysnuvadga for keeping faith in me throughout the process and giving me the opportunity to be a part of the SPDX community. I’m super excited to spend this summer with SPDX and intend to use this blog to post updates and developments.