Skip to content

Commit 5bf8743

Browse files
campoyeiso
authored andcommitted
adding arbitrary choices and consistency section (#119)
Signed-off-by: Francesc Campoy <[email protected]>
1 parent 8a59bc5 commit 5bf8743

File tree

1 file changed

+31
-18
lines changed

1 file changed

+31
-18
lines changed

engineering/documentation.md

+31-18
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,25 @@
11
_Table of Contents_
22

3-
- [Documentation at source{d}](#documentation-at-sourced)
3+
- [Documentation At source{d}](#documentation-at-sourced)
44
- [General Best Practices](#general-best-practices)
5-
- [State a clear goal](#state-a-clear-goal)
6-
- [Define a scope](#define-a-scope)
7-
- [Keep it simple](#keep-it-simple)
8-
- [Don't alienate the reader](#dont-alienate-the-reader)
9-
- [Take accessibility in mind](#take-accessibility-in-mind)
5+
- [State A Clear Goal](#state-a-clear-goal)
6+
- [Define A Scope](#define-a-scope)
7+
- [Keep It Simple](#keep-it-simple)
8+
- [Don't Alienate The Reader](#dont-alienate-the-reader)
9+
- [Keep Accessibility In Mind](#keep-accessibility-in-mind)
10+
- [Arbitrary Choices And Consistency](#arbitrary-choices-and-consistency)
1011
- [Documentation Artifacts](#documentation-artifacts)
1112
- [README.md](#readmemd)
1213
- [CONTRIBUTING.md](#contributingmd)
13-
- [Reference material](#reference-material)
14+
- [Reference Material](#reference-material)
1415
- [Release Notes](#release-notes)
1516
- [Guides/Tutorials](#guidestutorials)
1617
- [Code of Conduct](#code-of-conduct)
17-
- [Issue templates](#issue-templates)
18-
- [Other pieces documentation](#other-pieces-documentation)
18+
- [Issue Templates](#issue-templates)
19+
- [Other Pieces Of Documentation](#other-pieces-of-documentation)
1920
- [Resources](#resources)
2021

21-
# Documentation at source{d}
22+
# Documentation At source{d}
2223

2324
Our company has been a big believer in Open Source from very early on.
2425
Most of our repositories are visible to anyone in the world.
@@ -62,7 +63,7 @@ I do not wish to alienate any of them, so I need to be careful with the words I
6263

6364
All of these concrete examples can be boiled down to the following best practices.
6465

65-
### State a clear goal
66+
### State A Clear Goal
6667

6768
A piece of documentation has a clearly stated goal and audience.
6869

@@ -73,7 +74,7 @@ should cover what contributors care about.
7374
Do not make a first time visitor read through how to contribute a project before
7475
they understand what the project is about.
7576

76-
### Define a scope
77+
### Define A Scope
7778

7879
As Carl Sagan [famously said](https://www.youtube.com/watch?v=7s664NsLeFM)
7980
"If you wish to make an apple pie from scratch, you must first invent the universe".
@@ -87,7 +88,7 @@ For instance, if a project uses Go and gRPC feel free to link to the homepages
8788
of those projects. Do not use more than one short sentence to explain what Go
8889
or gRPC are.
8990

90-
### Keep it simple
91+
### Keep It Simple
9192

9293
Short sentences win. Avoid having overly complex sentences.
9394
It might seem weird at first. You might find the resulting text immature.
@@ -97,7 +98,7 @@ Following the same logic, avoid overly complicated words.
9798

9899
As a rule of thumb, sentences longer than a printed line are probably too long.
99100

100-
### Don't alienate the reader
101+
### Don't Alienate The Reader
101102

102103
Avoid gendered pronouns. "He or she" should be rewritten as "they".
103104
There is no reason for your document to make assumptions on the reader's identity.
@@ -113,7 +114,7 @@ More on ableist language [here](https://www.copyediting.com/disabling-ableist-la
113114
In general, if someone would find what you wrote offensive it's time to change it.
114115
There's no excuse to offend anyone in a technical document.
115116

116-
### Take accessibility in mind
117+
### Keep Accessibility In Mind
117118

118119
It is probably impossible to write documentation that is fully accessible to every single person in the world.
119120
This doesn't mean we should not strive for documentation that is as accessible as possible.
@@ -126,6 +127,18 @@ For more extreme cases the user will not be able to see the image at all.
126127
Take that into account and try to add captions explaining the image where possible.
127128
At least make usage of the `alt` attributes on HTML and markdown.
128129

130+
### Arbitrary Choices And Consistency
131+
132+
Last but not least, there's a list of choices that have been made with consisteny in mind.
133+
134+
- Use American English spelling (e.g. color instead of colour).
135+
- Use the [Oxford comma](https://en.wikipedia.org/wiki/Serial_comma).
136+
- Capitalize Each Word In Titles And Section Headers.
137+
- Do not capitalize `source{d}`, no matter if it's at the beginning of a sentence, or part of a title.
138+
139+
There's probably more arbitrary choices we've made and haven't documented yet.
140+
When updating a document respect the style of the document, prioritizing consistency over correctness.
141+
129142
## Documentation Artifacts
130143

131144
Now that we've covered how to write, let's talk about what to write.
@@ -183,7 +196,7 @@ TL;DR:
183196
- Template: [CONTRIBUTING.md](documents/CONTRIBUTING.md)
184197
- Example: https://github.com/angular/angular.js/blob/master/README.md
185198

186-
### Reference material
199+
### Reference Material
187200

188201
This is the documentation that users will reguarly consult while using your project.
189202
The actual form depends on whether the project is a library or a tool.
@@ -250,7 +263,7 @@ TL;DR:
250263
- Content: Rules governing the contributor community and their interactions with each other.
251264
- Example: https://www.contributor-covenant.org/
252265

253-
### Issue templates
266+
### Issue Templates
254267

255268
Following the same philosophy of good documentation, good issue templates help users and
256269
contributors interact more efficiently.
@@ -261,7 +274,7 @@ of it named either `.github` or `docs`.
261274

262275
Consider using [this template](documents/ISSUE_TEMPLATE.md).
263276

264-
### Other pieces documentation
277+
### Other Pieces Of Documentation
265278

266279
Many other pieces of documentation are possible: from design documents to workflow descriptions
267280
or UML diagrams. Whenever you're working on one of these pieces keep in mind your audience

0 commit comments

Comments
 (0)