"Programming computers can be crazy-making. Other professions give you the luxury of seeing tangible proof of your efforts. A watchmaker can watch the cogs and wheels; a seamstress can watch the seams come together with each stitch. But programmers design, build, and repair the stuff of __imagination__, ghostly mechanisms that escape the senses. Our work takes place not in RAM, not in an editor, but within our own minds. Building models in the mind is both the challenge and the joy of program- ming. How should we prepare for it? Arm ourselves with better debuggers, decompilers, and disassemblers? They help, but our most essential tools and techniques are mental. We need a consistent and practical methodology for __thinking about software problems__. From the Preface of ""__Thinking FORTH__"" by L. Brodie"