Skip to content

Commit 00aafdf

Browse files
committed
fixing doc quality checklist -- language edits
1 parent a0d02ff commit 00aafdf

6 files changed

+106
-108
lines changed

_data/quality_checklist.yml

+51-42
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
findability:
22
- title: Findable in search
33
description: "The content is indexed in a general search engine and findable when you create searches with the product name and some key tasks."
4+
priority: high
5+
6+
- title: Release notes present
7+
description: "Release notes track changes to the product and documentation."
8+
priority: high
49

510
- title: Site-specific search available
611
description: "The doc site has a site-specific search that lets users search within the documentation site itself."
@@ -14,12 +19,9 @@ findability:
1419
- title: Main organization isn't an FAQ
1520
description: "The content doesn't have an endless FAQ with information that should have been integrated into more logical places in the document."
1621

17-
- title: Version selection available
22+
- title: Version selection is available
1823
description: "If content has multiple versions, the versions are called out visibly in the topic and might have a selector or link allows users to navigate to the other versions."
1924

20-
- title: Release notes present
21-
description: "Release notes track changes to the product and documentation."
22-
2325
- title: Easy path to top 5 pages
2426
description: "There’s an easy path for users to find the top 5 most-visited pages on the site. This requires you to look at metrics to determine these pages, and then assess the flow to those pages."
2527

@@ -34,18 +36,23 @@ findability:
3436

3537
accuracy:
3638

39+
- title: Steps are accurate
40+
description: "The steps in the tasks accurately lead to the results promised by the task, without missing any details. For example, if the instructions say to click a button name, the button is named the same way in the interface. If the instructions say to use a class, the class is spelled as it appears in the code library, etc."
41+
priority: high
42+
43+
- title: Code samples work
44+
description: "Code samples that can be copy and pasted actually work."
45+
priority: high
46+
3747
- title: Content reviewed within past year
3848
description: "Content has been reviewed by a subject matter expert within the past year. Ideally, each topic should include metadata such as the last-reviewed timestamp, last author, and the group that owns the content."
3949

40-
- title: Timestamps visible
50+
- title: Timestamps are visible
4151
description: "The documentation provides a visible timestamp of the last time it was edited so that users can gauge how current the documentation is."
4252

4353
- title: No broken links
4454
description: "Links point to correct pages or are appropriately handled by redirects to equivalent pages."
4555

46-
- title: Steps are accurate
47-
description: "The steps in the tasks accurately lead to the results promised by the task, without missing any details. For example, if the instructions say to click a button name, the button is named the same way in the interface. If the instructions say to use a class, the class is spelled as it appears in the code library, etc."
48-
4956
- title: Instructions are consistent
5057
description: "Information isn't repeated in confusing, redundant, or inconsistent ways. For example, the documentation doesn't explain how to do a task one way in Topic A but then a different way in Topic B. If content is re-used, the re-use is usually single-sourced to reduce inconsistency."
5158

@@ -55,19 +62,18 @@ accuracy:
5562
- title: Deprecated features are noted
5663
description: "Features that are no longer supported (or which have been deprecated) are clearly noted as such in the documentation. Preferably, if a feature has been deprecated, a migration path to an alternative solution is provided."
5764

58-
- title: Functional code samples
59-
description: "Code samples that can be copy and pasted actually work."
60-
6165
- title: App code matches doc code
6266
description: "Code in sample apps matches the code described in the documentation. The sample app hasn't evolved in ways that no longer match the documentation."
6367

6468
relevance:
6569

6670
- title: Key use cases are documented
6771
description: "The documentation doesn't just provide reference information (e.g., auto-generated API documentation) but also explains how to use the API with tutorials guiding users through common use cases and journeys. The content should address the *most common* use cases intended for the product."
72+
priority: high
6873

6974
- title: Code samples exist
7075
description: "<a href='docapis_codesamples_bestpractices.html'>Code samples</a> showing sample ways to use the API (or similar tools) are provided. Ideally, the code samples are available in the user's target language. This might mean providing multiple code samples."
76+
priority: high
7177

7278
- title: Support options noted
7379
description: "Options for contact or support are provided, even if the support merely involves posting to a peer-monitored forum."
@@ -88,22 +94,24 @@ clarity:
8894

