Skip to content

Commit f8d659f

Browse files
committed
update whats new
1 parent 00aafdf commit f8d659f

8 files changed

+132
-13
lines changed

_docs/introduction_to_rest_apis/whats_new.md

+4-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ The following are the most recent updates to the API documentation course.
1818

1919
## January 2021
2020

21-
* Revised the content in the [Metrics and Measurements](docapis_metrics_and_measurement.html) section as follows: Consolidated the first-level checkliist and second-level checklist into a [single checklist](docapis_quality_checklist.html). Removed the approach for quantifying each criteria into a score and weighting that score with the criteria's importance. This approach was something I experimented with but ultimately found that it didn't work in practice.
21+
* Revised the content in the [Metrics and Measurements](docapis_metrics_and_measurement.html) section as follows:
22+
* Consolidated the first-level checkliist and second-level checklist into a [single checklist](docapis_quality_checklist.html).
23+
* Removed the approach for quantifying each criteria into a score and weighting that score with the criteria's importance. This approach was something I experimented with but ultimately found that it didn't work in practice.
24+
* Added a [lightweight version of the checklist](docapis_quality_checklist.html#short_version) that includes only two criteria from each category.
2225

2326
## December 2021
2427
* [PDF and eBook formats](docapis_formats.html). Created PDF, Kindle, and EPUB versions of the course that you can download.

_docs/metrics_and_measurement/docapis_metrics_and_measurement.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ weight: 13.0
66
sidebar: docapis
77
section: metrics
88
path1: docapis_metrics_and_measurement.html
9-
last-modified: 2021-02-06
9+
last-modified: 2022-02-07
1010
---
1111

1212
Metrics and measurement addresses ways to measure API documentation quality and how to track your progress on improvement. You can use the quality checklist here to review essential components of documentation and decide how your API docs measure up. The checklist can be a way to investigate, analyze, and interrogate your documentation from another perspective and discover ways to improve it.

_docs/metrics_and_measurement/docapis_metrics_assessing_information_quality.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ weight: 13.2
66
sidebar: docapis
77
section: metrics
88
path1: docapis_metrics_and_measurement.html
9-
last-modified: 2022-01-31
9+
last-modified: 2022-02-07
1010
---
1111

1212
In the previous topic, [Measuring documentation quality through user feedback](permalink: docapis_measuring_impact.html), I explained the challenges of getting feedback from user surveys as a way to measure documentation quality. In this section, I'll survey the landscape on criteria and rubrics for assessing documentation quality.

_docs/metrics_and_measurement/docapis_metrics_measuring_impact.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ weight: 13.1
66
sidebar: docapis
77
section: metrics
88
path1: docapis_metrics_and_measurement.html
9-
last-modified: 2022-01-31
9+
last-modified: 2022-02-07
1010
---
1111

1212
As you set goals for your role or team, you might want to measure your impact on documentation quality in some way. The main reason for measuring your impact should be to evaluate your progress against documentation improvement goals. If you don't have any data to provide feedback on your efforts, it's hard to know if you're making a difference.

_docs/metrics_and_measurement/docapis_quality_checklist.md

+82-4
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ weight: 13.3
66
sidebar: docapis
77
section: metrics
88
path1: docapis_metrics_and_measurement.html
9-
last-modified: 2022-01-31
9+
last-modified: 2022-02-07
1010
redirect_from:
1111
- /learnapidoc/docapis_metrics_second_level_checklist.html
1212
- /learnapidoc/docapis_metrics_first_level_checklist.html
@@ -19,7 +19,7 @@ As indicated earlier, my goal is to create a practical guide for measuring quali
1919
* TOC
2020
{:toc}
2121

22-
## API documentation quality checklist
22+
## API documentation quality checklist {#comprehensive_version}
2323

2424
The following checklist is a checklist that involves a deep look at your docs. The checklist's criteria are in no particular order Also, the list shouldn't be seen as definitive or as a foolproof recipe for perfect documentation. Some points might apply more than others, depending on your product, domain, and audience. But overall, these are criteria/characteristics that will likely lead to a better experience with developer docs.
2525

@@ -37,7 +37,7 @@ li.checkboxListType1 {
3737
{% assign cb-end = "</li>" %}
3838

3939
<div style="background-color: #eef; padding: 15px; margin-top: 30px; margin-bottom: 30px;" markdown="block">
40-
<div style="margin-top: 20px; margin-bottom: 20px; font-size:24px; text-align: center;">API documentation quality checklist</div>
40+
<div style="margin-top: 20px; margin-bottom: 20px; font-size:24px; text-align: center;">API documentation quality checklist (comprehensive version)</div>
4141

4242
### Findability
4343

@@ -95,7 +95,7 @@ li.checkboxListType1 {
9595

9696
</div>
9797

98-
For a version of this checklist that is easy to copy and paste, see [Quality checklist for API docs (simplified html)](docapis_quality_checklist_html.html). This output strips away most formatting and just list the various criteria in a basic HTML file. Copy and paste the content into Google Docs or Microsoft Word. Then as you go through the content, make your notes in the "Assessment" area.
98+
For a version of this checklist that is easy to copy and paste, see [Quality checklist for API docs (simplified html) -- comprehensive version](docapis_quality_checklist_html.html). This output strips away most formatting and just list the various criteria in a basic HTML file. Copy and paste the content into Google Docs or Microsoft Word. Then as you go through the content, make your notes in the "Assessment" area.
9999

100100
{% include random_ad1.html %}
101101

@@ -115,7 +115,85 @@ As you evaluate your docs, consider the following:
115115

116116
* **Doc scope**: If you're working on a developer portal, chances are you don't own the entire portal. You might just own one little section of the portal. That's okay. You can limit your review to just the scope that you own. Granted, the user journeys might extend beyond this scope, but start with your stewardship first. The last thing you want to do is start a war with other authors by identifying all kinds of issues with their content (at least not before you address your own issues first).
117117
* **Levels of assessment**: Another consideration is just how much you can assess without more familiarity with docs. You can't know if the steps are accurate unless you go through the steps. You can't know if the docs are consistent unless you've read all the documentation. You can't know if the code works unless you can run it in a test environment. It might take more than a year working with the docs to be able to make these kinds of assessments. So pick and choose the criteria that are appropriate for your level of familiarity with the docs.
118+
* **Good docs can't fix bad design**: Poor API design will make even good docs problematic, no matter how well-written your content is. If the API has inconsistent naming, incomplete parameters, doesn’t map to user journeys, and is cumbersome to use, then documentation also becomes more cumbersome to follow and implement. Good docs can't fix bad API design, though docs can try to salvage the user experience.
118119

119120
{% include random_ad4.html %}
120121

122+
## Short version of the API documentation quality checklist {#short_version}
123+
124+
Feedback I've received about the checklist is that it's too long &mdash; isn't there a lightweight version? Based on this feedback, I selected what I think are the highest priority criteria in each section. But again, as I've said elsewhere, my selections here are somewhat arbitrary and might depend on your particular product, user, and domain.
125+
126+
<div style="background-color: #eef; padding: 15px; margin-top: 30px; margin-bottom: 30px;" markdown="block">
127+
<div style="margin-top: 20px; margin-bottom: 20px; font-size:24px; text-align: center;">API documentation quality checklist (short version)</div>
128+
129+
### Findability
130+
131+
<ul class="checkLists">
132+
{% assign findabilityList = site.data.quality_checklist.findability %}
133+
{% for item in findabilityList %}
134+
{% if item.priority == "high" %}
135+
{{cb1}}<b>{{item.title}}.</b> {{item.description}} {{cb-end}}
136+
{% endif %}
137+
{% endfor %}
138+
</ul>
139+
140+
### Accuracy
141+
142+
<ul class="checkLists">
143+
{% assign accuracyList = site.data.quality_checklist.accuracy %}
144+
{% for item in accuracyList %}
145+
{% if item.priority == "high" %}
146+
{{cb1}}<b>{{item.title}}.</b> {{item.description}} {{cb-end}}
147+
{% endif %}
148+
{% endfor %}
149+
</ul>
150+
151+
### Relevance
152+
153+
<ul class="checkLists">
154+
{% assign relevanceList = site.data.quality_checklist.relevance %}
155+
{% for item in relevanceList %}
156+
{% if item.priority == "high" %}
157+
{{cb1}}<b>{{item.title}}.</b> {{item.description}} {{cb-end}}
158+
{% endif %}
159+
{% endfor %}
160+
</ul>
161+
162+
### Clarity
163+
164+
<ul class="checkLists">
165+
{% assign clarityList = site.data.quality_checklist.clarity %}
166+
{% for item in clarityList %}
167+
{% if item.priority == "high" %}
168+
{{cb1}}<b>{{item.title}}.</b> {{item.description}} {{cb-end}}
169+
{% endif %}
170+
{% endfor %}
171+
</ul>
172+
173+
### Completeness
174+
175+
<ul class="checkLists">
176+
{% assign completenessList = site.data.quality_checklist.completeness %}
177+
{% for item in completenessList %}
178+
{% if item.priority == "high" %}
179+
{{cb1}}<b>{{item.title}}.</b> {{item.description}} {{cb-end}}
180+
{% endif %}
181+
{% endfor %}
182+
</ul>
183+
184+
### Readability
185+
186+
<ul class="checkLists">
187+
{% assign readabilityList = site.data.quality_checklist.readability %}
188+
{% for item in readabilityList %}
189+
{% if item.priority == "high" %}
190+
{{cb1}}<b>{{item.title}}.</b> {{item.description}} {{cb-end}}
191+
{% endif %}
192+
{% endfor %}
193+
</ul>
194+
195+
</div>
196+
197+
For the copy/paste version of this checklist, see [Quality checklist for API docs (simplified html) --- short version](docapis_quality_checklist_html_short.html). Similar to the simplified form of the comprehensive version, this output strips away most formatting and just list the various criteria in a basic HTML file.
198+
121199
{% include random_ad2.html %}

_docs/metrics_and_measurement/docapis_quality_checklist_html.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
</style>
2020

21-
<h1>API documentation quality assessment</h1>
21+
<h1>Quality checklist for API docs (simplified html) -- comprehensive version</h1>
2222

2323
<h2 class="criteriaCategory">FINDABILITY</h2>
2424
{% assign findabilityList = site.data.quality_checklist.findability %}{% for item in findabilityList %}<h3>{{item.title}}</h3><p class="criteriaDescription">{{item.description | strip_html}}</p><p>Assessment:</p>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
layout: none
3+
progress: false
4+
permalink: docapis_quality_checklist_html_short.html
5+
---
6+
7+
<style>
8+
p.criteriaDescription {
9+
margin-left: 50px;
10+
font-size: 12px;
11+
font-style: italic;
12+
color: darkgoldenrod;
13+
}
14+
15+
h2.criteriaCategory {
16+
color: maroon;
17+
}
18+
19+
</style>
20+
21+
<h1>Quality checklist for API docs (simplified html) -- short version</h1>
22+
23+
<h2 class="criteriaCategory">FINDABILITY</h2>
24+
{% assign findabilityList = site.data.quality_checklist.findability %}{% for item in findabilityList %}{% if item.priority == "high" %}<h3>{{item.title}}</h3><p class="criteriaDescription">{{item.description | strip_html}}</p><p>Assessment:</p>
25+
{% endif %}{% endfor %}
26+
<h2 class="criteriaCategory">ACCURACY</h2>
27+
{% assign accuracyList = site.data.quality_checklist.accuracy %}{% for item in accuracyList %}{% if item.priority == "high" %}<h3>{{item.title}}</h3><p class="criteriaDescription">{{item.description | strip_html}}</p><p>Assessment:</p>
28+
{% endif %}{% endfor %}
29+
<h2 class="criteriaCategory">RELEVANCE</h2>
30+
{% assign relevanceList = site.data.quality_checklist.relevance %}{% for item in relevanceList %}{% if item.priority == "high" %}<h3>{{item.title}}</h3><p class="criteriaDescription">{{item.description | strip_html}}</p><p>Assessment:</p>
31+
{% endif %}{% endfor %}
32+
<h2 class="criteriaCategory">CLARITY</h2>
33+
{% assign clarityList = site.data.quality_checklist.clarity %}{% for item in clarityList %}{% if item.priority == "high" %}<h3>{{item.title}}</h3><p class="criteriaDescription">{{item.description | strip_html}}</p><p>Assessment:</p>
34+
{% endif %}{% endfor %}
35+
<h2 class="criteriaCategory">COMPLETENESS</h2>
36+
{% assign completenessList = site.data.quality_checklist.completeness %}{% for item in completenessList %}{% if item.priority == "high" %}<h3>{{item.title}}</h3><p class="criteriaDescription">{{item.description | strip_html}}</p><p>Assessment:</p>
37+
{% endif %}{% endfor %}
38+
<h2 class="criteriaCategory">READABILITY</h2>
39+
{% assign readabilityList = site.data.quality_checklist.readability %}{% for item in readabilityList %}{% if item.priority == "high" %}<h3>{{item.title}}</h3><p class="criteriaDescription">{{item.description | strip_html}}</p><p>Assessment:</p>
40+
{% endif %}{% endfor %}

_docs/metrics_and_measurement/docapis_quantifying_progress.md

+2-4
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,13 @@ And yet, to achieve the level of information quality, we didn't have to rely on
2222

2323
{% include random_ad1.html %}
2424

25-
Note that sometimes poor API design will make even good docs problematic, no matter how good your content is. If the API has inconsistent naming, incomplete parameters, doesn't map to user journeys, and is cumbersome to use, then documentation also becomes more cumbersome to follow and implement. Good docs can't fix bad API design, though docs can try to salvage the user experience. If you have to explain the equivalent of String Theory and Lagrange Multipliers in your docs, give yourself extra points even if clarity is still debatable.
26-
2725
## Moving towards quantification
2826

29-
In my initial go-around with the quality checklist, I tried to move towards quanitification by including scores and weights for each criteria, and then dividing the achieved number of points by the total points. From this scoring, you can move from qualitative to quantitative measurement.
27+
In my initial go-around with the quality checklist, I tried to move towards quantification by including scores and weights for each criteria, and then dividing the achieved number of points by the total points. From this scoring, I tried to move from qualitative to quantitative measurement.
3028

3129
{% include random_ad2.html %}
3230

33-
However, in practice, I found that assigning scores for each section felt very arbitrary and subject to personal whims. I don't think others would find the score meaningful either. Instead, just having a checklist of criteria to consider was value enough. In later revisions to the content here, I stripped out the section on quantification because I want the advice I give here to be helpful in practice, not just theory.
31+
However, in practice, I found that assigning scores for each section felt arbitrary and subject to personal whims. I don't think others found the scores meaningful either. Instead, just having a checklist of criteria to consider was valuable enough. That's why i stripped out the section on quantification in later revisions to the content &mdash; because I want the advice I give here to be helpful in practice, not just theory.
3432

3533
I'm not saying that some approach to quantifying documentation wouldn't work, just that my approach did not. Also, recognize that the quality checklist has no official data to support it &mdash; instead, these best practices come from experience in the industry and from best practices that I and others have observed within the realm of developer documentation.
3634

0 commit comments

Comments
 (0)