Skip to content

Google Season of Docs 2021

Joshua Beretta edited this page Mar 23, 2021 · 2 revisions

Update and migrate our API documentation

About KoBoToolbox

KoBoToolbox is a suite of tools for field data collection for use in challenging environments. Our software is free and open source. Most of our users are people working in humanitarian crises, as well as aid professionals and researchers working in developing countries. Our teams of developers and researchers are based in Cambridge, MA and many other places around the world.

Quickly collecting reliable information in a humanitarian crisis – especially following a natural disaster such as a large earthquake or a typhoon taking place in a poor country – is the critical link to saving the lives of the most vulnerable. Understanding the population’s needs is often neglected for lack of quick means to gather and analyze this crucial information. KoBoToolbox, developed by the Harvard Humanitarian Initiative, is an open source suite of tools for data collection and analysis in humanitarian emergencies and other challenging environments that was built to address this gap. KoBoToolbox is funded entirely through generous grants and donations from our partners.

The problem

The majority of our current user-facing documentation is situated at our support page where users can find solutions and assistance to some of the platform's features. Although this is likely sufficient for getting started, it leaves advanced users with little support and they are left with having to comb through fragmented and incomplete API documentation here and here or through past discussions on our community forum. In addition, both the support and API documentation contain existing holes and have started falling further behind with recent updates and major feature additions.

There are been repeated requests by the community to improve and/or create API documentation to assist them in their critical work.

Scope of the project

The project will focus on the following:

  • Audit the current documentation to review the language used, completeness and whether it correctly reflects the current state of the API
  • Audit the community forum and where users are discussing the usage of the API
  • Migrate and merge the existing fragmented Django-style API documentation to a new platform for easier reference and maintenance
  • Create new documentation based on findings from the audits and new features
  • Create code snippets in Python and Shell to accompany the text (or coordinate with the development team to assist in this)
  • Develop a plan for community feedback on the documentation and a process of keeping the documentation updated

Work that is beyond the scope of this project:

  • Write tutorials based on the updated documentation (to be created at a later stage)
  • Restructuring the existing Django-documentation (this will be handled by the development team once migrated to a new platform)

Required knowledge and skills:

  • An understanding of RESTful APIs and preferably development experience or familiarity with Python
  • Communicate technical language to be understandable by a largely non-technical community
  • Ability to work with the development and support team to craft accurate and relevant documentation
  • Familiarity with Markdown and Git/GitHub is a plus

We estimate that a period of three months is sufficient for this work, depending on the writer's time commitment.

Measuring the project's success

  • A single location/repo where all existing, updated, and new API documentation is present
  • Reduced number of issues raised in the forum for topics covered in the documentation
  • Increased community contributions to the documentation and engagement with it

Volunteers

  • Josh (@joshuaberetta)

Contact info

Technical writers interested in working on this project should send an email to [email protected] with links to your technical writing work or portfolio/CV.

Project budget

Budget item Amount Running Total Notes/justifications
Technical writer 10,000 10,000 Audit, update and create new documentation
TOTAL 10,000