reproduce the error
For How to Debug a Programming Assignment Systematically, the reproduce the error step needs a visible outcome. If you cannot describe success or failure, reduce that step further before continuing.
Debugging becomes chaotic when several changes are tried at once. A reliable process starts with a reproducible failure, reduces it to the smallest useful case, and then tests one hypothesis at a time.
If a program crashes only for certain input, save that input first. Remove unrelated behaviour until the failure remains in a small section. Only then use the debugger to inspect the state that matters.
Do not treat How to Debug a Programming Assignment Systematically as a rigid checklist. Pick the first point that is unclear in your own work, test it with one concrete example, and only then move on.
For How to Debug a Programming Assignment Systematically, the reproduce the error step needs a visible outcome. If you cannot describe success or failure, reduce that step further before continuing.
For How to Debug a Programming Assignment Systematically, the build a minimal failing case step needs a visible outcome. If you cannot describe success or failure, reduce that step further before continuing.
For How to Debug a Programming Assignment Systematically, the use logs and a debugger step needs a visible outcome. If you cannot describe success or failure, reduce that step further before continuing.
For How to Debug a Programming Assignment Systematically, the verify the fix with a regression test step needs a visible outcome. If you cannot describe success or failure, reduce that step further before continuing.
reading the error message but not preserving the failing input
changing several possible causes at the same time
testing a fix only with the original example
collecting logs before deciding what question they should answer
Close How to Debug a Programming Assignment Systematically and explain your next step in your own words. State the assumption, expected result and the test you will use for that specific step.