Practice Notes
Debugging strategies and common mistakes tied to the site's own challenge sets, not generic advice.
Variables & Data: The Scoreboard Mistake Almost Everyone Makes First
CREATE and CHANGE look interchangeable until the interpreter stops you. Here's why they aren't.
Operators & Comparisons: Why an Odd-or-Even Check Gives the Wrong Answer
The remainder is right. The comparison built around it is backwards, and it's an easy way to get it backwards.
Input, Output & Comments: The Answer You Typed Isn't the Type You Think It Is
ASK, input(), and prompt() all hand back text -- even when you typed a number. That difference has to be handled on purpose.
Program Structure & Sequence: Right Steps, Wrong Order
Every line here does something correct. Read top to bottom before deciding the whole program is correct.
Conditions & Branching: "And" vs. Two Separate Ifs
Two conditions that must both be true are one decision, not two. Writing them as two IFs lets either one alone let something through.
Loops & Repetition: The Off-by-One That Shows Up in Every Language
One boundary character decides whether a loop runs the right number of times or stops one short.
Functions & Reuse: Why Your Function "Returns Nothing"
Showing a value from inside a function and sending it back out are two different things. Only one of them lets the caller use it.
Objects & Blueprints: Proving Two Objects Don't Secretly Share a Value
Two objects made from the same blueprint look identical until you change one. Here's how to actually check they're separate.
Reading the Error Message Instead of Guessing
Every error on this site is a full sentence about your program, with a hint saying what to do. It's usually faster to read it than to guess.
Same Task, Three Languages -- What Changes and What Doesn't
Every challenge here solves one task in pseudocode, Python, and JavaScript. The logic never changes. A few small things always do.