小学校 新指導要領解説でプログラミングについて書かれている事をシンプルにまとめた。

この夏は、論文発表やら、、そして、明後日の区の教員研修をはじめ、レクチャー的な場面で話す機会を頂いていて、プログラミング教育について学習指導要領解説を何度も何度も何度も読み返しています。(スライドスライド・・)
解説編のP83からP87までの解釈で、様々な人が、様々な解釈をしているんだが、自分はこう読みます。参考になれば。というか、ホントは自身の忘備録としてノートに残します。
ーーー
文部科学省は
●情報活用能力にプログラミング(論理的思考力)は位置づけられていますよ。
●コンピュータや情報技術は児童に便利だと実感させ、児童が活用できるようにしましょう。
●児童と各教科の特性を踏まえて、教科の知識技能等が身につくためにプログラミングを工夫して取り入れましょう。
●プログラミングスキルが目標にならないように注意し、教科の目標の達成を通して、プログラミングスキルも身に付けさせましょう。
ーーー
前置きが長い文の主述をシンプルに読んでいくと、こうとしか(私は)読めないです。
特にプログラミングのスキルについては、実はそれが主だったはず(議論のまとめまでの流れや、英国や豪州の事例が参考になっている事実とコンピューティングの文脈では)だが、各教科からの批判があったため、文科省は穏やかな表現にせざるを得なかったと考えられる。
そして、移行措置でプログラミングの内容が2018年からのマストではないと出されました(7月7日)。これは、過去にプログラミングについて小学校の授業で実践された例が皆無かつ、分析もきちんとされていない内容だという性質と、実践例が少ない内容を教科書にねじこむのは厳しいだろう(昨年から今年度は実践例を出す事がより求められている)という点から、2018年からのマストには入れなかった?と私は考えています。これは、現場の状況や制度的な部分を考えると、スムーズな離陸のためには賢明な判断だったのではないでしょうか。
現状の整理としてはこんなところです。みなさんそれぞれで、読み方が違うかもしれませんが、是非、批判も含めてご意見をください。
↓次期 学習指導要領 解説編
0 コメント

新指導要領解説からプログラミング教育を読む

先月、文部科学省から新指導要領の解説が公開されました。プログラミング教育の扱いについて、それぞれの研究者の皆さんや学校関係者などが様々な解釈をしています。今回は私の考えを書きたいと思います。

  

まず、新指導要領解説からプログラミング教育に関して抜粋し私見を添えます。


1.プログラミング教育は「情報活用能力」の中に位置付けられている

 「情報活用能力」は「言語能力」の次に書かれた「学習の基盤となる資質・能力」の1つとして示された力です。言語能力が1番目に来るのは、コミュニケーションの基本となる記号として言語があるわけで当然と言えます。2番目に示された「情報活用能力」は「各教科の学びを支える」力と書かれています。ここには情報と情報技術という単語が出てきます。プログラミングはこの情報技術に位置付けられていると読むことができます。

 

2. 「プログラミング的思考」という造語

 この言葉は、文部科学省?が作った造語で、プログラミングを学ぶのか?という批判が出たあとに、急に生み出された単語だと私は認識しています。各教科でその思考を育むと書かれているからには、プログラミングやコンピューティングだからこそ育むことができる内容を考えなければいけないという事です。「料理や図工の工作の手順、音楽の楽譜などで、十分に育めるのでは?」という出て来るであろう批判に理論武装をしなければいけません。


3. 全ての教科や活動で導入できる
 指導要領では、算数、理科、総合的な学習の時間で活動例が示されていますが、指導要領解説では、「例示以外の教科や内容でも学習活動として実施可能」と明記されている。教科書会社さんが大変なことになっているということです。

 

4. 民間(総務省・経済産業省)との協働

 社会に開かれた教育課程というコンセプトがあり、文部科学省と総務省と経済産業省との「未来の学びコンソーシアム」も立ち上がりました。学校の先生を助けてくれるプロとどのような協力体制を作っていくのか?は今までの学校教育にはない取り組みなのでコンソーシアムのお手並み拝見です。

 

↓未来の学びコンソーシアム

https://miraino-manabi.jp/

 

 

 

次に、実際に学校教育現場でプログラミング教育をどう扱うか?についての現在の私の考えを書きます。

 

