Free Downloads
Debugging By Thinking: A Multidisciplinary Approach (HP Technologies)

Debugging by Thinking: A Multi-Disciplinary Approach is the first book to apply the wisdom of six disciplines―logic, mathematics, psychology, safety analysis, computer science, and engineering―to the problem of debugging. It uses the methods of literary detectives such as Sherlock Holmes, the techniques of mathematical problem solving, the results of research into the cognitive psychology of human error, the root cause analyses of safety experts, the compiler analyses of computer science, and the processes of modern engineering to define a systematic approach to identifying and correcting software errors. * Language Independent Methods: Examples are given in Java and C++* Complete source code shows actual bugs, rather than contrived examples* Examples are accessible with no more knowledge than a course in Data Structures and Algorithms requires * A "thought process diary" shows how the author actually resolved the problems as they occurred

Series: HP Technologies

Paperback: 600 pages

Publisher: Digital Press; 1 edition (November 14, 2003)

Language: English

ISBN-10: 1555583075

ISBN-13: 978-1555583071

Product Dimensions: 7.3 x 1.4 x 9.3 inches

Shipping Weight: 2.8 pounds (View shipping rates and policies)

Average Customer Review: 4.3 out of 5 stars  See all reviews (7 customer reviews)

Best Sellers Rank: #1,195,008 in Books (See Top 100 in Books) #56 in Books > Computers & Technology > Programming > Languages & Tools > Debugging #1493 in Books > Textbooks > Computer Science > Software Design & Engineering #3273 in Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Software Development

Often many programmers learn debugging by the sink or swim approach. Rarely in a computer science university education will much time be devoted to this crucial topic. But for the professional programmer, Metzger offers a systematic, disciplined approach. Examples are given in Java and C++. Actually, if you program elsewhere, you should still be able to easily follow the logic. He also shows how to effectively use a debugger to install breakpoints and step through code.Experienced programmers should not need this text. There will be little new for you. But it is well suited for newcomers. An easier way to learn than purely through experience.

The book lays out debugging strategies, heuristics, tactics, and approaches from the perspectives of detective, safety expert, psychologist, engineer, and computer scientist respectively. This is new! first! The text is an interesting read, and it helps the reader in his practice.However, the case studies are a weak spot. The C++ code is not top notch, if pitted against the real, modern C++ according to Andrew Koenig ("Accelerated C++,") Scott Meyer ("Effective C++," "More Effective C++," "Effective STL,") Herb Sutter ("Exceptional C++," "More Exceptional C++," "C++ Coding Standards,") and Martin Fowler ("Refactoring.") In other words, the presented C++ code is rather like code written in 1993 than in 2003, when the book was published.

Thanks for pointing out the sample chapter. I bought this book and found it very interesting. I was particularly impressed by Appendix B - Books about debugging. Also I have to add that one of the popular static analysis tools for C/C++/Java in EMEA is PRQA C/C++/J (Programming Research Ltd.)

I keep buying copies of this for members of my team - a must read for a senior software engineer IMO.

Debugging by Thinking: A Multidisciplinary Approach (HP Technologies) Positive Thinking: How to Eliminate Negative Thinking and Gain Success, Health and Happiness Through Positive Thinking and Self-empowering Affirmations (Positive Thinking Everyday Book 1) TMJ Disorders and Orofacial Pain: The Role of Dentistry in a Multidisciplinary Diagnostic Approach (Color Atlas of Dental Medicine) Diseases of the Temporomandibular Apparatus: A Multidisciplinary Approach Head, Neck, and Orofacial Infections: A Multidisciplinary Approach, 1e Interventional Cardiac Electrophysiology: A Multidisciplinary Approach Multidisciplinary Head and Neck Reconstruction: A Defect-Oriented Approach Tinnitus: A Multidisciplinary Approach Electrical Injury: A Multidisciplinary Approach to Therapy, Prevention, and Rehabilitation (Annals of the New York Academy of Sciences) Visual Thinking for Design (Morgan Kaufmann Series in Interactive Technologies) Teaching Digital Technologies: Computational Thinking, coding and robotics in the classroom Emotional Intelligence: Master Your Emotions- Raise Your EQ, Critical Thinking and Optimize Your Life (Emotional Intelligence, Critical thinking, EQ) Thinking About You Thinking About Me: Philosophy and strategies to further develop perspective taking and communicative abilities for persons with ... Autism, Hyperlexia, ADHD, PDD-NOS, NVLD Positive Thinking: How to Rewire Your Brain with Positive Thinking and Self-Empowering Affirmations to Finally Achieve Success and Freedom Critical Thinking: Decision Making with Smarter Intuition and Logic! (Critical Thinking, Decision Making, Logic, Intuition) Thinking Through Systems Thinking Thinking German Translation (Thinking Translation) Thinking Spanish Translation: A Course in Translation Method: Spanish to English (Thinking Translation) The Nature of Theoretical Thinking in Nursing: Third Edition (Kim, The Nature of Theoretical Thinking in Nursing) 50 Philosophy Classics: Thinking, Being, Acting, Seeing, Profound Insights and Powerful Thinking from Fifty Key Books (50 Classics)