8995
- title: "Product overview page answers \"wh\" questions"
9096
description: "The <a href='docapis_doc_overview.html'>overview</a> explains the big picture and describes the problem that the tool or service addresses. Common who/what/where/why questions are answered here."
97+
priority: high
98+
99+
- title: Access and authorization explained
100+
description: "Details about how to get access, permissions, and authorization to use the API are provided. For example, this topic might cover how to authorize an API call with API keys."
101+
priority: high
91102

92103
- title: Overview addresses use cases
93104
description: "The <a href='docapis_doc_overview.html'>overview</a> provides a high-level description of the main use cases or business objectives of the product. This allows users to get a sense of what the API is all about."
94105

95106
- title: Overview has architectural diagram and explanation
96107
description: "The <a href='docapis_doc_overview.html'>overview</a> has a diagram of the main components and how they interact. This provides users with a glimpse of the whole."
97108

98-
- title: Overview has index of assets that product offers
109+
- title: Overview has index of assets that the product offers
99110
description: "If there's an SDK or developer kit that users can download, the contents of this download are described. This is similar to product instructions that start by identifying all parts that should have arrived in a package."
100111

101112
- title: Subsystems have their own overview pages
102113
description: "For larger systems that might have multiple subsystems (e.g., groups of APIs for different scenarios), these subsystems have their own landing pages that resemble the higher-level overview (with use cases, diagrams, getting started links) but scoped to that specific subsystem."
103114

104-
- title: Access and authorization explained
105-
description: "Details about how to get access, permissions, and authorization to use the API are provided. For example, this topic might cover how to authorize an API call with API keys."
106-
107115
- title: Getting started tutorial exists
108116
description: "A <a href='docapis_doc_getting_started_section.html'>getting started tutorial</a> is provided for users to get started in an end-to-end way with the product, producing a sample output that builds their confidence. This topic might provide info on how to sign up, register, get API keys or permissions, and start using the API. (This topic might link to the authorization topic but is more comprehensive in scope. The purpose of this topic is frictionless onboarding.)"
109117

@@ -143,30 +151,32 @@ clarity:
143151
- title: Technical level is appropriate to audience
144152
description: "The documentation's technical level is appropriate to the *target audience* but might not serve every possible audience (for example, total newbies to a programming language might struggle with documentation intended for developers already experienced in that language). Usually, general concepts in a programming language that you assume the audience knows are not explained in the documentation. Instead, your company's product, configuration, and usage are covered in the context of the programming language. One exception is when the implementation requires a non-standard process or workflow that merits some explanation."
145153

146-
- title: Experiential learning paths
154+
- title: Experiential learning paths are available
147155
description: "The documentation provides opportunities for experiential/opportunistic users to start learning immediately through code and trial/error, and for more systematic users to learn by reading concepts first."
148156

149-
- title: Docs favor simplest path
157+
- title: Doc recommend the simplest path when multiple options exist
150158
description: "If there are multiple paths to a solution, the documentation focuses on the simplest path (though other possibilities might be briefly mentioned)."
151159

152-
- title: Docs call out relevant sections in sample app
160+
- title: Docs call out relevant sections in a sample app
153161
description: "In cases where a sample app complements the documentation as a reference implementation, the documentation should refer to different aspects of the sample app."
154162

155163
completeness:
156164

157165
- title: Reference docs follow industry standards
158166
description: "For native library APIs (or other API types), reference docs (auto-generated from source code comments) are available. This might mean <a href='nativelibraryapis_exploring_javadoc_output.html'>Javadoc</a>, <a href='nativelibraryapis_doxygen.html'>Doxygen</a>, <a href='pubapis_openapi_intro.html'>OpenAPI</a> outputs like <a href='pubapis_swagger.html'>Swagger</a> or other reference docs specific to the library. The reference docs should be populated and generally follow tagging standards."
167+
priority: high
168+
169+
- title: Parameter docs have complete info
170+
description: "<a href='docapis_doc_parameters.html'>Parameter documentation</a> typically includes a description, data type, min/max values, sample values, and optional/required usage."
171+
priority: high
159172