①各教科の観点と、プログラミング教育の観点を分ける

 

 これは、単純な話で、各教科で求められる資質・能力が現在各方面で詰められています。ここにプログラミングの活動を当てはめたとしても、新指導要領の観点が出され日が浅い段階でプログラミングを活用した活動の検証は不可能です。おそらく教科書会社が強引にプログラミングを扱う内容を入れてくると思いますが、各教科が定めた規準とプログラミングの規準を混ぜてしまうのは、授業検討時にも混乱を招き、視点を失うことになると考えています。ですので、各教科の観点とは別にプログラミングの観点を設けるべきです。

 

 

②情報活用能力の情報技能としてのプログラミング教育の観点「知識・技能」と「思考力・判断力・表現力」を設定する。


 「プログラミングで学ぶ」というバズワードも、「プログラミング的思考」と同時期に出てきた単語です。噛み砕けば、思考力・判断力が大事と述べているのですが、そもそも「知識・技能」と「思考力・判断力・表現力」は相互に行き来するなかで、高め合うものだと書かれています。また、「知識・技能」をどう使うか?が「思考力・判断力・表現力」だと最初に述べられている部分も「プログラミングで学ぶ」の論を揺るがしている部分です。(最近はこの言葉もあまり聞かなくはなってきていると感じています。)
 プログラミング教育は、元々はイギリスや北欧の国で先行実施されている「プログラミング」「コンピューティング」などの「プログラミングを学ぶ」教科が元になって産業競争力会議から提言されて導入に至りました。各教科からの反発もあり、その扱いがあいまいになっている状況があるのが実情です。そこで、今回の指導要領解説に沿ってプログラミングの観点を設定してみます。

 

ーーー

 

情報活用能力

 情報技術

 ●プログラミング:各教科の中で学校の環境や児童生徒の実態に応じて効果的に導入すること

(知識・技能)

 コンピュータやプログラミングの基本的な知識、コマンドの入力・実行ができること。

(思考力・判断力・表現力)

 プログラミングが活用されている事を想像できること。プログラミングを使って課題解決や表現ができること。入出力のモデル化。

 

 

これらが相互に行き交う主体的な活動の元で、他教科の内容の理解に活かされたならば「深い学び」となる。

ーーー

→思考力・判断力・表現力の詳細を見れば、計算機的思考や、実験や計測、表現のツールとしてプログラミングが各教科で活用できる可能性が十分にあることがわかると思います。


③カリキュラムの大域を設定し実践し検証する

 

前提

・(知識・技能)が先だと、詰め込み・プログラミングを学ぶのか?という批判に耐える連関を示す。
・(知識・技能)と(思考力・判断力・表現力)の相互関係を示す。


大域の提案

 

A アンプラグドなどを活用して、身の回りの生活を豊かにする一助となっているコンピュータに着目(思考力・判断力)
B コンピュータの基本的な知識(知識)
C コマンドの入力・実行(技能)
D プログラミング(知識・技能)
E 課題解決や表現(思考力・判断力・表現力)
Z 他教科で活用(深い学び)

 

上記項目の相互関係は

A⇄B→C→D=E⇄Z

 

こんな感じでしょうか。特にEとZの関係で「深い学び」を目指します。

何より、授業で確かめること!!に尽きますね。


とりあえず、今回の解説に関する私見はここまでとします。

 

ーーー
慶應大学で行われるPCカンファレンスで今年度のプログラミング教育の研究成果を発表してきます。
本投稿記事の内容について、みなさまからも色々な意見を頂ければと思います。

 

来週中には堀田先生の本も届くので、じっくり読みたいと考えています。

0 コメント

プログラミング教育における使用言語・環境について

中学校では必修化されているプログラミング教育ですが、小学校ではどのようなプログラミング言語・環境を採用すればよいのでしょうか?学習指導要領や過去の実践などを交えて書きます。

これまで

 過去も現在も、プログラミング自体が小学校学習指導要領に明記されたことはありません。ですので、公立小学校においてプログラミングを習得する授業が行われた例は非常に少なく、小学生に対して実施された実験授業はとても少ない状況があります。実施できたのは、学習指導計画に裁量をもたせられる附属小学校や私立小学校などで、私の知る限り一番古い実践は大阪教育大学附属小学校の算数の授業でプログラミング環境BASICが使用された事例です。その後をざっくり言えば、BASICが広まり、LOGOが登場して扱われるようになり、HTMLなどが割り込み、Scratchが隆盛している状況だと言えます。

 様々な言語・環境が扱われるようになるのですが、大事なのは「プログラミング教育が必修化になるかも・・」という政府の計画が出た頃から、「道具(手段)としてのプログラミング」から「内容(目的)としてのプログラミング」へと、プログラミングがプログラミング教育と変容した事だと言えます。


