Free course

Practical Debugging Course

Debug code, browser requests, runtimes, and production incidents with reproducible evidence, focused tools, regression tests, and safe recovery actions.

5 modules · 25 lessons · No signup

Prerequisites: JavaScript, Shell Commands, HTTP and Testing JavaScript Applications

~~~

Your progress

of lessons completed.

Course completed.

What you'll learn

Move from symptom to first failing boundary, prove the cause, ship a regression-tested repair, and preserve a useful incident record.

Course contents

  1. Debugging method

    Reproduce the problem, define expected behavior, minimize the case, and test one hypothesis.

    1. ✓ Make the bug reproducible
    2. ✓ Separate facts from hypotheses
    3. ✓ Reduce to a minimal case
    4. ✓ Change one variable
    5. ✓ Check your understanding: debugging method
  2. Debug code

    Read stack traces, add focused logs, pause execution, and convert the failure into a regression test.

    1. ✓ Read the stack trace
    2. ✓ Add focused diagnostic logs
    3. ✓ Pause with a debugger
    4. ✓ Write a regression test
    5. ✓ Check your understanding: debug code
  3. Debug the web path

    Use browser and curl evidence across requests, responses, CORS, TLS, storage, and frontend state.

    1. ✓ Inspect the Network panel
    2. ✓ Reproduce the request with curl
    3. ✓ Classify CORS and TLS errors
    4. ✓ Inspect browser state
    5. ✓ Check your understanding: debug the web path
  4. Debug the runtime

    Inspect configuration, permissions, processes, ports, dependencies, and build artifacts.

    1. ✓ Compare effective configuration
    2. ✓ Diagnose file and permission errors
    3. ✓ Diagnose processes and ports
    4. ✓ Verify dependencies and build output
    5. ✓ Check your understanding: debug the runtime
  5. Debug production safely

    Use timelines, observability, bounded mitigations, rollback, and an incident record to recover without destroying evidence.

    1. ✓ Build a change timeline
    2. ✓ Use metrics, logs, and traces together
    3. ✓ Mitigate and roll back safely
    4. ✓ Finish with a debugging record
    5. ✓ Check your understanding: debug production safely