Debugging Techniques
Master plan for systematic debugging strategies across different languages, frameworks, and environments. This skill covers debugging tools, methodologies, performance profiling, and troubleshooting patterns for efficiently identifying and resolving issues in software systems.
Status
Master Plan AvailableKey Topics
-
Debugging Fundamentals
- Scientific debugging methodology
- Hypothesis-driven debugging
- Reducing problem space (binary search)
- Rubber duck debugging
- Documentation and issue reproduction
-
Interactive Debugging
- Breakpoints and conditional breakpoints
- Step through execution (step in/over/out)
- Variable inspection and watches
- Call stack analysis
- Remote debugging
-
Logging Strategies
- Structured logging patterns
- Log levels and verbosity
- Correlation IDs and tracing
- Log aggregation and searching
- Debug vs production logging
-
Performance Debugging
- CPU profiling and flame graphs
- Memory profiling and leak detection
- Network analysis and request tracing
- Database query optimization
- Frontend performance debugging
-
Environment-Specific Debugging
- Browser DevTools (Chrome, Firefox)
- Node.js debugging (Inspector, ndb)
- Python debugging (pdb, ipdb, debugpy)
- Go debugging (Delve)
- Java debugging (JDB, IntelliJ debugger)
-
Production Debugging
- Observability and monitoring
- Distributed tracing (Jaeger, Zipkin)
- Error tracking (Sentry, Rollbar)
- Live debugging techniques
- Post-mortem analysis
Primary Tools & Technologies
- IDEs: VS Code, IntelliJ IDEA, PyCharm, GoLand
- Browser: Chrome DevTools, Firefox DevTools, React DevTools, Vue DevTools
- Language-Specific: pdb/ipdb (Python), Delve (Go), GDB (C/C++), LLDB
- Observability: Sentry, Datadog, New Relic, Prometheus, Grafana
- Profiling: Chrome Profiler, py-spy, pprof, VisualVM
Integration Points
- API Design Principles: API debugging and testing
- Building CLIs: CLI debugging techniques
- SDK Design: SDK troubleshooting patterns
- Git Workflows: Debugging with git bisect
- Documentation Generation: Troubleshooting documentation
Related Skills
- Testing strategies
- Performance optimization
- Error handling patterns
- Logging and monitoring
- System architecture
Implementation Approach
The skill will provide:
- Debugging methodology frameworks
- Tool configuration templates
- Common issue diagnosis patterns
- Performance profiling guides
- Production debugging checklists
- Post-mortem templates