Participating in Season of Docs 2021 with NumPy
Tags: Technical Writing, Numpy, Google Season Of Docs, Documentation, Gsod

Season of Docs

Organised by Google, Season of Docs is an open source program focused on software documentation. It was launched in 2019 and was met with an overwhelming response. Initially, it was a mentoring program aimed to match open source organisations with technical writers to improve their documentation. Interested technical writers were required to submit their proposals to Google for the selection process. This year the format has been changed to a grant program. Selected organisations had to hire technical writers directly, based on the Statement of Interest submitted by interested technical writers. You can read more here.

Software documentation

Usually, newcomers in an open-source organisation are encouraged to solve documentation issues as “good first issues”. Technical writers are not valued as much as core developers and documentation writing is often perceived as “not real development”. I would beg to differ not only because I am partial to this field but also from my personal experience. Poorly documented software makes it very difficult to understand the project and often reflects in the number of contributors. Melissa Weber Mendonça’s talk on the importance of documentation sums it up beautifully and throws light on the different ways in which documentation enriches a community. Season of Docs certainly highlights the value of good documentation and the requirement for dedicated writers for it.

The application process

I became aware of Season of Docs last year the same way I get to know about most things nowadays- through a YouTube video. For a little context, I am currently a sophomore Computer Engineering undergraduate student. I have always loved writing; it largely stems from my love for reading. I have been managing a technical blog and published a newsletter for my college with my fellow co-EICs, in the past year. I wanted to develop my skills further so I decided to start writing documentation as well.

The interested organisations and technical writers were given a space to find each other in the Season of Docs repository. I did not register myself as a technical writer there as I was unsure whether I was even eligible according to the new format, which stated that this program was primarily to match professional technical writers. Even then, I started checking out organisations in early-mid March and researched a couple that called out to me. Apart from NumPy, the ubiquitous Python package in data science, I chose Cuneiform Digital Library Initiative (CDLI). CDLI drew me in because I had an amateur interest in the Cuneiform script through some pretty fun videos by Dr Irving Finkel. Unfortunately, CDLI didn’t get accepted this year.

I had used NumPy for data analysis before and I thought that there is no better way to learn this tool than to delve deep into its documentation. I spoke to Melissa, one of the mentors at NumPy, to find out if they were open to hiring amateur technical writers for their project. She was very encouraging and told me to discuss my ideas with the community. This led to a discussion in the mailing list to settle upon a definitive list of improvements that could be accomplished in the given time frame.

Before submitting the Statement of Interest, I set up NumPy locally and explored it a bit. I read many blogs and other resources about documentation writing to understand the proposed project better. Going through the documentation issue tracker also helped.

This was my first time writing a Statement of Interest so it was quite an educative experience. I think it is a decisive part of the process. My statement was heavily inspired by the template that Google had provided. They advise keeping it short and to the point. Personally, I would also suggest using tools like Grammarly to make sure there aren’t any errant mistakes. You can have a look at the statement of interest I submitted.

At the end of the application period, there was a public announcement on the mailing list about my acceptance for this year’s project. My mentors, Melissa and Ross, had a chat with me beforehand to assure me that they would be available for help all the time and to not get disheartened by setbacks.

Community bonding at NumPy

As I spent time interacting with the community through the Documentation team meetings, I found out that they are very encouraging people and actively help newcomers get started with contributions. They consider everyone’s feedback and opinions in all community discussions.

Last month, Women in Machine Learning and Data Science organised the Berlin NumPy sprint. It was yet another opportunity to interact with the NumPy community and fellow data science enthusiasts. It was an amazing experience to listen to the experiences of a variety of people in different fields, all bound together with the common love of data science. My pair-programming partner and I had fun working together and closing two issues during the sprint.

The application period itself taught me a lot of things. I found out about the Write the Docs community- a place for technical writing geeks to assemble. I learnt about inclusivity and healthy communication. Sadly these things are not given importance in our education system but they are significant in creating a positive environment for learning. I knew that even if I didn’t get selected as a GSoD participant, NumPy was a great community to be a part of for learning a host of things. Apart from my project, based on high-level restructuring and user focus, there are other projects like enhancing user accessibility that are running parallel in NumPy.

In conclusion

I would encourage people to apply to such programs and be a part of open source communities, to learn skills they wouldn’t get a chance to otherwise. These organisations don’t need everyone to contribute code or documentation to be a valuable part of the community. They welcome users of all levels of expertise to share their thoughts and opinions.

In subsequent blogs, I will discuss my project and my work in the various phases.

Credits