複数選択問題の控えめな力
教育におけるMCQのフルポテンシャルを活用する方法
私は以前、複数選択問題(MCQ)は教育において安っぽいものだと思っていた。
誰かが用語を覚えているかどうかを確認するには良い。しかし、実際にその概念を使えるかどうかを調べるには不十分だ。標準化されたテストには適しているが、学習という複雑な作業にはあまり向いていない。
その後、プログラミングクイズを作り始めた。
驚いたのは、複数選択問題がスケールすることではなかった。それは皆知っている。驚いたのは、良い選択肢のセットが、解説が現れる前にレッスンを教え切れることがあるということだ。
複数選択問題で本当に役立つのは、正解だけではない。あなたが意図的に選ぶ不正解の方にあることが多い。
誤答選択肢こそがカリキュラムである
質の低い複数選択問題には、正解が1つ、ほぼ正解が1つ、そして作者がコーヒーを待ちながら書いたような選択肢が2つある。
それはフォーマットの無駄遣いだ。
良いクイズでは、それぞれの不正解が実際の誤解を表している:
- 別の言語から借用した構文
- 古いコードに今も現れるレガシーなパターン
- 一つの条件で失敗するもっともらしいメンタルモデル
- 問題の単語が一つ変われば正解になる答え
そこにこそ教えがある。学習者は単に選択肢を選んでいるのではない。自分が使っているモデルを明らかにしているのだ。
1つの問題、複数の深さ
PostgreSQLのこの問題を例に考えてみよう:
PostgreSQL(v10+)における自動採番IDENTITYカラムの(SQL標準)構文はどれか?
id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY✅ (正解)id SERIAL PRIMARY KEY(レガシー構文)id INT IDENTITY(1,1)(SQL Server構文)id INT AUTO_INCREMENT(MySQL構文)id NUMBER GENERATED ALWAYS AS IDENTITY(Oracle構文)
この問題は、異なる習熟度レベルにおいて複数の教育的役割を果たしている:
- 初心者は基本的なPostgreSQL構文に焦点を当て、主に現在のアプローチとレガシーなアプローチを区別する
- 中級者は類似した構文間の微妙な違いを navigating する
- 上級者はクロスプラットフォームの知識を活用しつつ、バージョン固有の実装について正確でなければならない
この問題は構文を尋ねているだけではない。メンタルモデルを選別しているのだ。
SERIAL を選んだ人は、おそらく古い例からPostgresを学んだのだろう。IDENTITY(1,1) を選んだ人は、SQL Serverの筋肉記憶を持っている。AUTO_INCREMENT を選んだ人は、概念は知っているが方言は知らない。これらはそれぞれ異なる教えの瞬間である。
解説が「Aが正解」とだけ述べているなら、その問題が持つ最良のデータを捨てていることになる。
クイズ作成が教えてくれたこと
クイズを書くことで、読者に実際に何を学んでほしいのかについて、より正確にならざるを得なくなった。
記事は、滑らかな散文の中に曖昧な説明を隠すことができる。しかしクイズはできない。不正解の選択肢は、その概念に本当にエッジがあるかどうかを露わにする。
今、プログラミングの問題を書くとき、私は自分に問いかける:
- 半分しか理解していない賢い人は何を選ぶだろうか?
- 隣接するエコシステムでは正解になる答えはどれか?
- 一般的な誤解を維持する答えはどれか?
- 正解を正解たらしめている小さな条件は何か?
これらの問いが教えをより鋭くする。記事もより鋭くなる。なぜならクイズは説明自体のテストになるからだ。4つのもっともらしい選択肢が書けないなら、まだ本当の概念を見つけていないということだ。
フィードバックループこそが本質である
複数選択問題はスケールにおいて有用だ。確かに、採点は自動的に行われる。パターンが見えてくる。どの問題が簡単すぎるか、曖昧すぎるか、偶然にもトリビアをテストしているかがわかる。
しかし、より良いフィードバックループは、学習者がクリックする前に起こる。
作者は学習者の起こりうる間違いをモデル化しなければならない。つまり、作者は学習者を尊重しなければならないのだ。適当な不正解は「埋め草が必要だった」と言う。強い不正解は「この考えがどこで失敗するか正確に知っている」と言う。
私がこのサイトでMCQを使い続けるのはそのためだ。効率的だからというだけではない(確かに効率的ではあるが)。それは、散文だけでは避けがちなある種の教育的誠実さを強制するからだ。
次に問題を作るときは、正解から始めるな。誤解から始めよ。正解は、はるかに良い立ち位置を得るだろう。