どのプログラミング言語・環境を採用すればよいのか

 この件は、永遠のテーマだと言えますし、慎重に判断すべき点です。例えるならば、プログラミングはコンピュータを動かすための操作盤のようなものです。なので、操作盤を作った人によって、ハンドルやレバーの位置やデザインなど、仕様が違って当然です。トヨタとVWではハンドルやダッシュボードなどのデザインやボタン配置、ブレーキの深さなどが違うわけです。ATとMTの違いもあります。その違いは、言語・環境を作った人の意図が反映されたものです。おそらく「もっと便利に」という熱い思いは共通しているのだと思います。
 全ての言語・環境で共通していることがあります。それは「コンピュータを動かす」という目的があるという事です。コンピュータの仕組みは、CPUの仕組みと言い換えることができます。私は教育学出身で専門ではありませんが、CPUの概念的な仕組みについて文献で読んだのですが「実は非常に単純な仕組み」だという事に驚かされました。ここでは割愛しますが、興味のある方は様々な文献がありますので読んでみてください。(ダニエル・ヒリスの著書はオススメします)
 話がちょっと逸れましたが、どのプログラミング言語・環境がよいか?についてですが、2点がポイントになると思います。


 1 学習の目標を達成するために適した言語・環境を選択する

 2 学習指導者の好み

 

 「なんだ、そんな事か」と思うかもしれませんが、1については、小学生に対する授業を考えると、学習の内容を吟味した上で、言語・環境を選択するべきだと考えます。教科教育ではごく当たり前の流れです。十進位取り記数法を1年生で扱おう→マグネットブロックを採用。のようなものです。
 ですが、ここ最近のプログラミング言語は何がよい?の議論では、まず言語・環境がありきで、それで何を教えるのか?という逆の流れが見受けられるように思います。それぞれの言語・環境は、先にも述べたように得意不得意があり、何か1つの言語・環境に浸かり過ぎるのも危険だと考えています(この件はまた別の記事で書きます)。
 ポイントの2で「好み」と書きましたが、指導する側が扱いやすいという事もとても重要だと思っていますが、もっと様々な言語・環境に指導者が触れて、作ってみることが必要ではないでしょうか。食べず嫌いをせず、色々な言語環境に触れることで、指導者側がプログラミングとは?について迫った上で、「これが美味しい!(良い)」と判断することが大事なのではと思います。何より指導する人が楽しんでプログラミングしている事を子どもたちに見せるのが一番大事です。


0 コメント

小学校で必修化!プログラミング教育で養う事ができる力について。

政府からの発表

4月19日に文部科学省が公式発表を行い、2020年からの小学校でのプログラミング教育を必修化する方向で検討するとの事。
ソース:日本経済新聞
http://www.asahi.com/articles/ASJ4M5D4GJ4MUTIL044.html


展望

今回のプログラミング教育のトピックは、何より学校外の企業や団体が公教育へ参入することが前提となっている事が、公教育の歴史上で過去に事例がないという部分が大きなトピックである。総務省が主導している部分でこの流れは既定路線と言える。既に多くの実践や研究が行われているのも公教育以外の部分で、どのように連携の形をつくっていくのかがポイントになる。


課題

課題だらけと言われているが3点に注目できる
①連携の方法

 学校の担任がT1になるのか?補助になるのか?時数の確保など。

②指導者の養成
 児童の実態を踏まえて指導をしなければならないので、外部講師がT1になってよいのか?担任が指導するのであれば必要な講習を受けなければいけない。その研修は誰が(全ての教員?)受けるのか?
 

