views:

86

answers:

4

Developers need to write some manuals. Word sucks so we're killing it as fast as possible.

So, what are good tools that people actually use?

I'm perfectly ok with, and prefer, some kind of markup. LateX is a bit over the top and IIRC, rather tricky to modify the output in.

I've looked at Sphinx (seems nice, has nice PDF, and we use Python already) and docbook (XML, ugh) and am leaning to the former. I'm sure there are other suggestions and am willing to hear them.

Note, this is not an exact duplicate of http://stackoverflow.com/questions/371654/application-not-a-markup-language-for-producing-a-user-manual. It's rather the counterpart of it. :)

Update: Not for APIs. We use Doxygen for that already. This is pure end-user functionality that needs to be described in a few books/booklets.

+2  A: 

If you're looking to document your code (as in an API) then you're repeating yourself unless you generate the documentation from your source and appropriate source comments. Something like Javadoc or Doxygen would do this, but don't know what the Python equivalent is.

As for instructions and the like, what about Markdown? It's readable as plain text and can be translated to more sophisticated formats.

John at CashCommons
We use Doxygen already for APIs and developer docs. This is for the user, which doesn't need to know about the underlying blasphemous hideousness of code magic. ;)
Marcus Lindblom
OK ... well Markdown is a decent choice. Markdown is readable as plain text so you can start there and get things prettier as you need.
John at CashCommons
Righto. Sphinx uses ReST, which is pretty similar.
Marcus Lindblom
+1  A: 

I suggest Asciidoc.

It's quite easy to learn (just have a look the Cheat Sheet) and produces very nice looking documentation, and the best thing is that the sources are also human readable.

Output formats are DocBook and (X)HTML (and with some other tools, PDF as well).

EDIT

As a Stackoverflow member, you may be better of using Markdown, as you already know most of it's syntax.

Helper Method
"To generate DocBook based outputs (e.g. PDFs) you will also need a working DocBook toolchain. Installing and configuring a DocBook toolchain on Windows can be a challenge." .. eep! :-|
Marcus Lindblom
@Marcus I'm a Linux user, so never had to face that problem :-)
Helper Method
@HM There is just a shiny new collection of problems you have to face :)
John at CashCommons
+2  A: 

The answers given so far are good for API or shorter usage guides, but if you are composing a serious body of text, you need a serious composing tool. The question you posted gives a pretty good run-down of the strengths of several heavy-hitters in this category, so i won't rehash them.

If you don't have technical writers, that is to say, your documentation comes solely from developers, then you won't have much documentation. Their time is better spent on creating the product. If, on the other hand, your need for documentation is great enough that you need people who's primary job is technical writing, then they deserve (and definitely require) the right tools.

You would not expect your developers to compose their code in notepad.exe (although some of them probably do it anyway), nor will your technical writers thrive with anything but the best tools for their job.

TokenMacGuy
@TokenMacGuy: IIUYC, by "serious composing tool" you refer to Latex/Sphinx for developers, and for technical writers you say "serious tools" and that would be something else, like FrameMaker in the link?
Marcus Lindblom
Yes, that is what i'm suggesting.
TokenMacGuy
+2  A: 

Steve Streeting, the (former) project lead for OGRE, recently wrote an article about his new documentation toolchain which starts out with ASCIIDoc and ends up as PDF: Building a new technical documentation tool chain. It includes full setup instructions for ASCIIDoc, DocBook and FOP on Windows.

Jörg W Mittag
+1 Great article. Now I can use Asciidoc on Windows too :-).
Helper Method