Rubric maker
Criteria, levels and points; print it or download it.
Paste a multiple-choice question and its options. The checker flags what gives the answer away, makes sure every wrong option reveals a misconception, and exports the question as Markdown or Moodle GIFT.
Free, no sign-up. Nothing you type leaves your browser.
Code between ``` fences is fine: it shows as code and isn’t counted as words.
Shown last. It separates learners who don’t know from learners who believe something wrong.
Rules of thumb, the same Chalkenso uses for its own check questions. Change them if your context needs it.
Nearly ready
2 things to look at. Each one makes a right answer easier to guess or a wrong answer harder to read.
What does this code print?
for i in range(1, 4):
print(i)Pick an answer to see what learners see, and what it tells you.
::What does this code print?::[markdown]What does this code print?\n\n```python\nfor i in range(1, 4)\:\n print(i)\n``` {
~1, 2, 3, 4#Thinks range() includes the stop value
~Nothing\: the loop never runs
=1, 2, 3
~0, 1, 2, 3#Thinks range() starts at 0 even when a start is given
~Not sure yet#The answer\: 1, 2, 3
}
In Moodle, open the question bank, choose Import, then GIFT format. Each misconception becomes that option’s feedback.
``` fences: it shows as code and doesn’t count towards the length.A multiple-choice question has three parts: the stem (the question), the key (the right answer) and the distractors (the wrong options). Most advice on writing them goes back to one list of guidelines, collected from textbooks and research by Haladyna, Downing and Rodriguez (2002). The ones that matter most in practice:
Three good options are usually enough. Rodriguez (2005) reviewed 80 years of research and found that three options work about as well as four or five, because the extra ones are rarely plausible. The fourth distractor is where most questions go wrong.
Dylan Wiliam calls a question asked at the turning point of a lesson a hinge question: the answers decide whether you move on or go back. What makes it work is the wrong options. Each one is the answer a learner would give if they held one specific misconception. So when five people choose B, you don’t only know that five people got it wrong; you know what they believe, and what to say next.
That’s why the checker asks for a misconception next to every wrong option. If you can’t name one, the option is filler. If two options share one, you can’t tell those learners apart.
| Mistake | Before | After |
|---|---|---|
| Unfinished stem | “A loop that never stops is an…” | “What do we call a loop that never stops?” |
| The right answer is the longest | “It repeats the block once for each item it’s given” next to “It runs once” | Options of the same size: “Once per item”, “Once in total”, “Until it fails” |
| A word from the stem only in the key | “What does git commit do?” → “Commits your staged changes” | “Records your staged changes in the history” |
| Absolute words in wrong options | “The loop never runs” | A real mistake: “3” (thinks print runs once, after the loop) |
| “All of the above” | “All of the above” as the key | One right answer, and a third misconception in its place |
| Negative stem | “Which is not a valid list?” | “Which of these is a valid list?”, or NOT in capitals if you must |
Without it, a learner who doesn’t know has to guess. With four options, about one guess in four lands on the right answer and looks like understanding; the rest look like misconceptions the learner doesn’t hold. “Not sure yet” gives honest uncertainty its own answer, so a wrong option is more likely to mean a real misconception and a right one more likely to mean real understanding. It also tells learners that not knowing yet is normal.
Answering is useful in itself: trying to recall an answer helps people remember it later, more than reading it again (Roediger & Karpicke 2006). One short question at the end of a lesson is practice as well as a check.
The question in the checker comes from a Python lesson on loops: what does for i in range(1, 4): print(i) print? Say 20 learners answer:
| Answer | Learners | What it tells you |
|---|---|---|
| 1, 2, 3 (right) | 11 | They can trace the loop. |
| 1, 2, 3, 4 | 5 | They think range() includes the stop value. |
| 0, 1, 2, 3 | 1 | They think range() always starts at 0. |
| Nothing: the loop never runs | 0 | Nothing. It’s filler. |
| Not sure yet | 3 | They know they haven’t got it yet. |
Five people share one misconception, and you know which one: spend five minutes on the stop value, with a second example such as range(2, 5). Nobody picked “Nothing”, which is what the checker warned about: replace it with a mistake you’ve seen, such as “3” (they think print runs once, after the loop).
To ask the question as learners leave, put it on an exit ticket. And with groups this small, read the counts with care: the training feedback calculator shows how wide the honest range is for 5 of 20.
Ask a complete question that someone could answer with the options covered, make exactly one option right, and build the wrong options from mistakes learners really make. Keep the options alike in length and grammar so the only way to choose is to know.
A short multiple-choice question asked at a turning point in a lesson, where each wrong answer points to one specific misconception. The answers tell you whether to move on or go back, and what to go back to. The idea comes from Dylan Wiliam’s work on formative assessment.
The wrong options. A good distractor looks right to a learner who holds a particular misconception and wrong to one who understands. A distractor nobody picks only adds reading time.
Three or four is usually enough. A meta-analysis by Rodriguez (2005) found that three options work about as well as four or five, mainly because extra wrong options are rarely plausible.
Avoid “all of the above”: spotting two right options is enough to choose it. Use “none of the above” sparingly, because choosing it shows what a learner rejects, not what they believe.
Copy it as Moodle GIFT and import it into your question bank; each wrong option’s misconception becomes its feedback. The checker runs in your browser, so nothing you type is sent anywhere or saved.
Chalkenso is where courses are designed and improved: instructors note what happened on the exact passage, learners say where they got stuck, and AI drafts the next version for you to approve.