キミのミライ発見」担当rikei-jinzai(a)kawai-juku.ac.jp※(a)を@に変更してメールをお送りください。おいて、プログラミング学習がますます重要視されてきていることはご存知の通りです。これまでに、中教審の情報ワーキンググループや小学校のプログラミングの有識者会議に出させていただき議論をしてきましたが、特に小学校の難しさについては強く感じているところです。近い将来、複数の言語を「選択できる」教育を今日は中学校以上を想定した話をさせていただきます。近い将来、小学校で簡単なプログラム学習をした子どもたちが中学・高校に上がってきます。その時には、やはり文字でプログラムを書くことになると思われます。そのときには、複数のプログラム言語を選べたほうがいいのではないかと考えています。スポーツに例えますと、同じ運動能力を高めるにあたっても、跳び箱をしたり縄跳びをしたり水泳をしたりすることで、様々な筋力を使うことができたり、自分の得意分野を発見できたりします。プログラミング学習も同様だと思います。学習環境を整えることの難しさから生まれた「オンライン環境」プログラミング学習というと言語に着目しがちですが、エディタなどの学習環境も重要です。最近は、特別に何かを追加しなくても、ブラウザが全てのパソコンに入っていてJavaScriptが標準で使える環境があることから、現段階ではJavaScriptが使いやすいと思っています。実際に授業をしてみるとエディタが用意されていなかったり、エラーメッセージが親切ではなかったりと、様々な問題があると感じておりました。(マイクロソフトのプログラム開発ツール)などを新たに購入しようとすると、とたんに大変高価で実現が難しくなってしまうといったことが起こります。Arrow)」(※)を共同で開発し、高校や大学で使っています。「ビットアロー」の特長は、次のものがあります。C、ドリトルの3つの言語で実践しましたので、事例をご紹介します。JavaScriptまず、JavaScriptです。授業で使っていただいたものです。ブラウザには、プログラムをコーディングするする部分と実行する部分が表示されます。文法は、JavaScriptを書き、それをこの画面で実行して確認できます。工夫したのは次の点です。通常は、HTMLの中にJavaScriptを埋め込みますが、普段教えていて難度が高いので、HTMLとJavaScriptを別のタブで書くことで、よりわかりやすく、教えやすくしました。HTMLのタグで事前に猫を「neko」、ボールを「ball」といった具合に、キャラクターのオブジェクトを定義し、それをJavaScriptの変数として動かすようなプログラムを書けるようにしました。このように工夫することで、高校生が通常のJavaScriptよりも少し複雑なプログラムまで理解できるようになったと感じています。クラウドの活用~評価の効率化・生徒の楽しみを生む課題を確認する側の先生は、クラウド上で閲覧し、評価をするということができますので、これまでに比べて非常に効率が良くなりました。ほかにも、クラウドを使用することで、高校生たちが授業で作ったゲームのQRコードを画面に出して、隣の子にスマホで読んで遊んでもらったり、自分でスマホに入れて家に持ち帰って自慢したりという楽しみも生まれました。授業で行ってみてわかったのですが、現状では学校のネットワーク環境がよろしくないという問題があります。このことは、中教審の会議でもかなり話題になっていました。本来はクラウドに乗せたい場合でも、全てをクラウド化してしまうと、ネットがつながる保証がないために、授業がうまく行えないという支障が出てきます。そこで、今回のツールでは、起動時にサーバから自分が作ったプログラムファイルをダウンロードした後はローカルで動かす形にし、ブラウザの中に全てのプログラムが保存されて、オフラインでも動くようにしてみました。一つの工夫点として、プログラムを書いて実行ボタンを押すと瞬時にサーバにファイルが送られるという自動提出型にしてみました。このことで、提出の時間をわざわざ取らなくても済み、効率もよくなりました。次は、私が大学の工学部の授業でC言語を教える時に使用したものです。今回の特徴はコンパイルの仕方にあります。通常のコンパイルはCを機械語に変換するのですが、今回はCをJavaScriptにコンパイルし実行するものを作ってみました。自動採点プログラムで教師の効率が上がる高校と違い、大学ではだいたい100人くらいの大人数を教師1人+TA2~3名で教えますので、教える側の難度が上がります。大学では決まった課題プログラムを作らせることが多くなります。授業ごとに5問くらいのプログラムを作らせますが、100人がそれぞれ5個ですので500個、それを週2回作って提出します。教える側は週に1000個のプログラムを採点をしなければなりません。これではたいへんだ、ということで、必要に迫られて自動採点プログラムを作りました。この自動採点プログラムは、現在のところ先ほどのオンラインには埋め込んでおらず、ローカルのバッチで使用しています。課題を一括で採点し、問題ごとに学生ごとに正解・不正解というのを出しています。このようなものもフリーソフトや機能として公開していけたらと思っています。実際には自動採点は簡単ではありません。課題の正解に4つくらいパターンがあった場合、4つのうち3つが正解していて1つは不正解といった時に、どこまでを可とするのか、といった場合です。今のところは採点結果でその部分の色を変えるなどして注意喚起し、教員が自分で見て責任を持って判定できるようにしています。このような授業プログラムの評価は、中学や高校でも今後課題となるかもしれません。ドリトル3つ目の言語が、ドリトルです。ドリトルというプログラム言語は私自身が作って公開しているものです。ドリトルもCと同様にJavaScriptにコンパイルして実行するようにした結果、非常に高速になりPCへの負荷も減らすことができました。こちらもオンラインに対応すべく現在も開発中です。8月頃には正式公開をしたいと思っています。現在、ドリトルが載っている教科書に掲載されている例は全てオンライン化を目指したいと考えています。その後はさらに、PCのブラウザやタブレット上で動かすだけでなく、計測・制御やロボットといった外部機器を操作できるようにしたり、コンパイルする技術を使ってArduino(アルドゥイーノ:オープンソースハードウェアの一つ)の上でドリトルを動かすといった作業を並行して進めています。Pi(ラズベリーパイ)につないでドリトルでグラフを描くプログラムを作ったものです。生徒によるロボットの工作なども楽しそうです。クラウドのプログラム学習環境を作ってみて、今後の発展について感触を得ました。オンラインとオフラインの組み合わせで使用できる形の工夫を追加すれば、現在でも十分実用に足りるものと考えています。本サイトは、経済産業省のキャリア教育事業の一環で作成した「わくわくキャッチ!」の独自コーナーとして、河合塾が作成し、運営しています。編集トップへ戻る閉じる。