Chapter 01 · Debugging
Understand why your code breaks, then fix it.
We work through your own assignments on a shared screen, one problem at a time, so you learn how a bug is found instead of being handed the answer. Sessions follow your module's teaching order.
Open the syllabusStart with the module you are on now. Bring the code that is failing.
- Session
- Next topic
- Core habit
Syllabus
The path from first error to final project
-
Python for first-year modules
Beginner5 weeks5 lessons
A ground-up pass through the Python you meet in first-year modules: types, control flow, functions and files. Each lesson ends with a small program written on the call, not a worked example to copy.
-
Java and object-oriented coursework
Intermediate6 weeks5 lessons
Java coursework usually fails on design rather than syntax. We work through classes, interfaces and inheritance using the brief you already have, then break the code on purpose to see what the tests catch.
-
Data structures and algorithms
Intermediate6 weeks5 lessons
Big-O notation is easier once you have counted the steps yourself. We implement lists, trees and hash tables in the language your module uses, then compare what each one costs.
-
Debugging and exam preparation
Intermediate4 weeks5 lessons
Written exams ask you to find faults in code you have never seen. We practise reproduction, breakpoints and timed papers, using questions from your own course wherever you have them.
Walkthrough
How a bug is tracked down
Glossary
Words that come up in sessions
Explainers
Short reads on why code misbehaves
-
Fig.
6 min read
-
Fig.
5 min read
-
Fig.
7 min read
-
Fig.
6 min read
-
Fig.
8 min read