Write code assuming it will be read while you're still in earshot.
Too often code is written with little awareness of those who will follow us and need to understand it. After the functional priorities (correct, stable, testable, etc.) your highest priority should be writing readable code that is easy to understand. Let’s look at a simple example.