views:

68

answers:

4

Most offices today use Microsoft Office for documentation and presentation. Lots of programmers prefer to work and develop under Linux. When your shop uses both, how do you do your development in Linux and documentation in Windows and stay productive?

+3  A: 

I would just do the documentation in Linux too. MS Office can be run using some Wine derivative (or so I'm told), but I would rather use OpenOffice.org for such documents.

If you absolutely have to use Windows, you can boot a virtual machine (using e.g. VirtualBox) and do the dirty work while still having access to your preferred environment.

Thomas
This is what I do.
Conor
A: 

There are two options that I've seen used.

(1) Use web-based documentation. Examples include Google Docs or a wiki. As long as you have a web browser, you can view and edit the documentation.

(2) Use a cross-platform office suite. I have OpenOffice.org installed on Linux and it can open Microsoft Office file formats, including the new .*X format. The only thing that you need to do is to make sure that you open it in a Microsoft product later to make sure the formatting is still good.

But everyplace that I've personally worked performed cross-platform development. In these cases, the development machines were typically Windows boxes and the developers either ran Linux VMs or SSH'ed into a Linux server to test their work on the deployment environment.

Thomas Owens
A: 

Steve Streeting wrote an interesting blog post about his technical documentation tool chain with the following requirements:

  • Lets the author concentrate on content rather than style
  • Generates multiple formats from one source (HTML, PDF, man pages, HTML Help etc)
  • Does all the tedious work for you such as TOCs, cross-references, source code highlighting, footnotes
  • Is friendly to source control systems & diffs in general
  • Standard enough that you could submit the content to a publisher if you wanted to
  • Preferably cross-platform, standards-based and not oriented to any particular language or technology
Gregory Pakosz
+2  A: 

The teams I've been with always write documentation in Linux. POD makes it very easy to write tolerable-looking man pages, and higher-level ("glossy") documentation can be done with simple tools (HTML), moderate-complexity tools (markdown) or with very complex tools (LaTeX).

To each their own, but I'd avoid the Office and OpenOffice tools like a skunk, because they play so poorly with git, svn, cvs, etc. (diff, blame, merge, etc., just don't work with a big binary pile of data.)

sarnold
+1 for the comment about office suites
nico