Email the Author

You can use this page to email Kevin Hicks about Level Up Your Debugging.

Please include an email address so the author can respond to your query

This message will be sent to Kevin Hicks

This site is protected by reCAPTCHA and the Google  Privacy Policy and  Terms of Service apply.

About the Book

One of the most frustrating things about bugs is you get a bug report, someone is breathing down your neck to get it fixed, customers are upset, and everyone thinks it should be easy to find and fix. And you have no clue where the issue is.

We’re lucky if we have enough details to even know where to begin looking. Often we are stuck having to dig into the code while trying random things to figure out where the actual issue is. It’s never as easy as just jumping to a code line everything points to and changing something.

This is even more stressful when we aren't familiar with our debugging tools or don't know any processes to effectively debug. I remember when I first started out trying to fix issues by going all over the place, trying every random thing, and becoming completely lost. It was stressful and I often felt like I had no clue what I was doing. Level Up Your Debugging contains all the tips, tricks, and processes I picked up over my 10+ years as a developer that I wish I would have known when I first started.

Why Should You Get This Book?

This is currently an early access book that will still be a work in progress in February when it releases. It will be complete with all content but will need feedback and edits to make it a 100% complete and polished book. Since it is early access, I am offering it as a pay what you want at least up until it releases in February.

You should read this book if you are actively involved in writing and debugging software. This is especially true if you find debugging frustrating and stressful. If you want to learn different processes, tools, and tricks to make debugging less stressful and more efficient, this book will help.

After reading this book, you should be able to:

  • Know the features debuggers offer and how it is beneficial to take the time to learn and set them up
  • Move away from relying on console.log and print statements for debugging
  • Have a process for debugging issues
  • Know how to debug locally and in production
  • Know how to ask for and receive help while debugging
  • Know about monitoring tools that help catch issues in production
  • Be more relaxed and efficient while debugging

Who Is This Book For?

Any developer that gets frustrated when debugging and wants to improve their debugging process. This will help beginner to senior developers that don't know their debugger inside and out and aren't already experts at debugging.

What type of software you write or the language you use does not matter. If you still use console.log, debug.log, or print statements as your only means of debugging, this book will help you. Or, if you fix bugs with ad hoc processes or by poking around the code, you will still find helpful advice inside.

Who Is This Book Not For?

This book will not help you if you are a Sherlock Holmes of debugging. Any developers who are already expert debuggers who can quickly and easily solve any bug probably won't find much value in this book. If you know your debugger inside and out or already have processes that work, this book will probably be below your skill level.

Table of Contents

  1. Introduction
  2. Thank You And Asking For Feedback
  3. What Is This Book About?
  4. Who Am I?
  5. Why Am I Writing This Book?
  6. Why Should You Read This Book?
  7. Introducing Debugging
  8. What Is Debugging?
  9. How Do Most Developers Start Debugging?
  10. Local VS Production Debugging
  11. How To Find The Problem?
  12. Gather Details
  13. Reproduce The Problem
  14. Ask Someone Else
  15. Debugging Tools
  16. Instrumentation
  17. Stack Traces
  18. Debugger
  19. Processes
  20. Backtracking
  21. Start At The Entry Point
  22. Problem Simplification
  23. Divide And Conquer AKA Binary Search
  24. Form A Hypothesis
  25. Bug Clustering
  26. Rubber Duck Debugging
  27. Learn Your Debugger
  28. Why Using A Debugger Is Important
  29. Getting Started With A Debugger
  30. Advanced Debugging
  31. Tips For Specific Types Of Errors
  32. Syntax And Type Errors
  33. Runtime Errors
  34. Logic Errors
  35. Data Errors
  36. Errors Across Multiple Systems
  37. Race Conditions And Performance Issues
  38. Make Production Debugging Easier
  39. Replicating Production In Lower Environments
  40. Remote Debugging
  41. Monitoring Tools
  42. More Debugging Tips
  43. Take A Break
  44. Google The Problem
  45. Ask For Help
  46. Make sure you know what code should do
  47. Don’t Make Assumptions
  48. Avoid Fixing Symptoms
  49. Don’t Ignore The Basics
  50. Focus On One Bug At A Time
  51. Only Change Enough To Fix the Bug
  52. Test Your Fix
  53. Add Automated Tests
  54. Document Everything
  55. Don’t Swallow Exceptions
  56. Refactor Code When It Is Hard To Debug Or To Maintain
  57. Conclusion

Who Am I?

Hi, my name is Kevin Hicks and I am a software developer that has been writing code for over 10 years. I primarily work as a senior software engineer leading teams on big enterprise projects at a day job and freelance for clients on the side. I've worked on many things from an iOS game to web applications but my primary focus is on writing custom web applications and SaaS apps. I'm now looking to give back to the dev community and transition into teaching and helping other devs.

You can find me at the following places:

  • Twitter @KevinHicksSW
  • kevinhicks.software
  • Dev.To
  • Medium

About the Author

Kevin Hicks’s avatar Kevin Hicks

@kevinhickssw

Kevin Hicks is a senior software engineer with over ten years of experience developing websites and web applications. Now focusing on mobile and web application development, he works as both a regular full-time employee and a consultant developing sites and applications for a large e-commerce company and clients. Kevin has worked on anything from small mobile games to large e-commerce sites to SaaS (Software as a Service) applications for startups and enterprise clients. Now he is looking to help other people by spreading the knowledge and experience he has gained over the previous years so they can avoid the many mistakes he has made.

Logo white 96 67 2x

Publish Early, Publish Often

  • Path
  • There are many paths, but the one you're on right now on Leanpub is:
  • Level-up-your-debugging › Email Author › New
    • READERS
    • Newsletters
    • Weekly Sale
    • Monthly Sale
    • Store
    • Home
    • Redeem a Token
    • Search
    • Support
    • Leanpub FAQ
    • Leanpub Author FAQ
    • Search our Help Center
    • How to Contact Us
    • FRONTMATTER PODCAST
    • Featured Episode
    • Episode List
    • MEMBERSHIPS
    • Reader Memberships
    • Department Reader Memberships
    • Author Memberships
    • Your Membership
    • COMPANY
    • About
    • About Leanpub
    • Blog
    • Contact
    • Press
    • Essays
    • AI Services
    • Imagine a world...
    • Manifesto
    • More
    • Partner Program
    • Causes
    • Accessibility
    • AUTHORS
    • Write and Publish on Leanpub
    • Create a Book
    • Create a Bundle
    • Create a Course
    • Create a Track
    • Testimonials
    • Why Leanpub
    • Services
    • TranslateAI
    • TranslateWord
    • TranslateEPUB
    • PublishWord
    • Publish on Amazon
    • CourseAI
    • GlobalAuthor
    • Marketing Packages
    • IndexAI
    • Author Newsletter
    • The Leanpub Author Update
    • Author Support
    • Author Help Center
    • Leanpub Authors Forum
    • The Leanpub Manual
    • Supported Languages
    • The LFM Manual
    • Markua Manual
    • API Docs
    • Organizations
    • Learn More
    • Sign Up
    • LEGAL
    • Terms of Service
    • Copyright Policy
    • Privacy Policy
    • Refund Policy

*   *   *

Leanpub is copyright © 2010-2025 Ruboss Technology Corp.
All rights reserved.

This site is protected by reCAPTCHA
and the Google  Privacy Policy and  Terms of Service apply.

Leanpub requires cookies in order to provide you the best experience. Dismiss