Documentation

⚠ You need documentation!

While it takes time to write usable documentation and takes a lot of effort to keep documentation updated, I think there is no way around documentation.

There are tons of tools, frameworks, apps etc. to make it easy to write and publish documentation in the first place, but usually it is a onetime job. After the documentation is created it is forgotten.

Ideas to mitigate these problems during software development:

  • Only document the non-obvious
  • Treat documentation as code
    • Use any VCS
    • Write tests
  • Choose a format that is easy to learn and use
  • Keep the documentation close to the sources
    • Generate code documentation from source code
    • Keep additional documentation in the same repository

Readme

Add a Readme.md file to every repository or application.

Chapters

This is a layout idea for an example application.

See: Example Documentation

In code documentation

TBD

Additional documentation

TBD

Visualization as code

Tools and workflows