II. Guidelines by example

Contents

1. Introduction

2. General remarks
    2.1 Audience
    2.2 Markup the markup language

3. The headers
    3.1 The chapter title
    3.2 The section titles
    3.3 Sub-sections
    3.4 Example of code of headers

4. Images in the text
    4.1 Embedding a image
    4.2 Explaining the image
    4.3 Guidelines for images and explanations
    4.4 Example of code of image

5. Lists

6. Tables

7. Preformatted text

8. The use of entity names in HTML-tags
    8.1 Showing the special characters
    8.2 Bold text
    8.3 Italics

9. A word on editors

10. On Emphasis in the Texts YOU PRODUCE

11. Other chapters and revision date

12. A final word

1. Introduction

This chapter describes the conventions and guidelines to follow when writing documentation for ServerAtSchool. This document itself serves as an example text, hence the name "Guidelines by example". Please take time to study the HTML tags used in this document and stick to them.

A notice about 'NOTICE:'. When you find a 'NOTICE' in the text, it contains information that requires special attention. The notice should always start on a new line. The easiest way to achieve this is to insert a P-tag before the notice. After the notice, the regular text continues. This regular text should be separated from the notice, e.g. by inserting another P-tag. Of course this is not necessary if the notice is at the end of a section.

NOTICE: this paragraph is delimited from the previous one with the P-tag <p>. For easier readability we never use the closing P-tag </p>. In order to improve readability of the source code you should always use lower case in HTML-tags.

(top)

2. General remarks

2.1 Audience

The most important one is: know your target audience. In ServerAtSchool three types of audiences exist: the local systems administrator who installs the server and clients, the ICT coordinator who installs Windows software and finally teachers and pupils; the end users of the ServerAtSchool network.

These audiences have varying levels of expertise. The local systems administrator knows a bit about Linux and has a fair amount of Windows knowledge, the ICT coordinator knows about education and has a bit above-average Windows experience and teachers and pupils have little or no experience working in a network environment. Therefore each audience needs step-by-step guides, tailored to their level of knowledge.

A fine example of a step-by-step guide is the GPS guiding system in your car. You have to drive the car, observe the other traffic and listen to the friendly woman's voice saying: "Turn left in 30 meters".
Your attention is divided. When the system misses one side street, you are completely lost. When you oversee a small street, you are lost, too.

The same happens in a manual. The one who uses it, is reading about, and working with an application.

Here are my rules of thumb when writing a manual:

  1. Know your audience. Most teachers are women, so use 'she'.
  2. Write the manual as a step by step guide.
  3. Test it on a person that belongs to the target group.
  4. Observe what happens and return to step 2.
  5. Repeat.

2.2 Markup the markup language

When writing HTML code, keep it readable. I.e., when possible, make it look like the document you are producing. Put a line break at the end of a sentence. Put the paragraph breaks as two tags on two lines at the beginning of a line, etc.
This keeps your HTML easy readable for others.
A last advice, keep it simple. With the tags provided in this example text, you can write great manuals. It is the content that is the problem, not the representation. In other words: if you have to choose between fancy stuff and thorough treatment of a subject, stay away from the fancy stuff.

NOTICE: At the end of each section you must be able to return to the top of the chapter (the table of contents of the chapter). Since we are now at the end of this section there is an example on the next line...

...right here:   (top)

3. The headers

An elaborate description of the standardised headers and footers can be found in the chapter about the document template. Please refer to chapter III. Template explanation. However, a few remarks about headers are relevant at this point.

3.1 The chapter title

First of all there is only a single H1-tag per chapter. This is the chapter title. This title is located almost at the top of the document, right after the standard Page Navigation Header. The text between the H1-tags is also part of the text in the TITLE-tag in the HEAD-section of the HTML document.

NOTICE: The number of the chapter is also included in the title.

The name of the book of which this chapter is a part is shown in the first row of the standard Page Navigation Header. An abbreviated title of the book can be added to the title-tag in the page header, e.g. 'Guidelines - II. Guidelines by example'.

3.2 The section titles

Section titles have a H2-tag. You can use as many sections as necessary to say what you have to say. Note however, that when you have many, many, many sections, you probably need to split your document into different chapters anyway.

Section titles all have a name. This name is used to link to the section from the table of contents at the top of the chapter. Every section ends with a clickable link to the top of the document.

3.3 Sub-sections

