プログラミング教育の目的をもう一度整理

今週末から始まる日本教育工学会の全国大会(島根大学)で話すので,いま考えを整理中です(僕の発表は9/16のSIGセッション情報教育というところ).

たとえば,ここに文部科学省のこれまでの議論の取りまとめが書かれています.ところがこの文章はとても素晴らしい部分と,???な部分が混ざっているものでして,これが世の中が色々と混乱している原因じゃないかと思うわけです.この状態だと,懐疑的な人たちを説得することはできないので,まずいなぁと思ってます.

まず,とても素晴らしいところ.

○  学校教育が目指す子供たちの姿と、社会が求める人材像の関係については、長年議論が続けられてきた。現在、社会や産業の構造が変化していく中で、私たち人間に求められるのは、定められた手続を効率的にこなしていくことにとどまらず、自分なりに試行錯誤しながら新たな価値を生み出していくことであるということ、そして、そのためには生きて働く知識を含む、これからの時代に求められる資質・能力を学校教育で育成していくことが重要であるということを、学校と社会とが共通の認識として持つことができる好機にある。

まったくその通りですよね.ここがブレないのが大事です.ただ,不満なのは「これからの時代に求められる」という受け身の姿勢ですね.これだと,時代は自分たちが作るという発想には繋がらないですよね.時代というのがどこか外側に存在してて,それが勝手に求めるものが変わってきたという印象を受けます.僕は「これからの時代は自分たちが作るんだ」という子供を育てる,というところまで踏み込んでほしいと思ってます.まあ,でもこの文章はこれはこれで素晴らしいです.

その次,人工知能が迫っているよという話に続いて,

○  こうした人工知能が、与えられた目的の中での処理を行っている一方で、人間は、感性を豊かに働かせながら、どのような未来を創っていくのか、どのように社会や人生をよりよいものにしていくのかという目的を自ら考え出すことができる。多様な文脈が複雑に入り交じった環境の中でも、場面や状況を理解して自ら目的を設定し、その目的に応じて必要な情報を見いだし、情報を基に深く理解して自分の考えをまとめたり、相手にふさわしい表現を工夫したり、答えのない課題に対して、多様な他者と協働しながら目的に応じた納得解を見いだしたりすることができるという強みを持っている。

と,人間の強みについて言及してます.人間の強み(もう少し言うと,人間の弱みや,コンピュータの強みと弱み)をしっかり認識することこそが,これからの時代を生き抜くために必須のことだと言えますね.

で,これからの時代に求められる資質・能力とは,ということで3つあげてます.

  1. 情報を読み解く
  2. 情報技術を手段として使いこなしながら、論理的・創造的に思考して課題を発見・解決し、新たな価値を創造する
  3. 感性を働かせながら、よりよい社会や人生の在り方について考え、学んだことを生かそうとする

これは,まあ大事なことを言ってますね.ただ,一番大事なことが「情報を読み解く」というのはこれでいいんでしょうか?「読み解く」というのは状況を認識するだけなので,読み解いた後に,何かアクションに結び付けないとあまり意味がないように思います.読み解くのは大事なスキルだとは思いますが,先頭に書くことなのかなとは思います.自分で時代を切り開く感も感じられないですしね.いままでの情報教育がここばかりやってきたので,その流れは続きますよということなのかもしれません.その点,2,3の方は何かをするになっているのでより重要です.

この後も,「論理的・創造的に思考して」という言葉が何度か出てきますが,この部分がプログラミング教育に結びつけるキモなんだと思います.でも,一番最後には「新たな価値を創造する」という言葉で終えてます.やはり一番重要なのは「創造」であって,論理的に思考するとか,その前にある「情報技術を手段として」といったことは,本当は創造さえできればどっちでもいいことです.

僕ならここ(これからの時代に必要な資質・能力)は
「コンピュータを活用した創造性」
と言い切って良いかと思います(ちょっと補足すると,論理的じゃなく感性でコンピュータを創造的に使うことを排除したくないからです.ここが人間の強みコンピュータの強みにも関わりますが,論理的はコンピュータの強みなので,人間はそっちを求めなくてもいいと思ってます).

