the Chromium logo

The Chromium Projects

CrOSProposal

Context

Objective

Consolidate ChromeOS developer documentation in a centralized public repository which contains reference and training materials written for both internal and external engineers, the aim of which is to increase proficiencies and productivity. The content is well structured, highly curated, and easy to augment.

Background

The Q2 2023 EngSat CrOS developer survey revealed documentation to be a common pain point for engineers with 50% of the org reporting that documentation does not meet their needs and ‘Poor or missing docs‘ as the top factor hindering productivity. Issues include not knowing where to find resources, missing documentation, and confusing or poorly written content.

Without a high quality, centralized library, teams create bespoke documentation which are variations on a theme (a quick search turns up over twenty Getting Started guides). Not only are efforts duplicated, but these resources get out of date and confuse other developers who find them via search.

External developers (e.g. OEM partner engineers) do not have access to internal documentation and struggle with the limited documentation which is public.

Goals

  1. One authoritative location for CrOS developer documentation.
  2. Documentation and training material for the critical tools, processes, and infrastructure of the development workflow.
  3. Access for both internal and external developers.
  4. Meaningful content structure to help users find what they are looking for.
  5. Resources to enable scalable, high quality documentation creation.
  6. Influencing org culture to prevent bespoke documentation and generally increase documentation quality and availability.

Success Metrics

Proposal

CrOS Developer Library

The library is the authoritative developer reference containing well structured and highly curated documentation and training materials hosted at go/cros-dev-library (Goal 1). The creation of this library involves cataloging the myriad existing resources spread across the org, moving these resources into the library, and deprecating the existing sites. New documentation and training materials are created to fill in knowledge gaps (Goal 2). Since the hosting site is public, internal and external developers will have access and benefit from these improvements (Goal 3).

Content structure

The library is organized by topic in a tree-based hierarchy. Readers intuitively drill down to find the resource they are looking for (Goal 4). Site search also helps users find content. The top level content categories are:

Public access vs confidentiality

The guiding principle when determining which resources should be in the public library is that any information relevant to the developer experience which is non-confidential should be in the library. Confidential information should be in a well-organized location at go/chromeos. Privileged information should be caught in the review process and through automated tooling as part of the CL upload process.

CrOS technical writing resources

g/cros-dev-library-reviewers is a group of volunteers who provide reviews and guidance on technical writing. Templates exist in the Library Administration section of the site which help content authors quickly create high quality material (Goal 5).

Leadership buy-in

CrOS executive leadership approve the creation of the library and encourage investments across the org, including carving out time in OKRs to improve documentation and participate in documentation fix-its. Leads prioritize the library cross-functionally, enabling roles like Tech Writers and DevRel to invest in it. Leads encourage documentation efforts towards the library and discourage creating bespoke resources (Goal 6).

Feedback

A documentation survey is sent out quarterly to understand the needs of readers including overall satisfaction and topics which are lacking adequate documentation. Each document in the library has a link soliciting feedback. The link leads to a buganizer template attached to the CrOS Documentation component.

Plan of record

Phase 0: Catalog

Phase 1: Consolidate

Phase 2: Content curation and creation

Phase 3: Maintenance and feature

Timeline

Phase Status Timeline
Phase 0: Catalog Completed 08/2023
Phase 1: Consolidate In progress 10/2023
Phase 2: Content curation and creation Not started Q4 2023
Phase 3: Maintenance and feature requests Not started Indefinite