I never understood the obsession with coding speed. There seems to be a lot of people who claim a modest change in input speed is a massive productivity change to them (and how they justify their dedication to their preferred editor/UI/keyboard/language/et al). I might be an edge case, but when I "code" the minority of the work is actually writing source code. The majority is research/thinking/copy+pasta/et al. When…
It's great to be able to type quickly all you have in mental cache, until that cache expires.
That seems strange to me. If we are talking about complex high level architectural concepts, that should be documented before the coding. If you are talking about local function implementation, putting a comment above it as a summary. That is all I have ever needed. What types of things would you forget? I don't consider my memory to be particularly sharp, but I have never faced an expired mental cache while coding.