3番目の社会や人生に生かす,という部分は,プログラミング教育だから考えなきゃないことではないですよね.むしろ,これをここにどうしても入れたかったのは,なにかプログラミング教育は社会や人生のあり方と真逆の方向に進みそうだから,ここで釘を刺しておきたい,という気持ちが現れているのかもしれません.実際,僕もそう思うので,これはこれでよいです.

それに続いて,学校教育における,の部分では,ちょっと細かいですが,

○  そうした生活の在り方を考えれば、子供たちが、便利さの裏側でどのような仕組みが機能しているのかについて思いを巡らせ、便利な機械が「魔法の箱」ではなく、プログラミングを通じて人間の意図した処理を行わせることができるものであり、人間の叡智が生み出したものであることを理解できるようにすることは、時代の要請として受け止めていく必要がある。

ここも大事なことが書かれています.でも最後の文は余計ですよね.「理解できるようにすること」で終えれば満点だったのに,「時代の要請として受け止めていく必要がある」と一言書いていて,まるで自分たちが教えたいことじゃないけど,周りがうるさいからやっている感が滲み出ています.

それじゃあいけないと思うのです.まずは,本体が本気でやらなきゃいけないと思っているのじゃあなきゃ.これじゃあ,現場は説得できない.

現時点で,彼らを本気にさせられていない状態で,話だけ進んでいる,というのはこれからいろんなところで不幸を産みそうですね.

後は,プログラミング的思考の部分ですね

発達の段階に即して、「プログラミング的思考」(自分が意図する一連の活動を実現するために、どのような動きの組合せが必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたらいいのか、記号の組合せをどのように改善していけば、より意図した活動に近づくのか、といったことを論理的に考えていく力) [5]を育成すること。

これは,プログラミングやデバッグそのもののことを言ってます.ところが,前の方で具体的な言語でプログラミング(コーディング)をやることではない,と宣言しちゃっているので,ここではプログラミングやデバッグという言葉を使うことはできず,いかにも一般的なスキルであるかのように書かざるを得ませんでした.

こんなスキルを獲得すれば「論理的・創造的に思考して課題を発見・解決し、新たな価値を創造する」ことができるようになると思えますか?これは,プログラムがバリバリかける人が,社会生活を振り返ったら,自分のプログラミングスキルは結構便利に活用できてラッキー,といった程度の話であって,それ以上にはならないと思います.

で,これがずれているということは文科省の人は薄々感じているので,「こんなの本気で教えたくないよ」になっているんじゃないかと.

じゃあ,「論理的・創造的に思考して課題を発見・解決し、新たな価値を創造する」人に育てるには,どんなことを教えなきゃならないのでしょうか?あ,この課題はコンピュータ以外では普通の教育の中に組み込まれているので,特に考えなきゃないのは「コンピュータを活用して新たな価値を創造できる人」ということですが.

それは,まさに「人間の強みと弱み,コンピュータの強みと弱み」を知ること.そして「コンピュータを自由自在に操れるようになる」ことですよね.これ以外にありますか?前者は良いとして,コンピュータを自由自在には限度がありますよね.

じゃあ,小学校の段階ではどれくらいは押さえておきたいかというと,

当事者意識を持つ

じゃないかと思ってます.自分が時代を作るんだ,という気持ちですね.そういう気持ちを小さいうちから持ってもらえれば,その後に出てくるいろんな勉強への見方が変わってきます.

当事者意識はコンピュータに限った話ではないですね.自分で作曲したり,動画を作ったり,サッカーを上手くなったり,それぞれの個性でやれる人はいます.しかし,それらと比較して,コンピュータに対する当事者意識は,(子供という)身体的なハンディもないし,お金もかからないし,すぐに世界デビューできるし,より身近に感じられ手の届くところにあります.それがミソですね.

シェアする

  • このエントリーをはてなブックマークに追加

フォローする