@danielcranney I start with a big block comment explaining to myself what I'm going to implement, keeping notes as I go... Once the code works I refactor so the code reads like the comment block, copy over any non-obvious nugget of info into small inline comments, and delete the original note