Season of Docs is Google's annual program that fosters collaboration between open source projects and technical writers.
Season of Docs is a unique program that pairs technical writers with open source mentors to introduce the technical writer to an open source community and provide guidance while the writer works on a real-world open source project. The technical writer, in turn, provides documentation expertise to the open source organization.
Projects can cover a wide range of fields including Cloud computing, operating systems, graphics, medicine, programming languages, robotics, science, security and many more. Season of Docs is not a recruiting program or an internship but it does provide invaluable experience and looks great on a resume!
Rocket.Chat has applied, but has not been selected for the 2021 Google Season of Docs program. We intend to try again in 2022, and like to thank Google for the kind consideration this year.
Working with core developers and the community team at Rocket.Chat this is an opportunity to help other developers get to the code faster, and start working on code and contributing to Rocket.Chat more easily. Rocket.Chat has different methods and SDKs that can be difficult to navigate for new developers and it can take a lot of time to get them up to a point where they can contribute code. Documentation for setting up development environments is scattered and fragmented and needs bringing together in an easy to read and understand format. This will include methods for setting up libraries such as the JS SDK, core server code, and mobile application development code
In particular, our JS SDK is a library of code written in JS that offers an easier interface to communicate with a Rocket.Chat server providing APIs to be called from a JS code that executes commands on the server, like send a message, or retrieve data, like get the list of rooms, abstracting all the logic necessary to handle the communication with the server side. The writer will be working with Rocket.Chat backend and frontend leads to improve the documentation of all JS SDK methods, from the initial setup of how to get the library and install it to the list of methods, how to use them and the expected returned data. This is an exciting opportunity to work on a cutting edge project with a dynamic group of experienced developers and team members. Current documentation is under the JS SDK repository README
As with many open source projects, Rocket.Chat attracts a large number of young and often inexperienced developers.
Rocket.Chat has an enormous and complex code base. New contributors often feel frustrated at being unable to get a test setup running quickly and can lose interest and look for an easier project.
Currently the documentation on getting them started with a development environment is fragmented. Developers need to spend time on basic setup rather than coding, and it is frustrating for new users..
We believe that better written documentation will reduce the time existing developers need to spend on helping new developers with development setup which can then be spent on actual coding issues. Rocket.Chat currently hosts documentation with gitbook and analytics in the form of Pageviews and Ratings are available. As we intend to create entirely new content pulling information from a variety of sources there will be no direct comparison of usages. However, we can check an overall views count of existing page content and then compare this with the new pages. We will use these metrics to measure the success of this project:
pageviews of the rewritten docs
percentage of rating above 4
total count of ratings
We will develop a benchmark of the above metrics against both:
the documentation before rewrite
other Rocket.Chat documentation pages (admin guides, user guides, and so on)
Gitbook also has full text indexed searches and we will analyze search terms and results to establish additional metrics of "interest" in the new documentation. We expect to see significantly increased interest in the new documentation as we push to widen our community.
In addition, we believe we will see a decrease in simple developer support requests, more pull requests and code contributions, and a higher retention of new developers who want to try developing with Rocket.Chat, especially for the GSoC 2022 season. We will measure and track these metrics as indicators of the project's success:
(normalized) developer support requests
pull requests activities
retention of developers for the GSoC 2022 season
We anticipate the budget for this project to be USD $12,000 comprising of:
Technical writer to re-structure and re-write the technical guides, and to write the JS SDK documentation $8000
Stipend for 3 x Volunteers to help in proof reading and production of graphics and other assets $1500
Project stickers and T-Shirts x 10 $200
Contribution to downline non-profit for assistance with design and volunteer search $300
Organization's participation in administration, mentorship of doc systems and tech project, and reviewing of content $2000