2014Tweet今日は、うちの大学で、小中学生向けのプログラミング教室が開かれました。小学生が16人来ました。私もそこに、授業の一環として参加させて頂きました。阿部先生の『小中高生におけるプログラミング教育』という授業です。(うちは素数について学ばせました)前半(阿部先生のチュートリアル)で作ったゲームに、「ポイント」を付けることにより「変数」について学ばせる素数について解説エラトステネスの篩について解説スクリプトを組ませる(説明しながら)そのスクリプトにちょっと付け足してゲームにする。小中学生プログラミング講座終了。16人の小中学生が楽しんで帰っていきました。今回のチャレンジは学生の皆さんにカリキュラム作成と実施を任せたこと。結果として大成功でした。ちなみにこの先生のポストした写真には私は写っていません。小学生に素数は難しすぎるというのは大人の思い込みと分かります。「学ぶことを学ぶ」ことができたということです。11あ、今日は小学生たちに素数判定スクリプトを書かせました。本当に最初だから、私が教えたやつは、とてもシンプルで、計算力も膨大なやつです。「子どもたちに素数判定のスクリプトを組ませる」でした。プログラミングなんて一度も触れたことがないという、小学生4人を相手にしました。当日、私の班は、私合わせて2人しか来られませんでした...。(寂)(他3人は就活などで欠席)なので、私が講師係、もう一人が子どもたちの見回り(補佐/キーボード慣れない子の指導など)係、として稼働しました。ホワイトボードがあったので、まず、私が変数の使い方について説明しました。塾講師のアルバイトを長年やっているので、ついペンを持つと授業のような感じになってしまいました。(職業病...)前半に先生のScratchチュートリアルで作ったゲームに、ポイントという制度をつけることにしました。予定では無かったことですが、ちょうど変数の使い方について説明するのに調度良かったと思ったからです。ポイントのついたゲームで楽しそうに遊んでいました。素数について説明その次に、素数について説明しました。ここで一番苦戦すると思ったのですが、意外にも、生徒たちは素数について知っていました。学校で習ったようです。一応確認テストとして、100マス書かれた紙を渡して、「20までの素数に丸をつけて」と指示しました。大丈夫かと心配したのですが、やっぱ普通に大丈夫でした。素数の教え方については前夜にツイッターで色んな人に聞いたりしてめっちゃ考えておいた(料理に例えるとか原子と分子に例えるとか)んですけどね...。そこでエラトステネスの篩についても(5分間ほどかけて)紹介しました。Scratchの画面に戻ります。最初なので、一番簡単な考え方で実装させました。計算量多いけど、シンプルで分かりやすいやつ。実装させたアルゴリズムNが素数かどうか判定する時、Nを1〜Nまでの全ての数で割っていき、割り切れた回数をカウントアップします。(つまりN回ループ)もし割り切れた数が2回だったら、Nは素数です。変数は「割る数」と「割り切れた回数」の2つを用意。「もし入力された数が素数だったら、その数ぶんの数字が点数として加算されるようにしましょう」と提起しました。本当はノーヒントでやらせるつもりだったのですが、さすがに難しそうだったので、ヒントとしてこのブロックだけ教えました。このブロックを使うよ、と。(これをどこに挿入するかは教えてない)さらに、ループ処理(「10回繰り返す」)も適切な位置に入れて、終わりました。それで、ついにタイムアップです。あとは、休み時間を挟んで、発表の時間になります。子供たちの作品は、背景が変わっていたり、スプライトが猫から別のものに変わっていたり、少し改変されていました。スクリプト自体は変化していなかったのですが、嬉しかったです。嬉しかったのは、休み時間のあいだ、男の子たちがずっとその自分たちの作った素数判定スクリプトで遊んでいたことです。楽しそうに「大きな素数を見つけた!」と遊んでいました。すばらしい!!男の子「11117。これ、俺が見付けた素数。発表の時間すべての班が制作物を順々に発表していきます。他の班の成果物を初めて見たのですが、他の班はみんな「ゲーム」を作っていました。レーシングゲームとかタイピングゲームとか...。本当に「ゲーム」でした。それらに対して、うちはただ数を言ってそれが素数かどうか返してくるだけのものです...点数制は付けたけどでも結局ただの素数判定です。明らかに小学生ウケの期待できるものではない、と、この時他のグループの内容を見て初めて客観的になれたのです。「そうか...こういうものが求められていたのか...」と、次々に出てくる『ゲーム』を見ながら痛感しました。今の今まで素数判定の小学生ウケなんて考えたことなかったです...自分が楽しかったから...本当にこの時初めて客観的になれたのです...。例えるなら、きらびやかなドレスコードのあるパーティーにジャージで乗り込んだ時のような気分です。うちの班の番になりました。子どもたちが大勢の前に立ちます。(私達講師は端っこに捌けて、隠れるように座りました。主役は子どもたちですから。スクリーンに彼らの作品が大きく映しだされます。(保護者の方々含め)40人ほどの視線を前に、彼らは一様に緊張した表情を浮かべていました。子どもたちが戸惑っていたので、私が一言だけ「どんなものを作ったんだっけ?」とだけ声をかけると、彼らは堂々と話し始めました。「ぼくたちは素数判定のスクリプトを作りました。緑の旗を押すと数を入力するように言われるので...」その彼らの横顔を見ていて、私は大きな達成感で満たされました。彼らはちゃんと理解していた。私だけが突っ走っていたわけではない、と。最後に先生に「楽しかったですか?」と聞かれ、子どもたちはそれぞれ「はい、楽しかったです」と即答していました。11このTwitterで書いたとおり、本当にずっとPCに張り付いて彼らはあらゆる数を試して素数を探し続けていました。この子たちのお母様が私の肩を叩き、USBメモリを差し出して「家でもやりたいので、この子たちのデータをこの中に入れていただけませんか?」と。快諾しました!さらに。回収した、アンケートには。11他のグループの子たちはみんなゲームって書いているのに!!今日で一番感動しました!!!反省1.教えすぎました。子どもたち自身に考えさせるべきだった。過干渉だった、というか、「ここはこうなるから〜」と、しゃべりすぎた。彼ら自身に任せるべきだった。ひとりで突っ走ってしまった。他のグループとくらべて浮いていたというかもっと楽しいやつにすればよかったかも。彼らはとても楽しんでくれたみたいだから私はラッキーだったかも。3.準備不足もっとスマートに説明できたらよかった。予行練習をしておくべきだった。「素数がどんなところに利用されているか」ということに対し(RSA暗号について説明できるレベルまで)学んでおくべきだった。4.完全に緊張してあがってしまっていた。保護者席のすぐとなりで、私の説明を、子どもたちだけでなく保護者の方々もジッと見ていて、完全にあがってしまった。ほっぺた触ったらめっちゃ熱かったし。子どもたちは可愛いです!TweetScratchちょまど千代田まどかです。文系出身プログラマ兼マンガ家です!腐女子です。コメントをキャンセルメールアドレスが公開されることはありません。