> How did André do this, with no tool but a pencil?
Using his brain. Intensively ;-)
Reminds me a story that happened to me. I was doing some heavy changes to some library, then started running the tests. The tests were failing, and without looking at log I knew immediately where the bug was. So I fixed that, launch the test and again same story. And again. At the 4th time, the cause was not immediate so I was considering looking at the log when I noticed I was not actually running the program at all, but was executing something else!
So to find bug, you just need to ask yourself where it will fail, and fix that ;-)