May I suggest - lots of real world examples. You can't have too many examples. And one thing to remember is that the programmer never had to learn the program. It's easy to forget that other people don't know certian things. Good docs drastically cuts support email and if you get it right all you'll be getting is feature requests and spam. ;)