Beginner ยท 5h 24m ยท 22 lessons
Debugging & Problem Solving
Turn 'it's broken and I have no idea why' into a calm, repeatable process.
What you'll learn
- โฆFollow a calm, repeatable process on any bug: reproduce it, read the evidence, test one theory at a time, then fix and confirm
- โฆRead an error message and a stack trace to name the error type and find the line in your own code where it broke
- โฆWrite exact, trimmed steps that reproduce a bug every time, so you can prove when it's fixed
- โฆPlace labelled print or log lines that show a variable's real value and type where the code goes wrong
- โฆSet breakpoints and choose Step Over, Step Into, Step Out or Continue to watch values change line by line
- โฆNarrow a bug down by halving the suspect code or commits, and by explaining the code line by line to a rubber duck
- โฆTurn an error into a good search, check version-matched docs, and ask for help with a minimal reproducible example
- โฆUse everyday habits (small steps, clear names, linters, tests) that stop bugs before they start
- โฆDiagnose slow code and flaky bugs with measurement and logging, and lock each fix in with a regression test
- โฆBreak a hard problem into small pieces, shrink it to a minimal case, and decide when a break will help more than another try
Part of these career paths
- Frontend Developer path ยท course 5 of 8
- CS Foundations path ยท course 5 of 5
Certification projects
Build 3 projects to earn your certificate
Hands-on work that proves you can apply what you learned โ part of the certificate requirements.
Syllabus
Module 1 ยท 56m
The debugging mindset Free
What you'll be able to do
- Can describe any bug as a gap between expected and actual behaviour
- Can stay calm and change one thing at a time, trusting evidence over guesses
- Can run the five-step loop on a bug: reproduce, read the evidence, form one theory, test it, fix and confirm
- Can tell a syntax, runtime or logic error apart from how it shows up
Module 2 ยท 57m
Reading the evidence Locked
What you'll be able to do
- Can read an error message for its type, its description, and its file and line
- Can follow a stack trace to the deepest frame in your own code
- Can decode the most common errors (undefined, NameError, IndexError, ModuleNotFoundError) and try the likely fix
- Can write short, trimmed steps that reproduce a bug every time
Module 3 ยท 1h 1m
Tools & techniques Locked
What you'll be able to do
- Can place labelled prints that show a value and its type before and after the suspect line
- Can set a breakpoint and pick Step Over, Step Into, Step Out or Continue for the job
- Can halve the suspect code or commits to corner a bug in a few checks
- Can explain code line by line, out loud, to catch a wrong assumption
Module 4 ยท 1h 1m
Getting unstuck & staying ahead Locked
What you'll be able to do
- Can read a function's signature in its documentation and call it correctly.
- Can turn an error message into a search query that finds real answers.
- Can write a minimal reproducible example and ask a clear question with it.
- Can name everyday habits, like small steps and clear names, that stop bugs before they start.
Module 5 ยท 44m
Debugging in practice Locked
What you'll be able to do
- Can measure code with a profiler or timings and fix the biggest bottleneck first.
- Can turn a flaky, intermittent bug into one that reproduces on demand.
- Can lock a fix in place with a regression test that fails on the bug first.
Module 6 ยท 45m
Problem-solving toolkit Locked
What you'll be able to do
- Can break a big, vague problem into small sub-problems and solve them one at a time.
- Can shrink a broken program to the smallest version that still shows the bug.
- Can recognise tunnel vision and decide when stepping away will help more than pushing on.