160173
- title: Reference content has consistent structure
161174
description: "Reference material such as APIs follow a <a href='docapis_api_reference_tutorial_overview.html'>common structure within each topic</a>, mostly following a request-response type structure. Typical sections include descriptions, parameters, sample requests or usage, and sample responses."
162175

163-
- title: Error messages documented
164-
description: "<a href='docapis_doc_status_codes.html'>Error messages</a> that users can encounter are documented and discoverable through search."
165-
166-
- title: Parameter docs have complete info
167-
description: "<a href='docapis_doc_parameters.html'>Parameter documentation</a> typically includes a description, data type, min/max values, sample values, and optional/required usage."
176+
- title: Error messages are documented
177+
description: "<a href='docapis_doc_status_codes.html'>Error messages</a> that users can encounter are documented and discoverable through search. This supports the <a href='docapiscode_research_on_documenting_code.html#systematic_vs_opportunistic'>opportunistic/experiential user behavior</a>."
168178

169-
- title: Response includes both sample and schema (REST APIs)
179+
- title: Responses includes both sample and schema (REST APIs)
170180
description: "The <a href='docapis_doc_sample_responses_and_schema.html'>response documentation</a> for REST APIs provides both a sample response and schema. The response provides an example of what might be returned, while the schema defines all possible elements that might be returned and describes attributes such as data types and whether the elements are required or optional in the response."
171181

172182
- title: Troubleshooting section exists
@@ -178,22 +188,27 @@ completeness:
178188
- title: Locale limitations noted
179189
description: "If a feature is available only in certain contexts (locales, languages, platforms, roles, versions), that information is noted clearly in the feature. For example, an API that is only available for enterprise versions might have a label that says \"Enterprise Version Only,\" or if only available for a particular platform, might say \"Linux Only\" or the equivalent."
180190

181-
- title: Error messages are helpful for troubleshooting
182-
description: "<a href='docapis_doc_status_codes.html'>Error messages</a> help users course correct by providing helpful hints for addressing the error. This supports the opportunistic/experiential user behavior."
183-
184-
- title: Unhappy path documented
191+
- title: Unhappy paths are documented
185192
description: "If there are pitfalls or other traps, gaps, and gotchas to avoid, these are noted in the documentation rather than hidden from the user. A section called <a href='/2010/12/16/known-limitations/'>Known Limitations</a> often contains this information. The documentation doesn't lie or mislead the user but rather is <a href='/2017/07/13/transparency-in-documentation/'>transparent, honest, and helpful</a> even if it means exposing the product's warts and revealing problems users will like encounter."
186193

187194
readability:
188195

196+
- title: Grammar isn't distracting
197+
description: "Sentences are grammatically correct and read well, without distracting the user or calling attention to the language."
198+
priority: high
199+
200+
- title: Placeholder text in code is visually apparent
201+
description: "In code samples, placeholder text that needs to be customized is clearly indicated to the user. It's not confusing what is code and what needs to be changed, like `APIKEY`."
202+
priority: high
203+
189204
- title: Sidebar nav has consumable organization at a glance
190-
description: "The sidebar navigation lets users take in a sense of the whole while also allowing users to expand more details as desired. The sidebar isn't a massive list of seemingly endless scrolling and expansion + expansion + expansion but divides up doc sets into logical groups, like chapters in a book. For systems with large numbers of topics, progressive disclose techniques might be implemented across primary, secondary, and tertiary levels of information."
205+
description: "The sidebar navigation lets users take in a sense of the whole while also allowing users to expand more details as desired. The sidebar isn't a massive list of seemingly endless scrolling and expansion + expansion + expansion but rather divides up doc sets into logical groups, like chapters in a book. For systems with large numbers of topics, progressive disclose techniques might be implemented across primary, secondary, and tertiary levels of information."
191206

192-
- title: Sidebar nav highlights current topic
207+
- title: Sidebar nav highlights the current topic
193208
description: "As the user navigates each topic, the sidebar navigation makes it clear where the user is in the navigation (for example, the topic highlights clearly and the navigation sticks open at that level). Breadcrumbs might also help establish site context."
194209

