Charles Petzold wrote the Bible (or Necronomicon, take your pick) on Windows programming. He's blogging about the creation of his next book, and has posted these five simple rules for aspiring technical authors:

  1. Don't even try to compete with the docs.
  2. Forget about comprehensiveness.
  3. Write shorter chapters.
  4. It's all about the code.
  5. Get the reader involved.

#4 is the only one I'd quibble with---I think how the code was written is as important as its final state---but it's all still excellent advice.