If necessary a section can be further divided into sub-sections. These sub-sections have a H3-tag. They do not necessarily have a name, though it is not verboten. The HTML markup language defines a total of seven levels (from <h1> to <h7>). Please try to use no more than three levels in your document. In the end sub-sub-sections make your text more difficult to read rather than easier.

NOTICE: Chapter titles and (sub-)section titles do not end with a period. A capital is only used at the beginning of the line.

3.4 Example of code of headers

Here is an illustration of the necessary code for the three levels we discussed.

<h1><a name="top">II. Guidelines by example</a></h1>

<h2>Contents</h2>

<a href="#h1">1. Introduction</a>

<p>
<a href="#h2">2. General remarks</a><br>
&nbsp; &nbsp; <a href="#h2.1">2.1 Audience</a><br>
&nbsp; &nbsp; <a href="#h2.2">2.2 Markup the markup language</a>

<p>
<a href="#h3">3. The headers</a><br>
...

<h2><a name="h1">1. Introduction</a></h2>
...
<h2><a name="h2">2. General remarks</a></h2>
...
<h3><a name="h2.1">2.1 Audience</a></h3>
...
<h3><a name="h2.2">2.2 Markup the markup language</a></h3>
...
<h2><a name="h3">3. The headers</a></h2>
...
<h3><a name="h3.1">3.1 The chapter title</a></h3>
...
<h3><a name="h3.2">3.2 The section titles</a></h3>
...
<h3><a name="h3.3">3.3 Sub-sections</a></h3>
...
<h3><a name="h3.4">3.4 Example of code of headers</a></h3>
...

Note that the links to the sub-sections are indented using the old-fashioned way of adding two non-breakable spaces. This yields good results, even with text-mode browsers like Lynx.

NOTICE: In order to avoid name clashes with references to subsections, you should use a dot to separate the section number from the subsection number in the name and href attributes. If you have two subsections, say 1.23 and 12.3, the sections should have names like <a name="h1.23">...</a> and <a name="h12.3">...</a> If you do not use a dot, both names would look like <a name="h123">...</a> which would be very confusing for web browsers.

(top)

4. Images in the text

4.1 Embedding a image

Below is an example of an image in the text. Note that the image has the following properties: The following will be displayed on the screen.

[ example of login screen ]
guidelines_login.png

4.2 Explaining the image

By adding references in the image (in this example the digits 1,...,5) you can explain very precisely what is going on in the image. An example explanation might look like this.

Explanation:

  1. Janitor v0.9.6: This shows the Janitor version number.
  2. Gray 'location bar': After logging in this location bar shows exactly where you are in the Janitor program. Sometimes this is called a breadcrum trail.
  3. Username: This is the place to enter your username.
  4. Password: This is the place to enter your password.
  5. OK-button: Click on this button after entering your username and password.

4.3 Guidelines for images and explanations

Here are the guidelines for handling images and their texts:

When an in-line image is required in the text, e.g. a small icon image, a title under the image and a border around it would disturb the layout. In this case, use the title attribute for the name of the image. A border is not necessary so set the border to 0 (zero).

NOTICE: if the image is not followed by an explanation (and hence not the word 'Explanation:'), a P-tag should be used to separate the image from the subsequent running text.

NOTICE: In an ideal situation the names of the chapter file (here: guidelines.html) is as short as possible, preferably fitting in the legacy 8.3 filename format. This implies an extension of .htm rather than .html. However, there is no real reason to stick to this old-fashioned and inflexible file naming convention. You can already see this in the names of the image files: following our own convention of using the name of the HTML-file followed by an underscore, followed by the rest of the name followed by the extension, makes it hard to keep the filename in the aforementioned 8.3 format. However, we do want you to stay away from spaces in filenames (use underscores instead). Furthermore, please use all lowercase letters for filenames.

4.4 Example of code of image

Here is an example of the code that is used for a image (not an in-line image).

Now you see this on the screen:
<p>
<center>
<img src="guidelines/guidelines_login.png"
     width="600" height="334"
     border="1"
     alt="[ example of login screen ]">
<br>
<small><strong>guidelines_login.png</strong></small>
</center>
Explanation:<br>

An in-line image does not have a border nor a title under the image. Instead the name of the file is shown in the title attribute. This is shown in the code snippet below.

Click on the logout icon
<img src="guidelines/guidelines_logout_icon.png"
     width="64" height="32"
     border="0"
     alt="[ logout icon ]"
     title="guidelines_logout_icon.png">
to terminate the session.

NOTICE: In the larger images (centered, with border), the title attribute is optional because the name of the file is already displayed under the image. For in-line images such as icons, the title attribute is mandatory.

(top)

5. Lists

Use ordered (OL-tags) or unordered (UL-tags)lists. Since the closing tag (</li>) is optional according to the HTML 4 specification, there is no need to add these. However, you can add those closing tags if you prefer.

(top)

6. Tables in the text

Here is an example of a table.

The length in characters of the input field for the expected response text.
length explanation
0 When you put in a 0 (zero), no input field will be made.
This is a useful feature to put extra information in the form
that needs no responding to.
1 you will get a checkbox with yes and no.
<= 80 a normal input field
> 80 if more than 80 characters a textarea will be displayed

The table is separated from the running text with a P-tag. A table is supposed to have at least the following attributes:

After opening the table you should add a table caption in the special CAPTION-tag (here: "The length in characters of the input field for the expected response text"). Immediately after this table caption the table itself begins. It can start with a table row (<TR>) and the special header data (<TH>), or you can begin directly with a regular table cell (<TD>), depending on whether you do or don't want to have column headers that are rendered differently from the rest of the table. In the example above the special headers (<TH>) were used.

Note that you can use attributes like VALIGN and ALIGN in table data elements where you see fit.

After the table is closed, you should add a P-tag to separate the table from the subsequent running text.

(top)

7. Preformatted text

Here is an example:

[access log site@school]
[127.0.0.1 on 26-2-2004 at 14:48 userid:admin]

Use the PRE-tags to create preformatted text, e.g. to show command line output.

If you want to show a piece of code, e.g. an HTML-tag, use the CODE-tags. (We use them all the time to show HTML-tags in this very text.)

(top)

8. The use of entity names in HTML-tags

We strongly recommend you to follow the guidelines for showing HTML-tags in the text.

8.1 Showing the special characters

Do not put <, > and & directly in the HTML-text but use &gt;, &lt; and &amp; instead. You need this when you want to write something like this:
Start > Settings > Control panel > Documents & Files
Also, use &quot; rather than a bare " because it might confuse some browsers.

8.2 Bold text

Don't use the B-tag to show text with the bold attribute but use STRONG instead.

8.3 Italics

Don't use the I-tag to show text in italics; use EM instead.

(top)

9. A word on editors

Do not use a word processor like OpenOffice.org or Microsoft Word to create HTML-pages. Also, don't use tools like Microsoft Frontpage, Mozilla's NVU or Dreamweaver to make HTML pages. These tools produce lots of garbage in your texts which makes conversion to PDF files next to impossible. Use a simple HTML editor. Or better still, use no HTML-editor at all and do the work with Nano or Notepad or Programmer's Notepad or (X)Emacs or vi or whatever your favourite editor is called. Just make sure that the tool you use produces clean ASCII-text.

If it is at all possible, try limit the line length to less than 80 characters. This makes the HTML code readable, even on a text-only terminal.

(top)

10. On Emphasis in the Texts YOU PRODUCE

Do not capitalise words in texts to emphasise. Use the EM-tag instead. Do not use all upper case words in texts to emphasise. Use the STRONG-tag instead.

Use the single quote to emphasise something special. For example:

The use of 'Janitor' is not so difficult.
Use double quotation marks to quote. Example:
As stated earlier, "never use passwords like 'test' or 'admin'".
Also, remember to use &quot; rather than a bare " because otherwise some browsers might get confused.

(top)

11. Other chapters and revision date

NOTICE: A reference must be made to other chapters or items. This is part of the standard chapter template; the link in the footer in the middle below labeled Home brings the user back to the table of contents of the book.

NOTICE: The text must have a revision date and it must be at the end. This is also part of the standard template. See the last line of the footer below (just underneath the line identifying the author). Note that it is perfectly acceptable to use a CVS-tag such as $Id$ or $Date$ for this purpose.

(top)

12. A final word

Please make sure that your HTML-text is standards compliant. There are various tools floating around that make it a snap to find those pesky syntax errors. A particular handy tool is a Perl-script called weblint. This fast script reads your HTML-file and reports a lot of common mistakes, e.g. missing closing tags, overlapping tags, etc. etc.

And of course there is always the W3C Validator, located at http://validator.w3c.org.

Good luck with writing and watch out for that (writer's) block!

(top)

Author: Peter Fokker <peter (at) berestijn.nl>
$Id: guidelines.html,v 1.9 2006/04/05 14:36:15 peter Exp $