--- title: "Towards Great Documentation: Behind a CNCF-Led Docs Audit" weight: 4 tags: - docs - dx --- {{% button href="https://youtu.be/a9bjo4poYGY" style="warning" icon="video" %}}Watch talk on YouTube{{% /button %}} A talk about the backstage documentation audit and what makes a good documentation. ## Opening * 2012 the year of the Maya calendar and the mainstream success of memes * The classic meme RTFM -> Classic manuals were pretty long * 2024: Manuals have become documentation (hopefully with better contents) ## What gets us to good documentation ### What is documentation * Docs (the raw descriptions, quick-start and how-to) * Website (the first impression - what does this do, why would I need it) * README (the GitHub way of website + docs) * CONTRIBUTING (Is this a one-man show) * Issues * Meta docs (how do we orchestrate things) ### Project documentation * Who needs this documentation? * New users -> Optimize for minimum context * Experienced users * User roles (Admins, end users, ...) -> Separate into different pages (Get started based in your role) * What do we need to enable with this documentation? * Prove value fast -> Why this project? * Educate on fundamental aspects * Showcase features/uses cases * Hands-on enablement -> Tutorials, guides, step-by-step ### Contributor documentation * Communication channels have to be clearly marked * Documented scheduled contributor meetings * Getting started guides for new contributors * Project governance * Who is going to own it? * What will happen to my PR? * Who maintains features? ### Website * Single source for all pages (one repo that includes landing, docs, API and so on) -> Easier to contribute * Usability (especially on mobile) * Social proof and case studies -> Develop trust * SEO (actually get found) and analytics (detect how documentation is used and where people leave) * Plan website maintenance ### What is great documentation * Project docs help users according to their needs -> Low question to answer latency * Contributor docs enables contributions predictably -> Don't leave "when will this be reviewed/merged" questions open * Website proves why anyone should invest time in these projects? * All documentation is connected and up to date ## General best practices * Insular pages: One page per topic, preferably short * Include API reference * Searchable * Plan for versioning early on (the right framework is important) * Plan for localization ## Examples * OpenTelemetry: Split by role (dev, ops) * Prometheus: * New user content in intro (concept) and getting started (practice) * Hierarchies includes concepts, key features and guides/tutorials ## Q&A * Every last Wednesday in the month is a CNCF technical writers meeting (CNCF slack -> `#techdocs`)