re: #18 Fozzie Bear
This is so, so true, if only because they will use it in a way you didn’t think of.
It reminds me of writing papers in college. I would proofread them 20 times, then give it to a friend to look over. The friend would seemingly always find a couple of rather obvious errors that I missed, because when I am reading it, I see what I meant to say often, rather than what I did say. Similar things happen with code, in the sense that you have a certain use-case in mind when you write the code.
A user is unrestricted. When you code you follow a tight sequence of steps that seem ‘common sense’ and straight forward because of the boundaries set by the language, structure and environment. A user doesn’t know anything about this so is free to make silly* choices.
*Silly in the context of what is required to have the code run reliably.