cosmichistory @ ウィキ
«NCLB法から6年間くらい後のこと»
最終更新:
cosmichistory
-
view
アメリカでは2001年にNCLB法(No Child Left Behind法)が可決し、各学校は生徒が全国
標準テストで既定の成績を示せない場合に、予算削減などの罰を受けることになりました。
標準テストで既定の成績を示せない場合に、予算削減などの罰を受けることになりました。
NCLB法は国語(英語)と数学を重視していたため、科目として音楽や美術はもちろん、体育
や理科まで時間割から消してしまう学校が続出し、NPO法人が補完するという事態に至り
ました。
や理科まで時間割から消してしまう学校が続出し、NPO法人が補完するという事態に至り
ました。
それから6年間ほど経過したころ、イムランというプログラマーがコンピュータサイエン
ス学科卒業生に次の問題をやらせたらしい。
ス学科卒業生に次の問題をやらせたらしい。
1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わ
り に「Fizz」と、5の倍数のときは「Buzz」と表示し、3と5両方の倍数の場合には
「FizzBuzz」とプリントすること。
(ここで"プリント"は"表示"を意味しています。)
ちゃんとしたプログラマであれば、これを実行するプログラムを2分とかからずに紙に
書き出せるはずだ。怖い事実を聞きたい? コンピュータサイエンス学科卒業生の過半
数にはそれができないのだ。自称上級プログラマが答えを書くのに10-15分もかかって
いるのを見たこともある。
ちなみに、外国語学専攻の文系人間である私がPowershell用に次の汚い(処理系に重いメモリー操作を強いる)コード
1 .. 100 | %{
$t = ""
if($_ % 3 -eq 0){$t += "Fizz"}
if($_ % 5 -eq 0){$t += "Buzz"}
if($t -eq ""){$t = $_}
echo $t
}
を書くのに要した時間は4分ほどでした。FizzBuzz問題は簡単な問題なのです。インド人プログラマーならきっと数秒で脳裏にコードが思い浮かぶに違いない。
私が思うに、高校時代からある狭い範囲で定められた規格を満たすために頑張らされたため、問題がどんなに単純なものでも、それが見慣れないものであったので、コンピュータサイエンス学科卒業生はうまく対処できなかった。不意打ちに弱くなっていたのです。
教育改革を唱える論客は保守にも革新にもいるのですが、柔軟で不意打ちに強い知性を育てる方策について、是非とも熟考してもらいたいと思う次第です。