Duck Race – Guide

1. Create a Set of Questions

  • How to create questions using a plain text editor (Notepad, VS Code, etc.)
  • DuckRace activities are created by writing a simple text file. Each question follows a predictable structure so the system can parse it automatically.

1️⃣ General Rules

  • Write questions in a plain text editor (Notepad, VS Code, etc.).
  • Questions appear in the order they are written.
  • Each question begins with a Q number (e.g., Q1, Q2, Q3(a) etc.).
  • Answers are written using the DuckRace answer syntax:
    • =correct answer
    • For MCQs: -Option lines followed by =CorrectOptionNumber
    • For written answers: =model answer
    • For multi‑acceptable answers: {answer1/answer2/answer3}
  • Images are referenced using #filename.png (DuckRace will display the image if it exists in the teacher folder.)
  • Square‑bracket tables use:Code[ heading1,heading2 row1col1,row1col2 ] =[ …completed table… ]

2️⃣ Question Types and How to Write Them

A. Multiple‑Choice Questions (MCQ)

Format:

Code

Question text
-Option 1
-Option 2
-Option 3
=CorrectOptionNumber

Example from your exam:

Code

The same language can be used on computers that use different hardware
-Low-level
-High-level
=2

Notes:

  • Options must start with -
  • Correct answer is the number, not the text
  • You can include images above the question using #image.png

B. Written Answer Questions

Format:

Code

Question text
=Model answer

Example:

Code

Write pseudocode to add the integers stored in num1 and num2.
={total = num1 + num2/total=num1+num2}

Notes:

  • Use {a/b/c} to allow multiple acceptable answers
  • You can include multiple lines inside {} if needed

C. Fill‑in‑the‑Table Questions

Any question that requires students to enter data into a table can be introduced using a CSV like notation. Just begin and end with square brackets, use commas to separate columns and new lines for new rows.
Format:

Code

[ 
Column1,Column2
,, 
,, 
]
=[
Column1,Column2
value1,value2
value3,value4
]

Example from your exam:

Code

[
Line number,start,Output
,,
,,
,,
]
=[
Line number,start,Output
1,3,
3,,3
4,2,
...
]

Notes:

  • The first bracketed block is the blank table shown to students
  • The second bracketed block (after =) is the completed table used for marking

D. Missing‑Operator / Fill‑the‑Gap Questions

Format:

Code

Question text
#image.png
={answer1/answer2/answer3}

Example:

Code

Write the missing arithmetic operator:
#figure2.png
={^/**/pow}

Notes:

  • Use {} to allow multiple correct operators
  • You can include symbols or words

E. Logic Diagram / Boolean Questions

Format:

Code

Question text
#diagram.png
=CorrectAnswer

Example:

Code

Identify the logic gate:
#figure9.png
=OR

F. Self Marked SQL / Programming Questions

An answer beginning with =$ means students will self mark their response
Format:

Code

Question text
=$ SQL or code snippet here

Example:

Code

Write an SQL statement to display the sensor IDs:
=$ SELECT SensorID FROM events WHERE Length > 20 AND sensorType = "Door"

Notes:

  • =$ tells DuckRace this is an answer to be self marked

G. Multi‑Part Questions

Just continue with other parts to the same question but don’t leave a blank line:
(Question numbers are optional)

Code

Q3(a) Describe the purpose…
=answer
Q3(b) Explain why…
=answer
Q3(c) Describe one difference…
=answer

DuckRace treats each part as a separate question.

3️⃣ Images

To include an image:

Code

#filename.png

Rules:

  • Must be in the same folder as the text file
  • Must be PNG or JPG
  • DuckRace displays it above the question

4️⃣ Marking Flexibility

DuckRace supports:

✔ Multiple acceptable answers

={range check/range test}

✔ Case‑insensitive matching

=AND matches and, And, AND

✔ Multiple lines

Code

={
line1
line2
}

✔ Numeric or text answers

=3 or =three

5️⃣ Full Example Question (Combined Types)

Code

Q1(a) The table contains four statements about programming languages.
#figure1.png
The same language can be used on computers that use different hardware
-Low-level
-High-level
=2

It allows the user to directly manipulate memory
-Low-level
-High-level
=1

(b) Write pseudocode to add num1 and num2.
={total = num1 + num2/total=num1+num2}

(c) Write the missing operator:
#figure2.png
={^/**/pow}

(d) Complete the trace table:
[
Line number,start,Output
,,
,,
]
=[
Line number,start,Output
1,3,
3,,3
4,2,
]

Tip: You can duplicate previous activities to build new ones quickly.

2. Prepare Your Class

  • Display the Join Code on your board
  • Students go to the student link and enter the code
  • They appear on your dashboard as soon as they join
  • No logins, no accounts, no setup

3. Run the Lesson

  • Upload your duckrace question file (including the images)
  • Press Advance Queston when everyone is ready
  • Each question appears on student screens at the same time
  • Students submit their answers individually
  • You see responses in real time, including:
    • Who has answered
    • What they wrote
    • Which options they chose
    • Where misconceptions are forming

The duck animation updates automatically as students progress — purely for fun.

4. Review and Respond

During or after the activity, you can:

  • Identify students who need help
  • Highlight common errors
  • Discuss model answers
  • Export or save results for planning or assessment

This makes DuckRace ideal for plenaries, mid‑lesson checks, retrieval practice, or rapid‑fire computing questions.

5. Reuse and Adapt

  • Activities can be reused across classes
  • You can edit questions for different ability groups
  • Build a department‑wide bank of computing tasks
  • Share activities with colleagues