Wednesday 21 October 2009

LaTeX vs. Open Office 3

One decision that could have a major impact on my productivity during the final year project is the choice of authoring software for the report.

For the last major report I wrote I used LaTeX, with Kile to edit and quick 'n' dirty bash scripts to build. The result looked quite nice (if I do say so myself), and while I'm glad I used LaTeX, it was quite a painful learning curve at times.

For the final year project I'm at a stage where I'm considering whether to use LaTeX again, or go with Open Office 3. Running Kubuntu 8.04 as my primary environment rules out Microsoft Word. I thought listing the pros and cons, as well as MoSCoW'ing the features would be a fruitful endeavor.

LaTeX
Pros
  • since the entire document, including structure and markup, is written directly into the latex source, the files are quite version control friendly
  • the output is very nice
  • the writing environment can be very lean, Kile requires less resource to run than Open Office (though this is an assumption based on no facts at all). Not that I ever did, but I could edit the document through a command terminal if I so desired
  • organising references, with BibTeX, is very easy
  • because there's a "build phase" with the document, changes to diagrams and such like are picked up on the next build, without having to refresh through the document somehow
  • comments could be left in the source, which was useful for leaving TODO notes which could be easily grep'd and counted/located
  • some features which would be incredibly tedious to do manually, such as creating a table of contents, list of figures, alphabetised glossary and references, and an index, is quite straight forward
Cons
  • there is a build phase while the LaTeX source is built and converted to PDF. Upon nearing completion of the report mentioned earlier, when it was over 15,000 words and 50 pages, the build phase took about 20 seconds. Doesn't seem like much, but when you're feeling your way around new commands it's a definite pain. I guess this could be split up into smaller sections but I'm not sure how well that works
  • it's not WYSIWYG, meaning I had to trigger a build to see how something looked
  • not very portable - Open Office is installed on most of the machines I would use, whereas I needed certain LaTeX packages which were not part of the standard distribution. This would mean I couldn't build a PDF on university lab machines, for example.
MoSCoW Requirements
Some of the pros and cons listed are not really things I'm too concerned about. Prioritising my requirements of Open Office will help me better decide how to find out which one to choose for this project.
Must
  • allow automatic generation of the following: table of contents; bibliography.
  • allow automatic section, page and figure referencing
  • have an easy way to manage and cite references
  • allow exporting to PDF
  • be able to handle large documents, I think the report is going to end up around 30,000 words or so
Should
  • be able to 'link' to files for things like graphics, or data sources, so that they changes will be reflected in the report
  • allow leaving comments, or todo's in the document, which are ignored when printed/PDF is generated
  • allow splitting up the documents to be able to work on smaller parts at a time, to improve performance
Could
  • allow automatic generation of a list of figures
  • allow generating a PDF from the command line, so I don't need to run Open Office if all I've done is modify a graphic (would depend on 'linking')
Won't need (but Would be nice)
  • a diff view which would highlight the difference between versions
  • a plugin which offered SVN integration (one click commit, decent editor for commit message)
From what I know of Open Office, I think I could tick off most of the requirements as marked, and with the added benefit of portability (in my circumstances), it does have something which it can hold over LaTeX.

With just a little more research I should be able to make my mind up...

No comments:

Post a Comment