Why document? You will forget! (None of us are elephants)
Best documentation is self-documentation: components that clearly identify themselves and their purposes
Long-time practice in software coding:
Descriptive variable names, function/method/class names, etc.
Inline comments in code to explain anything not self-evident.
Self documentation makes it easy to find documentation in the future - it never gets lost.
Simplicity, Abstraction, and the Modern Website: 10 Years Later