Free Downloads
Debug It!: Find, Repair, And Prevent Bugs In Your Code (Pragmatic Programmers)

Some developers thrash around aimlessly looking for a bug without concrete results. Others have the knack of unerringly zeroing in on the root cause of a bug. Are they geniuses? Just lucky? No, they've learned the secrets of professional debugging. This book will equip you with the tools, techniques and approaches-proven in the crucible of professional software development-to ensure that you can tackle any bug with confidence. You'll learn how to handle every stage of the bug life-cycle, from constructing software that makes debugging easy, through detection, reproduction, diagnosis and rolling out your eventual fix.If you develop software, sooner or later you're going to discover that it doesn't always behave as you intended. Working out why it's misbehaving can be hard. Sometimes very hard. Debug It! is here to help!All bugs are different: there is no silver bullet. You've got to rely upon your intellect, intuition, detective skills and yes, even a little luck. But that doesn't mean that you're completely on your own-there is much you can learn from those who have gone before. This book distills decades of hard-won experience gained in the trenches of professional software development, giving you a head-start and arming you with the tools you need to get to the bottom of the problem, whatever you're faced with.Whether you're writing Java or assembly language, targeting servers or embedded micro-controllers, using agile or traditional approaches, the same basic bug-fixing principles apply. From constructing software that is easy to debug (and incidentally less likely to contain bugs in the first place), through handling bug reports to rolling out your ultimate fix, we'll cover the entire life-cycle of a bug.You'll learn about the empirical approach, which leverages your software's unique ability to show you what's really happening, the importance of finding a reliable and convenient means of reproducing a bug, and common pitfalls so you can avoid them. You'll see how to use commonly available tools to automatically detect problems before they're reported by customers and how to construct "transparent software" that provides access to critical information and internal state.

Series: Pragmatic Programmers

Paperback: 232 pages

Publisher: Pragmatic Bookshelf; 1 edition (November 25, 2009)

Language: English

ISBN-10: 193435628X

ISBN-13: 978-1934356289

Product Dimensions: 7.5 x 0.7 x 8.9 inches

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

Average Customer Review: 4.5 out of 5 stars  See all reviews (15 customer reviews)

Best Sellers Rank: #1,033,701 in Books (See Top 100 in Books) #49 in Books > Computers & Technology > Programming > Languages & Tools > Debugging #390 in Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Testing #1297 in Books > Textbooks > Computer Science > Software Design & Engineering

Earlier this year, I had the opportunity to do a technical review of Paul Butcher's new book "Debug It!" and now that it's been published I'm pleased to be able to review the final product. A number of classic programming books, such as Steve Maguire's "Writing Solid Code" or Steve McConnell's "Code Complete", touch on debugging as one aspect of the software development process, but I'm not sure that I've ever seen or read an entire book devoted to the topic of debugging software. In that regard, Paul's new book fills a pretty interesting niche.Paul breaks the debugging process up into four stages: reproduce, diagnose, fix and reflect. These stages are covered in detail in the first five chapters of the book, and this is the most important section. In the chapter on reproducing bugs, he touches on topics such as how to control the environmental conditions under which bugs manifests themselves, and techniques for reproducing the inputs that trigger the bugs. He also addresses some of the difficulties involved in dealing with especially difficult-to-reproduce nondeterministic bugs. In the chapter on diagnosis, Paul moves on to the process of forming a hypothesis about what's causing the bug and then performing experiments to refine that hypothesis until you settle in on a root cause. There are a lot of useful guidelines here, including my favorite: Only change one thing at a time! The chapter on fixing bugs is relatively short, which reflects the reality that once you understand what's going on it's usually not that difficult to fix the problem. Here the author stresses the importance of adding regression tests, and making sure that you're fixing the root cause and not merely the symptoms.

Debug It!: Find, Repair, and Prevent Bugs in Your Code (Pragmatic Programmers) Hormigas / Ants (Criaturas diminutas!/Bugs, Bugs, Bugs!) (Multilingual Edition) Homemade Repellents: 31 Organic Repellents and Natural Home Remedies to Get Rid of Bugs, Prevent Bug Bites, and Heal Bee Stings (Homemade Repellents, Natural ... Homesteading, How to Get Rid of Bed Bugs) How to Get Rid of Bed Bugs: Learn How to Kill Bed Bugs and Prevent Bed Bug Bites Language Implementation Patterns: Create Your Own Domain-Specific and General Programming Languages (Pragmatic Programmers) Credit Repair Secrets: The Complete Credit Score Repair Book: How To Fix Your Credit, Improve Your Credit Score, And Bullet Proof Your Credit Report Using Current Credit Repair Tips Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers) Good Math: A Geek's Guide to the Beauty of Numbers, Logic, and Computation (Pragmatic Programmers) Bugged by Bugs?: Safe, Natural Ways to Fight Ants, Houseflies, Lice, Bed Bugs, Mosquitoes, Ticks and More Agile in a Flash: Speed-Learning Agile Software Development (Pragmatic Programmers) Test Driven Development for Embedded C (Pragmatic Programmers) OpenGL ES 2 for Android: A Quick-Start Guide (Pragmatic Programmers) Practical Vim: Edit Text at the Speed of Thought (Pragmatic Programmers) Credit Repair: The Complete Step-to-step Guide To Raise Your Credit Score Quickly And Control of Your Financial Life (Credit Repair Secrets, Credit Repair Tips, Fix Bad Credit) Significant Changes to the International Plumbing Code, International Mechanical Code and International Fuel Gas Code, 2012 Edition Learn to Code in Swift: The new language of iOS Apps (iOS App Development for Non-Programmers Book 2) The Insulin Resistance Solution: Reverse Pre-Diabetes, Repair Your Metabolism, Shed Belly Fat, and Prevent Diabetes - with more than 75 recipes by Dana Carpender Credit Repair: How To Repair Credit And Remove ALL Negative Items From Your Credit Report Forever Advanced Credit Repair Secrets Revealed: The Definitive Guide to Repair and Build Your Credit Fast The Haynes Bicycle Book: The Haynes Repair Manual for Maintaining and Repairing Your Bike (Haynes Automotive Repair Manual Series)