Latex
Get a complete distribution, and install all of it. Don't try to be smart about packages. 1Gb of your disk space is worth less than the time you'll spend debugging missing dependencies.
I use texlive, because it's available on all platforms:
- MacOS: http://www.tug.org/mactex/
- Ubuntu: apt-get install texlive-full
- Windows: http://www.tug.org/texlive/ (you'll get the same distribution as above, but you have to install it yourself)
Tools
I'm a developer. When I write something that's not an e-mail, I'm in Eclipse. So I got myself an Eclipse plug-in for Latex at http://texlipse.sourceforge.net/. You can plug this link directly in the Update Manager to get the plug-in.
I recommend configuring your texlipse project to use pdflatex. This gets you the PDF that you need, and lets you use .pdf files as figures. Most software used for figures has pdf output.
Version Control
I feel uneasy if my work is not under version control... it's a disaster waiting to happen. Latex is all text, so you can even work on multiple machines, and merge the changes intelligently.
I recommend subversion or git. They both have Eclipse plugins:
- subversion: http://subclipse.tigris.org/
- git: http://www.jgit.org/
Bibliography
There's no way in hell I'm typing in the data for my 100-200 bibliography references. Here's how I get my .bib entries:
- Go to Google Scholar Preferences
- Under Bibliography manager, select Show link to import citations into
- Make sure you have Bibtex selected as the format, then click OK.
- Find the cited paper / book on Google Scholar: http://scholar.google.com/
- Click on the Import into Bibtex link. The entry is revealed for your copy-pasting pleasure.
Act Like You're Building Software
Writing in latex is more like building software than writing a humanities paper. Once I embraced that, I became less miserable.
Unlike MS Word, latex lets you distribute your work across many files. A good directory / file organization can make re-organizing sections really easy.
Writing in latex is also like building software in that you can use libraries. They call them packages. Here's what used in my thesis:
- listings - code listings
- url - lets you add URLs to bibliography entries (why is that not in base, again?)
- graphicx - figures? I think you need it to import PDF files, I'm not sure
- amssymb, latexsym, amsmath - useful stuff for mathy formulas (I include them everywhere, it makes my life easier)
- boxedminipage - nice borders around code listings
- times - I forgot what it does
- clrscode - format your pseudocode CLRS style (I like it)
I'd like to push the building software similarity even further, but I haven't figured out how to set up a continuous build yet :)
Conclusion
Writing in latex isn't as intuitive as using MS Word. On the other hand, there are some advantages to describing the contents of your paper in code. Knowing and taking advantage of them has made my life easier, and saved me from potential disasters.
I hope you found this useful. If you have more tips, please leave a comment!