This page details the arbitrary conventions I’ve chosen to follow in these notes.
Use American English.
Write bullet points in sentence case and end them with a period:
- Handles multiplexing and demultiplexing of multiple packet sources.
- Handles error control and retransmission.
Unless the list contains only nouns:
- Coaxial cable
- Twisted pair cable
Place references at the end of a paragraph, before the terminating punctuation mark:
BGP4 supports CIDR and subnetting [1, P. 101].
Place a comma after i.e. and e.g.:
Each component is separated by a dot (e.g., eng.cisco.com.).
Always use an Oxford comma:
Streams go through multiple states: idle, open, half-closed, and closed.
End side notes with a period:
Note: this approach can be improved further by storing results in two single variables.
Use em dashes without a space on either side:
Linux is a monolithic kernel—it runs as a single process in a single address space.
Capitalize figures and tables when referencing them in the text:
For more information, see Figure 1.
Create the plural form of initialisms that end in s by appending es:
The last mainstream cooperative OSes were Mac OS 9 and Windows 3.1.
Single-homed ASes connect to another AS via a single exit.
Use ID, IDs, UID, and UIDs:
The next step is to allocate a new UID.
Define the full form of initialisms in parentheses when used for the first time:
UDP (User Datagram Protocol) is a connectionless transport protocol.
Use MathJax for formulas, variables, and functions:
BFS runs in time on a graph of vertices and edges.
Use angle brackets ("<>") for tuples written in text:
ARP maps a <protocol, address> pair to a link layer address.
Use parentheses for functions, methods, function-like macros, and system calls:
Blink is initialized with
To statically create a tasklet you can use the macros
It’s created in response to the
open()system call, and is destroyed in response to the
Reference C structs by their name:
The superblock is represented by the
Format flags as code:
Italicize header field names:
The Data field contains the payload that is being sent.
Write header field names in title case:
The Originate Timestamp field is the time the sender touched the message before sending it.
Format field values as code:
Type is the type of frame (e.g.
Use an HTTP request instead of a HTTP request:
An HTTP/2 header field (a header) is a name with an associated value.
Write bits per second as b/s and bytes per second as B/s, with the metric prefix in uppercase:
100MB/s is 800Mb/s