③カリキュラム・内容
 学習を通して、どのような力をつけさせるのか?その評価は?扱うプログラミング環境は?


 以上についての現段階での私の意見を書いてみたいと思う。小学校に限って言えば①②については総合的な学習の時間の中で(コアになる内容で!)年5時間程度を確保できれば十分だと考える。他教科も時数が必要であり圧迫はできない(現場の反発も大きいと思う)。その中で理想としては担任がきちんとプログラミングの最低限抑えるべき部分を研修等で学び、T1として教えるのがよい(これは絶対そうした方がよい)。外部から来る指導者が初等教育の基本を研修で学ぶよりも短い時間の研修で済むという部分と児童への責任をきちんと担任が負うことも必要。小学校で扱う程度のプログラミングの基礎基本であれば実時間で10時間程度あれば(逐次・繰り返し・変数)くらいは使えるようになる。


 ③については様々言われているが、プログラミング教育で養うことができる力は私は以下のようなものだと考えている。

 

  1「自己研鑽力」

  2「ルール適応力」

  3「根回し力」

 

 課題解決力とか、クリエイティブな・・など、様々なうたい文句が出されているが、小学校の段階で、それは計れないし、もし力がつくと想定しても、十分にプログラミングできるようになって、その先で養われるかもしれない(程度の)力だと思う。

 

1「自己研鑽力」は、プログラミング教育の個別学習的な側面の良さで、通常学校教育では、教師と生徒。もしくは教師と教科書と生徒という関係で双方向的なやりとりを繰り返す。だがコンピュータプログラミングは、生徒が目指す実行結果になると思って書いたコードについて、答えを実行結果としてコンピュータが何度でも返してくれるという個別学習的な側面がある。何度も何度でも、「自分自身の予想を試すことができる」のが、他の教科学習との大きな違いである。その良さを授業プランの中に生かさない手はないし、何度も繰り返して自分自身と向き合う事で、間違いなく養われる力と言える。


2「ルール適応力」は、どのようなプログラミング言語であっても仕様書があり、仕様書のルールに適応することがプログラミングを習得と同義と言える。遊びのルールに適応した子は、そのルールの限界の部分で工夫をして遊びを楽しむことができる。英語などの外国語も、様々な型があって、誰もがそのルールに適応しようとしているわけである。社会全体も実はルールだらけで、私はプログラミングを習得することもそのルールの1つに適応する訓練と位置付けることができると考えている。

 

3「根回し力」は、プログラミングの基礎を学んだ後に必要になる力で、協同的な学習を通して1つの成果物を作るような課題を出された時に、書くコードの仕様を決めたり、扱う変数の型を揃えたりする必要に迫られることになる。適切な授業プランで「根回し」が必要な学習内容づくりが、友達と「どうする?こうしない?」を生み出す事につながると考える。

 

様々な人たちが、様々な意見を言っている段階だが、一先ずニュースが出された段階での「間違いなくプログラミング教育で養う事ができる力」について私の考えをまとめてみました。

0 コメント


名  前 : 佐藤 正範  Masanori Sato

所  属 : 東京学芸大学 附属小学校

研究テーマ: 「小学生に対するプログラミングの学習」「STEM教育」

専門分野 : 初等教育,教育方法,技術教育,情報教育,プログラミング教育,メディア教育

       ハードウェア工学,科学技術コミュニケーション(CoSTEP7期本科修了)

         研究団体 : CIECコンピューター利用教育学会  情報処理学会

業  績 : 

佐藤正範 2015  小学生へのプログラミングの学習における「足場かけ」の適用 [スライドはこちら]
 PC Conference2015,論文集,p165-166,2015.


Masonri Sato 2014  Preliminary study of teaching a programming language in elementary education

 北海道大学 ソウル大学 台湾師範大学 ジョイントシンポジウム台北ポスター発表,12/2,2014.

 

   佐藤正範 2014 小学生のプログラミングの学習における 言語環境についての一考察 

   PC Conference2014,論文集,p168-171,2014.

 

   佐藤正範 2012 ものづくりコミュニケーションの可能性  

 PC Conference2012,論文集,p149-150,2012.

 

   竹本寛秋・佐藤正範・功刀基 2012 サイエンスコミュニケーター養成課程におけるデジタルゲーム制作実習の構築 

 PC Conference2012,論文集,p267-268,2007.

 

   佐藤正範 2007 私教育におけるロボットと教育の融合 

   PC Conference2007,論文集,2007,p215-218 

 

お問合せ : satonori(a)u-gakugei.ac.jp  "括弧aを@に変えてください" もしくはお問合せフォーム


ヘッダーフォト - Kano - http://www.kano.me/