Independent · Cambridge IGCSE 0478 & AS/A Level 9618
Find where your reasoning breaks.
Write pseudocode, run it against hidden test cases, inspect the trace, and learn which step needs work.
No account. Nothing uploaded. Works offline once loaded.
How marking actually works
Not a multiple choice. Real CIE pseudocode, in an editor that knows the syntax.
Ordinary values, then the awkward ones: boundaries, zero, negatives, empty input.
Which categories earned marks, the first case that failed, and what kind of mistake it looks like.
Anything you get wrong returns on a spacing schedule until you can do it unaided.
The five representations
The same algorithm is structured English, pseudocode, a trace table, a flowchart and a logic circuit. Understanding usually breaks when you move between two of them — so DryRun lets you move across all five and watch where the versions stop agreeing.
- Structured English → pseudocode, with the trace of the result
- A trace table you fill in → the program that would produce it
- A flowchart → drawn chart, pseudocode and trace at once
- Boolean expressions → truth table with every intermediate step, and the circuit
What is actually covered
For teachers
A no-login diagnostic lab for Cambridge Computer Science. Students practise in the browser and export evidence for their teacher.
How it works in a classroom
- Send the link. There is nothing to install and no account to create.
- Students take a short diagnostic, then practise; wrong answers return on a schedule.
- They export a JSON or CSV file and hand it to you. Every row names the course it belongs to.
- Questions are original, written against publicly listed syllabus content.
What it does not do
- It does not cover a whole syllabus. Coverage is listed above, generated from the question bank.
- There is no class dashboard yet — evidence arrives as files from students.
- Progress lives in each student's browser. Clearing site data loses it unless exported.
- No past-paper material is reproduced, and no grade improvement is claimed.
No classroom study has been run yet, so there are no adoption figures, testimonials or grade claims on this page — and there will not be until there is real data to show.
Your data stays with you
Your answers and progress stay in this browser. Nothing is uploaded. Export your progress before changing device or clearing browser data.
Independence
Independent learning resource — not endorsed by Cambridge International Education.
Cambridge International Education is not affiliated with this project and does not endorse it. The syllabus codes are used only to say which courses this resource is aimed at.
Set up · about a minute
Find where your reasoning breaks.
Write pseudocode, run it against hidden test cases, inspect the trace, and learn which step needs work.
-
Which course are you taking?
Required -
Which year do you sit the exam?
Required -
Which level?
Required -
How confident do you feel right now?
OptionalOnly used to pick your first question. It changes nothing else, and you can skip it.
Choose a course to begin.
Where your work is kept
Your answers and progress stay in this browser. Nothing is uploaded, there are no accounts, and no one else can see your work — including us.
That also means: clearing your browser data, using private browsing, or moving to another device will remove your progress unless you export it first.
Try it before you choose
Change the pseudocode and watch the trace table follow it, line by line. This is the same engine your answers are marked with.
Dashboard
Syllabus progress
Recent attempts
Practice
Question
Your answer
Pseudocode Lab
Free tools, not marked. Move an algorithm between every representation and see where they disagree.
Pseudocode
Write CIE pseudocode. Use the left arrow symbol for assignment.
Click "Step" to start running line by line.
Which syntax is supported?
DECLARE a : ARRAY[1:10] OF INTEGER indices start at 1
DECLARE g : ARRAY[1:3, 1:4] OF INTEGER then g[row, col]
CONSTANT PI = 3.14
x ← expression always assign with ← (you may also type <-)
Operators: + - * / MOD DIV & (string join)
Comparison: = <> < > <= >= Logic: AND OR NOT
IF … THEN … ELSE … ENDIF (THEN may be omitted)
CASE OF x / value : statement / OTHERWISE statement / ENDCASE
FOR i ← 1 TO 5 STEP 2 … NEXT i (or ENDFOR)
WHILE condition DO … ENDWHILE REPEAT … UNTIL condition
OUTPUT expression, expression INPUT x
Functions: LENGTH MID LEFT RIGHT UCASE LCASE INT ROUND
PROCEDURE Name(a : INTEGER, BYREF b : INTEGER) … ENDPROCEDURE then CALL Name(x, y)
FUNCTION Name(n : INTEGER) RETURNS INTEGER … RETURN … ENDFUNCTION recursion allowed
OPENFILE "f.txt" FOR READ / WRITE / APPEND READFILE "f.txt", x WRITEFILE "f.txt", x
CLOSEFILE "f.txt" EOF("f.txt") files live in memory for one run only
Comments: start the line with //
Trace table
Nothing has been run yet.
Structured English
Which sentences are understood?
CIE pseudocode
Trace table
Nothing converted yet.
Your trace table
Fill the table in, then click Generate. Leave a cell blank when that variable does not change.
CIE pseudocode
Your flowchart
Flowchart
Nothing drawn yet.
CIE pseudocode
Trace table
Nothing traced yet.
Logic Lab
Every intermediate step gets its own column, and the circuit is drawn with the gate symbols used on the paper.
Boolean expression
Supports AND OR NOT XOR NAND NOR and brackets. Variables are single capital letters A–Z.
Precedence: ( ) > NOT > AND/NAND > XOR > OR/NOR
Truth table
Click "Generate" to see it.
Logic circuit
Click "Generate" to see it.
Progress
Evidence by topic
Review queue
Every attempt
How these are worked out
Evidence
Does this actually help anyone learn? This page only ever shows what has really been recorded on this device. Where there is no data, it says so rather than filling the space.
Learning gain
Retention
Slips that keep coming back
Tell us what you think
Stored on this device and included in the export. Nothing is uploaded from here.
How a study would be run
Settings
Everything here is stored in this browser only. Nothing is uploaded.
Who is using this browser
If you share a computer — a school machine, a family laptop — add yourself here so your work is kept apart from everyone else's. Names stay on this device and are never uploaded.
Course
Automatic copies on this device
DryRun keeps the last few copies of your work in this browser and takes one before anything risky, such as an import. If a record is ever damaged, it is restored from the newest copy by itself.
Checking how this browser is storing your work…
Your data
Your attempts, evidence and review queue live in this browser's storage. Export them if you are changing device or want to hand them to a teacher.
Your data
In plain language, because you should not need a lawyer to use a revision tool.
What is stored
- The course you chose: qualification, syllabus version, exam year and level.
- Every attempt: the question, what you submitted, the marks, how long it took, and what kind of mistake it looked like.
- Your evidence per topic, your review queue, and any practice session in progress.
- Any feedback you choose to write on the Evidence page.
Where it is stored
In this browser, in its local storage, under the key dryrun.store.v3. It never leaves the device. There is no server to send it to.
What is not collected
- No account, no name, no email, no school.
- No analytics, no tracking, no advertising, no cookies for tracking.
- No third-party fonts or scripts. The page makes no network requests after it loads.
- Your code is never uploaded. It runs in your own browser.
Exporting and erasing
Automatic copies: the last few versions of your work are kept in this browser, and one is taken before anything risky such as an import. If a record is ever damaged it is restored from the newest copy by itself. They live on this device only, and erasing everything removes them too — an erase that left copies behind would not be an erase.
Sharing a computer: if several people use one browser, each can be added in Settings and gets their own separate record. Names are labels typed on this device; they are not accounts and are never uploaded.
Export: Settings → Export everything, or the Evidence page for an anonymised copy. You get a JSON file; the CSV export has one row per attempt, each naming its course.
Erase: Settings lets you erase the current course or everything. Both are immediate and cannot be undone.
If you clear your browser data — including using private browsing or switching device or browser — your progress is gone unless you exported it. Restore a backup from Settings, or from the first screen before choosing a course.
For teachers and schools
Because nothing leaves the browser, there is no student data for a school to process on our side, and no data-sharing agreement to sign. Evidence reaches you only when a student chooses to export a file and give it to you.
About DryRun
An independent learning resource for Cambridge Computer Science, built as a single offline-capable page.
What it is
Check it for yourself
Every rule in the interpreter, the graders, the syllabus registry and the progress logic is covered by assertions that run in your browser. Nothing is taken on trust.