Summary
This chapter explained in detail how to:
Use a few rules for efficient writing
Use reStructuredText, the Pythonista's LaTeX
Build a document portfolio and landscape
Use Sphinx to generate useful web documentations
The hardest thing to do when documenting a project is to keep it accurate and up to date. Making the documentation part of the code repository makes it a lot easier. From there, every time a developer changes a module, he or she should change the corresponding documentation as well.
This can be quite difficult in big projects, and adding a list of related documents in the header of the modules can help in that case.
A complementary approach to make sure the documentation is always accurate is to combine the documentation with tests through doctests. This is covered in the next chapter, which presents test-driven development principles and then document-driven development.