Making Microsoft Word less painful
Personally I think that Microsoft word is the worst, most widely deployed piece of software ever, and I despise it with a vengance. Over the years I've learned to use it in such a way that it doesn't egregiously waste my time, but I'm never going to like it.
One of my many many annoyances is that track changes sucks, and it doesn't work well with the bibliographic software that I use. Unfortunately all my colleagues use word, so I don't really have a choice. But I've just started a new major piece of writing, and I want to be able to diff it properly.
So here's a little pre-commit hook that I made to commit plain text versions of my word docs in a separate tree off the root dir of the git repository. The only downside is that it's OS X specific because I use the built in textutil command to do the .doc to .txt conversion, but antiword or catdoc would probably be better.
Update: I decided I was not terribly happy with the output of textutil, so I changed it over to antiword, which works much better, both for layout, and with the field codes that my bibliographic manager uses. I also fixed a rather nasty bug that stopped it working with modified files.
Josh and I had to write Effective Perl Programming in Word, which I don't mind so much except for when I have to use it. We did everything in Pod and then translated the Pod to WordML, which was pretty easy. I made a bare bones Pod::WordML module that implemented just the stuff I needed, but in such a way that anyone who needs it isn't stuck with my decisions. There is plenty of room for that module to grow.
I don't see myself needing it for a long time though. :)
The Definitive Guide to Catalyst was also written with Word. Our process was to write it in Pod, then use pod2latex and latex2rtf, followed by passing it on to a (human) formatter engaged by the publisher. You can still see the odd typo resulting from bugs in pod2latex if you look closely.