title | navigation_weight |
---|---|
Writing Style Guide |
2 |
These are technical writing guidelines that can be used across all our technical documentation as well as blog posts.
These guidelines are designed to improve clarity and consistency. Some of the benefits of writing in this style are:
- Easier to read and understand.
- More professional appearance.
- Easier to translate.
As with most guidelines these are suggestions, not hard and fast rules. Use your best judgement.
Use inclusive language. There are a few specifics mentioned later in this guide, but for a good overview see the Google guide.
Use present tense. It’s easier to read and translate.
Examples:
- Future: Command X will start the server.
- Present: Command X starts the server.
Use clear, simple, and direct language. Avoid flowery and verbose writing styles.
- Avoid filler words and superfluous adjectives 'really nice feature', 'easily', ‘simple’, 'just', 'please', 'it may be that', 'and that's it'.
- Avoid subjective phrases. "You can easily...". "It is simple to...".
Use active voice. In active voice the Subject Verbs the Object. Remember SVO.
Examples:
- Active voice: The man ate the apple.
- Passive voice: The apple was eaten by the man.
- Active voice: The NCCO controls the call.
- Passive voice: The call is controlled by the NCCO.
- Active voice: Vonage provides a Messages API.
- Passive voice: A Messages API is provided by Vonage.
Active voice is simpler, more direct, and easier to translate.
In technical writing, and especially blog posts, you can be more generous with your use of paragraph breaks. Paragraph breaks make the text less overwhelming and easier to read.
Avoid words like would, should, might and so on.
Example:
- Avoid: If you run the Nexmo CLI with no parameters you might see some text, or possibly an error, or something!
- Better: If you run the Nexmo CLI without specifying parameters a help message is displayed.
Use 'you' rather than 'we' when referring to the reader.
Example:
- Avoid: We now need to enter an API Key.
- Better: You now need to enter an API Key.
- Avoid: We can now click the button to register our Nexmo Number.
- Better: You can now click the button to register your Nexmo Number.
- Best: Click the button to register your Nexmo Number.
Use Vonage rather than 'we' when referring to the company.
Example:
- Avoid: We also provide an SMS API.
- Better: Vonage also provides an SMS API.
The company standard is, as with most software companies, to use American English.
The industry standard dictionary is Merriam Webster.
Latin phrases and abbreviations can sometimes cause confusion. They can also be less convenient to translate.
Examples:
- Use ‘for example’, instead of 'e.g.' and 'that is' rather than 'i.e.'.
- Don't use words like 'crash', use 'error'. Use 'launch' or 'start' rather than 'fire up'.
- Bear in mind the reader’s first language may not be English.
- Mouse is clicked and keyboard is pressed. Avoid terms such as 'hit' when referring to the keyboard.
Try to be consistent with capitalization of headings. You can follow these guidelines:
- Use title case (also sometimes known as word case as significant words are capitalized) for top-level topics and sections. For example, 'Code Snippets', 'Guides', 'Markdown Guide', 'Writing Style Guide', 'Installation Guide', 'Messages and Dispatch API'.
- Use sentence case for topic titles below a top-level section. For example, 'This is the topic title'. The exception to this is if the heading references a top-level section. For example, 'How to use the Getting Started Guide', as Getting Started Guide is a top-level section in this example.
- Use sentence case for sub-section headings. For example, 'This is a sub-section heading'.
There is no need to capitalize minor words in headings. For example:
- Avoid: Messages And Dispatch API.
- Better: Messages and Dispatch API.
Always capitalize words that would normally be capitalized. For example:
- Avoid: How to send an sms
- Better: How to send an SMS
The following shows an example of correct heading case:
Getting Started Guide (top-level topic)
Overview
Concepts
How to send an SMS
How to use the Installation Guide
Installation Guide
Configure your Dashboard
Install the Server SDK
How to install the Node library
Clone the source code from GitHub (sub-section heading, not visible in TOC)
How to install the Python library
Clone the source code from GitHub (sub-section heading, not visible in TOC)
Test the installation
Another example demonstrates correct heading case:
Code Snippets (main section)
Before you begin
Connect an inbound call
Download a recording
Earmuff a call
Handle user input with DTMF
...
For Vonage developer blog article titles, use title case. Blog article sub-headings should also use title case.
You can refer to these guidelines on using title case.
This is an example of a bulleted list:
- Precede a list with a sentence and a colon.
- Terminate each sentence in a list with a full stop.
- Use bulleted lists for lists.
- Use numbered lists for ordered sequences (procedures, tasks and so on).
Note the following points:
- The list has a piece of text introducing the list followed by a colon.
- Each item in the list is terminated by a full-stop (period).
- If each item in the list is a single word a terminating period is not required.
When inserting codeblocks for example code in the text:
- Specify the coding language where possible.
- Break the text before a codeblock with a colon, not a period (which is a hard stop in the mind of the reader, rather than a continuation).
- There should not be a space before the colon.
Define acronyms on first use. On subsequent use on a page/section you do not need to redefine the acronym.
Try to be explicit, that is use precise terms where necessary to improve clarity and avoid ambiguity.
Some examples are given here:
- Using 'Nexmo Number' rather than 'number'.
- Using 'Nexmo Application' rather than 'application' (where appropriate).
- Using 'web application' rather than 'application' (where appropriate).
- Using 'webhook URL' rather than 'endpoint' or 'callback URL'.
- Using Nexmo Server SDK rather than 'SDK'.
- Using Nexmo Command Line Interface, or Nexmo CLI, rather than 'command line'.
Avoid "He or she" (use user/developer/caller as appropriate). Do not replace 'he or she' with 'they'.
Example:
- Avoid: The user answers the phone and then he or she hears a voice.
- Avoid: The user answers the phone and then they hear a voice.
- Better: The user answers the phone and then the user hears a voice.
- Best: The user answers the phone and then hears a voice.
Some additional points to bear in mind:
- Explain to the reader why they need a particular feature and not just what the feature is.
- Avoid statements that predict the future, for example, "the next version will have feature X". There are good legal reasons for avoiding predicting the future.
- Avoid time sensitive information. Specify an exact version where possible, for example '1.1', rather than 'current version' as the current version may change.
- Avoid using ampersand ('&') instead of 'and', unless you are specifying a programming language operator or similar.
- "It's" always means 'it is'.
- Avoid pricing information in technical documentation as it is subject to change, hard to maintain, and could lead to legal issues if wrong.
When working with keys, phone numbers, or accounts be clear where values should be replaced by customer-specific values.
Key | Markdown Value | Rendered Value (if different) |
---|---|---|
Timestamp | 2020-01-01 12:00:00 |
- |
ISO8601 Timestamp | 2020-01-01T12:00:00.000Z |
- |
Epoch | 1577880000 |
- |
HTTP Method | [GET] or [POST] |
[GET] or [POST] |
HTTP Response | `200 OK` or §§ `404 Not Found` |
200 OK or §§ 404 Not Found |
Balance | 3.14159 |
- |
Latency | 3000 |
- |
UUID | aaaaaaaa-bbbb-cccc-dddd-0123456789ab |
- |
When use of a real phone number can't be avoided, for example when listing out the result of nexmo numbers:list
in the CLI, use the following numbers:
Human readable format | E.164 format |
---|---|
(415) 555-0100 |
14155550100 |
(415) 555-0101 |
14155550101 |
(415) 555-0102 |
14155550102 |
(415) 555-0103 |
14155550103 |
(415) 555-0104 |
14155550104 |
(415) 555-0105 |
14155550105 |
Human readable format | E.164 format |
---|---|
020 7946 0000 |
442079460000 |
020 7946 0001 |
442079460001 |
020 7946 0002 |
442079460002 |
020 7946 0003 |
442079460003 |
020 7946 0004 |
442079460004 |
020 7946 0005 |
442079460005 |
Human readable format | E.164 format |
---|---|
07700 900000 |
447700900000 |
07700 900001 |
447700900001 |
07700 900002 |
447700900002 |
07700 900003 |
447700900003 |
07700 900004 |
447700900004 |
07700 900005 |
447700900005 |
Some further examples of writing style guides are: