lone-writers-guide

Authoring tools - selecting

When choosing an authoring tool, think about your audience and your content creators. For the purposes of this discussion, let’s think first about the differences in writing for end users versus software developers.

Choosing an End User Content Tool

Ask yourself these questions about your audience before choosing a tool for delivering end-user content:

You also need to understand your content creators:

Some of the same tools recommended for Software Developer documentation may work for you if your content creator community has a high level of familiarity with technology and is comfortable working in a markup language.

Non-Technical-Writer Content Tools

If your content creator community is made up of non-technical writers, and is more comfortable in a word-processing (WYSIWYG) type of editing environment, you may find these tools useful:

Technical Writer Content Tools

If your content creators are mainly technical writers, and need the power of more complex authoring tools, there are many options. A few of these are:

Visual Documentation Tools

If your community requires visual documentation, look into video and graphics authoring tools:

No matter who your content creators are, it will help to have a way to create templates for specific kinds of documentation so that they have a starting place that conforms to your style guide.

Choosing a Software Developer Content Tool

If your content creators are software developers, they may be more likely to keep the documentation up-to-date if the documentation lives with the code. This usually involves writing in a markup language, such as:

How you deliver documentation written in a markup language depends on your audience. Ask yourself a few questions:

Publishing Developer Documentation

Markup languages require some mechanism for publishing the content to a web site – otherwise, the content can only be read by those who visit the source code repository. Some popular opensource publishing tools include:

API Documentation Generators

API documentation has very specific needs that may require more interactivity. If you’re documenting an API, ask yourself:

Several tools exist to help with creating automatic API documentation for a variety of languages. This is only a few:

Note that auto-generation tools are not that useful if the developers do not write descriptions for the API in the code. Creating templates for common IDE tools or editors (like emacs) can help encourage the creation of content for each API function.

API documentation also does not replace the need for examples and tutorials.