« Welcome to Mirkwood; Here's Your Badge | Main | Death by Algorithm! »
I find myself this Saturday in the possession of a half-full pitcher of mojito. This is something of a problem, given that I need that very pitcher to make mojitos for tomorrow's Sunday barbecue. So I have been doing my best this afternoon to rectify the problem. I only bring this up so that if this post seems less coherent than usual, it's because of the Demon Rum. In vino veritas, and all that.
So. In the course of my job, I need to produce documentation that falls into these basic types:
And I need to produce said documentation in the following formats:
/usr/share/man/ or wherever man pages go. To be honest, I'm somewhat confused about the difference between troff, nroff, and other *off variations. But I suppose I shouldn't worry my pretty little tech writer head over such things.For engineering documentation, I don't think these types and formats are all that shocking. There are thousands of writers and engineers who are faced with the same problem every day. And yet there is no documentation technology that can handle all of these documentation types and output formats seamlessly. None.
AuthorIT, Framemaker + Webworks, and other mid-range tech writing tools can at least produce output HTML and PDF. All of these tools are Windows-only. All use a proprietary binary format. None handles man pages and source code-generated API documentation. (We won't even mention Microsoft Word, which still hasn't figured out how to do ordered lists consistently, or handle documents longer than 100 pages.)
The only toolchain I'm aware of that even comes close is Docbook. It's text/xml, so it plays nicely with UNIX. It doesn't require an expensive client to edit. It can produce output in myriad formats, including HTML, PDF, and man pages. It's open source. It's modular (with XInclude). It is the only documentation tool chain that even approaches the holy grail of user guides, API guides, and man pages.
Except... There's no such thing as "out-of-the-box" Docbook: you need to pick your editor, XSLT processor, FO processor, and template customizations, and there is very little guidance on how to do this.
Except... the default HTML output looks like something out of 1993. Basically, the output is nicely-marked up semantic HTML with no CSS whatsoever. Which is fine, except that this means you're going to have to sink some time into making the HTML look pretty.
Except... PDF output is really buggy, mostly because the major open source FO processor is still in beta status. Not that I blame them -- XSL-FO is hard, and typesetting in general is really hard. But the alternative is to buy a commercial FO processor for $4000/CPU... grrrr...
Except... in general, source code documentation generators do not integrate with Docbook. For Java code, there's a Javadoc doclet that produces Docbook (yay!). For PHP code, phpdocumentor can generate Docbook natively (yay again!) But for C++, Perl, Python, and other languages, you're screwed.
Why oh why does documentation software suck?
Posted by Evan Goer on Aug. 26, 2006 at 6:21 PM | Comments (6)
The basics:
http://www.yahoo.com automatically become links.This entry was posted on August 26, 2006 by Evan Goer.
For more entries, you can visit the main journal page or browse through the complete archives, which date back to 2001.
Text released under Creative Commons.
To use this license, you must attribute this work properly. This license does not extend to comments unless the original poster of that comment states otherwise.
Powered by Movable Type 3.33.
Home | About | Journal | HTML Tutorial
© Copyright 2001-2007, Evan Goer. Some Rights Reserved. Last Updated July 2, 2008.
Posted by Jon Parise on Aug. 27, 2006 at 3:14 PM
Posted by Evan on Aug. 27, 2006 at 4:36 PM
Posted by Jon Parise on Aug. 28, 2006 at 3:25 PM
Posted by Evan on Aug. 30, 2006 at 10:06 PM
Posted by Harry Fuecks on Aug. 31, 2006 at 12:17 AM
Posted by Evan on Aug. 31, 2006 at 7:38 AM