@Zaku, I was hired once as a contract beta tester of one of the earliest spreadsheet programs developed in Silicon Valley. The supervisor handed me a list of fourteen steps to set up the software and left me to it.
A little while later I reported back that I’d had a total crash.
Bewildered, she looked down at the list of steps she’d given me and said, “What did you do?”
I said, “I did the last one first.”
She was stunned. “Why did you do that?”
My husband always said that as a beta tester, I was a natural.
I say that any system designed on the assumption that everything will go the way it’s supposed to is doomed to fail.
The programmer should not be trying to predict and trap for every error the user might make. It doesn’t take much of a leap to get outside that circle and into the programmer’s major blind spots. So I agree that you want a tester who doesn’t share the programmer’s mindset, or at least knows how to shed it while testing.