195210
- title: Context remains consistent when navigating
196-
description: "When a user clicks topics in the navigation, the UI doesn't shift context in jarring ways, such as unexpectedly taking the user to another doc set or changing stable navigation areas like the sidebar and header (which are usually consistent for every page). This jarring navigation often happens when sidebar entries point to topics in other doc sites. If this is the case, the external links have an icon indicating the link takes them to another site."
211+
description: "When a user clicks topics in the navigation, the UI doesn't shift context in jarring ways, such as unexpectedly taking the user to another doc set or changing stable navigation areas like the sidebar and header (which should be consistent for every page). This jarring navigation often happens when sidebar entries point to topics in other doc sites. If this is the case, the external links have an icon indicating the link takes them to another site."
197212

198213
- title: Doc types have consistent names across product docs
199214
description: "Common topics have similar names across doc sets in the developer portal. For example, the Overview, Getting Started, Troubleshooting, Glossary, Release Notes, and Reference are named consistently to help users understand how to navigate the site. One doc set shouldn't call a topic \"Latest updates\" and \"First steps\" while another uses \"What's new\" and \"Quickstart.\""
@@ -207,26 +222,20 @@ readability:
207222
- title: Glossary exists
208223
description: "Unfamiliar words and jargon are defined in a <a href='docapis_glossary_section.html'>glossary</a>. At times, the glossary terms are linked to their glossary definitions."
209224

225+
- title: Glossary entries match the actual terms used in the content
226+
description: "Glossary terms (as defined in the glossary) are actually used consistently across the documentation. For example, one doc set doesn't use a certain term while another uses a synonym of the term, with the admin UI using yet another term. If the glossary lists a term for a particular concept, the documentation content consistently uses that term."
227+
210228
- title: Code samples have proper formatting and highlighting
211229
description: "The formatting in code samples follows standard white spacing, line breaks, and other syntax for the language. Code syntax highlighting appropriate to the language has been applied to increase the code's readability."
212230

213-
- title: Responsive view presents content in readable way
231+
- title: Responsive view presents content in a readable way
214232
description: "The content can be read on a mobile device (e.g., iPhone) in a usable way. For example, the responsive view allows users to navigate the sidebar links and view code samples."
215233

216-
- title: Placeholder text in code is visually apparent
217-
description: "In code samples, placeholder text that needs to be customized is clearly indicated to the user. It's not confusing what is code and what needs to be changed, like `APIKEY`."
218-
219-
- title: Navigation mechanisms consistent across docs
234+
- title: Navigation mechanisms are consistent across docs
220235
description: "Navigation mechanisms work consistently across all docs in the developer portal. For example, in one set of docs, if top-level folders expand to show child items rather than opening to their own page, the same behavior is found in other docs."
221236

222237
- title: Sentences and paragraphs are somewhat short
223238
description: "Sentences are somewhat short, paragraphs are relatively small, and subheadings are frequent. A readability score will place the content at the high-school level, not college."
224239

225-
- title: Glossary entries match terms used
226-
description: "Glossary terms are used consistently across the documentation. For example, one doc set doesn't use a certain term while another uses a synonym of the term, with the admin UI using yet another term."
227-
228240
- title: Language uses active voice
229241
description: "The language uses active voice (where warranted) with clear subjects and verbs positioned closely together."
230-
231-
- title: Grammar isn't distracting
232-
description: "Sentences are grammatically correct and read well, without distracting the user or calling attention to the language."

_docs/code_tutorials/docapis_research_on_documenting_code.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ For their research, they "asked software developers to solve a set of pre-define
126126

127127
There are a lot of great observations and conclusions in this article. I'm just summarizing and highlighting the information here. I recommend that you [read the article](https://sigdoc.acm.org/cdq/how-developers-use-api-documentation-an-observation-study/) for the full details.
128128

129-
### Systematic versus opportunistic behaviors
129+
### Systematic versus opportunistic behaviors {#systematic_vs_opportunistic}
130130

131131
The authors present some previous research about *systematic* and *opportunistic* learning behaviors. These terms are typically how previous researchers describe the contrasting user behaviors.
132132

0 commit comments

Comments
 (0)