CDN$ 18.82
  • List Price: CDN$ 20.95
  • You Save: CDN$ 2.13 (10%)
FREE Shipping on orders over CDN$ 25.
Temporarily out of stock.
Order now and we'll deliver when available. We'll e-mail you with an estimated delivery date as soon as we have more information. Your account will only be charged when we ship the item.
Ships from and sold by Gift-wrap available.
Debugging: The 9 Indispen... has been added to your Cart
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 3 images

Debugging: The 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems Paperback – Nov 5 2006

5.0 out of 5 stars 8 customer reviews

See all 5 formats and editions Hide other formats and editions
Amazon Price
New from Used from
Kindle Edition
"Please retry"
"Please retry"
CDN$ 18.82
CDN$ 10.99 CDN$ 18.43

Harry Potter and the Cursed Child
click to open popover

No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
Getting the download link through email is temporarily not available. Please check back later.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your mobile phone number.

Product Details

  • Paperback: 192 pages
  • Publisher: AMACOM (Nov. 5 2006)
  • Language: English
  • ISBN-10: 0814474578
  • ISBN-13: 978-0814474570
  • Product Dimensions: 18.6 x 1.2 x 23 cm
  • Shipping Weight: 399 g
  • Average Customer Review: 5.0 out of 5 stars 8 customer reviews
  • Amazon Bestsellers Rank: #186,014 in Books (See Top 100 in Books)
  •  Would you like to update product info, give feedback on images, or tell us about a lower price?

Product Description

About the Author

David J. Agans (Milford, NH) is a recognized expert called in to help with tough debugging problems. He currently runs PointSource, a computer systems consultancy. He has worked with industrial control and monitoring systems, integrated circuit design, handheld PCs, videoconferencing, and countless other systems.

Customer Reviews

5.0 out of 5 stars
5 star
4 star
3 star
2 star
1 star
See all 8 customer reviews
Share your thoughts with other customers

Top Customer Reviews

Format: Paperback
An excellent book of reference for novice to medium level user.
Mr. Agans' book presents real life experiences, or as he calls them war stories and humor filled comment/anecdotes.
I find myself chuckling and giggling along while reading this
book, some of what he said brought back my own memories while
working/debugging on my own software bug(s), or other people's
bug(s) that I have somehow 'inherited' because they left the
company, or are too busy on other projects to debug their own
code. I like the metaphors that he uses to explain ideas or
concepts that seems a bit too complicated to understand.
Mr. Agans made this very clear in the beginning of his book;
the book is not a cover-it-all book, it is a general concept
book on how to isolate, find, and debug something that has gone
wrong. The principles presented by Mr. Agans can be applied to
situations covering everyday life. He presented examples of well
pump and light bulb, etc...
More experienced software/hardware engineers or more experienced
problem solvers who read this book might find it covering bases
that they already know, but the humor makes it worth while.
Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again.
Report abuse
Format: Paperback
Debugging leads to quality products and competitive success. This book is the result of twenty years experience in troubleshooting hardware and software products. Agans documented his nine rules for debugging, and explains each one in a chapter. You can read this to get ideas for solving problems in a systematic way.
His first rule is "understand the system", another way to say "don't assume" or "read the manual". [His comments on "a politician" tells me he should follow rule #1 (p.18).] Sometimes the constraints of time and money will not let you capture enough information; management will set the rules and schedules.
The "quit thinking and look" rule says that facts should drive theories (like in criminal detection). Making a list of probable causes can be a guide to research. Page 54 tells of a bug in "one small, simple software routine". Is code inspection passe? Page 65 tells of a light not going on. Based on MTBF, its more likely the light bulb than the switch. But don't overlook the possibility of the connection at the receptacle.
"Divide and Conquer" would be better phrased as "narrowing the search" for a faulty component in a planned, logical manner. Changing one thing at a time advises against trial and error, or guessing at the solution. Keeping track of all changes allows narrowing the search, and any possible interaction with an earlier change.
"Check the Plug" suggests using a PRINT statement that works all the time, not just for a certain event. This is not practical advice in my experience! You should test the tool before using it for testing; recalibration is always good. "Get a Fresh View" is another way to restate the problem.
Read more ›
Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again.
Report abuse
Format: Paperback
David Agans does a great job of explaining how to approach debugging as a science rather than an art. If you're a novice programmer, the information here will prove invaluable; discovering how to debug effectively on your own can take many years.
Experienced programmers may consider most of the rules to be obvious; however, those same programmers might be surprised to find how many of these obvious rules they neglect to follow. I've been debugging for more than 20 years, and still learnt some useful new tricks.
Peppered throughout the text are a large number of war stories from the author's own experience with embedded systems. As well as illustrating how to (and more commonly, how not to) approach a particular problem, these are all well written and often entertaining.
Some of my favourites: how wearing the wrong shirt to work caused a new video compression chip to crash; teenagers coming home from school subtly altering the behaviour of a video conferencing system; a vacuum cleaner that made the house lights flash on and off; a noisy read/write line that led a junior engineer to mistakenly redesign an entire co-processor memory circuit; and the self-test feature on an old Pong video game.
Although most examples are hardware related, the approach described can be applied to almost any problem; indeed, several of the examples used have nothing to do with computing.
This is not a large book, but it's well laid out, easy to follow, and doesn't talk down to the reader. It's also packed with enough meat to satisfy the hungriest of programmers. Highly recommended.
Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again.
Report abuse
Format: Paperback
This book is very useful for beginners and intermediate programmers. "Debugging" is full of practical advice on debugging in general. It is not tied to any particular programming language.
The book describes 9 main debugging "rules", and many smaller "sub-rules". The rules (such as "Make it fail" or "Quit thinking and look") and sub-rules (such as "Start from a known state" or "Build instrumentation in") are derived from common sense and years of experience. Many people know most of the rules, but perhaps do not systematically follow them. "Debugging" clarifies and makes a systematic review of the debugging practices, with examples taken from real life, simplified to remove the jargon.
The book is quite funny and makes enjoyable reading. I am looking forward to more: perhaps we can see more stories in the next edition, or in a companion volume, or on the debugging rules web site.
Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again.
Report abuse