【01】
教職コアカリキュラム対応のテキストの執筆に参加した。その執筆にまつわる裏舞台の第2回。
学びを育む 教育の方法・技術とICT活用 – 教育工学と教育心理学のコラボレーション | 北大路書房
対話によって人は学び,知識が構成される。学びの仕組みと具体的な教育方法を示し,ICTを活用した個別最適・協働的な学びを追求。
教職向けテキストでプログラミング教育を扱ったものは多くない。特に単独の章を設けてまで扱ったものは数少ない。あとは部分的に触れるに留めているものがほとんどである。
小学校へのプログラミング体験が導入されたことをきっかけとして、プログラミング教育を題材にした書籍は多々刊行された。それらの中には教員の研修を意識したものもある。
しかし、今回の執筆にあたって、参考・参照すべきものは、慎重に検討する必要があるだろう。
プログラミング教育に関する言説を乱暴に振り返ると、次のようなものが考えられそうだった。
- 情報処理・計算機科学分野のもとで展開するプログラミング教育
- 大学におけるプログラミング教育
- MITの取り組みを源流とするプログラミング教育
- パーソナルコンピュータブームにともなうプログラミング教育
- ネットワークとフリーソフトの文脈におけるプログラミング教育
- 中等学校段階におけるプログラミング教育
- モバイルデバイス時代のプログラミング教育
- STEM・Makers教育の文脈におけるプログラミング教育
- 小学校におけるプログラミング教育
- AI時代のプログラミング教育
プログラミング教育というよりも、そのときどきのプログラミング学習の動きを捉えた部分もある。たとえば、パソコンブームの際に子どもたちがBASIC言語などを触れたり習得したりした文化が存在したが、これはある種の学習活動だったし、そこにプログラミング教育的な言説が成立していたと考えられる。
—
さて、先達原稿は、どちらもSTEM・Makers教育の文脈や小学校におけるプログラミング教育の導入あたりを射程にして執筆されたことがわかる。これは時節を反映した原稿としては当然だっただろう。
確かに文部科学省「小学校プログラミング教育の手引」を無視することができないとはいえ、私たちはこれを乗り越えるためにも参照範囲を拡げる必要がある。
板垣原稿がそうしていたように、中等教育におけるプログラミング教育の言説を参照することは大事なのかも知れない。
「プログラミング的思考」なる用語において強調される「順次」「分岐」「反復」は、すでに中学校で扱われていることを根拠に引っ張ってきているところもあるし、共通教科「情報」に至るまでの高等学校情報科にも様々な蓄積がある。
たとえば、情報科教育に関しては次のような文献がある。
情報科教育法 第2版 – 丸善出版
2009年の学習指導要領の改訂や教育方法の変化を踏まえ、2002年に刊行した情報教育シリーズ『情報科教育法』を全面的に改訂。学習指導要領改訂の趣旨を踏まえた上で、各科目の解説や授業の教材例、展開例を解説。また、学習指導案の作成や評価の方法、指導と評価のあり方の詳細な解説を盛り込んだ。情報科教員を目指す学生をはじめ、大学や高等学校で情報科教育に携わる先生方に必携のテキスト。
情報科教育法(改訂3版) | Ohmsha
高校の情報科の教員免許取得には欠かせない、大学教職課程の講義「情報科教育法」の教科書です。前版(改訂2版)は平成20(2008)年度に告示され、平成25(2013)年度から実施されている学習指導要領の内容をふまえて実施に先がけて発行したものでしたが、発行後に一部教科名が変更される(『普通教科「情報」→共通教科「情報」』)、文科省が推奨する教科「情報」の学習の目的区分が変更されるなど、現在の高校の教科「情報」の教育実態に合わせた記述となるよう全体的に見直して、改訂3版として発行するものです。
情報科教育 ―これからの情報科教育―|教育|教養・教育|実教出版
●学習指導要領解説編集委員、情報科教科書著者、情報科教育研究者等、情報科教育のエキスパートによる執筆。
●プログラミング学習など、大きく理数系にシフトした新教育課程のポイントを丁寧に解説。
●具体的な指導例を数多く示し、情報科の教員免許取得を目指す学生だけでなく、高校現場教員にも役立つテキスト。
現行学習指導要領を対象としたものはこの3冊になる。また、旧学習指導要領を対象とした文献が他にも流通しているので適宜参照してもよいだろう。
高等学校情報科に関する書籍は、情報科学分野の執筆者が関わっている率が高く、そういう意味ではプロパーによるプログラミングの言説が読めるのではないかと期待された。
しかし、「プログラミングとは何か?」という問いを解消するには至らなかった。
誤解無きよう、これらの文献がプログラミングについて書いていないというわけではない。
どちらかといえば、プログラムやプログラミングについて丁寧に解説をしてくれている。モデル化とシミュレーションも扱っている。アルゴリズムとプログラミング指導のポイントさえ載っている。
にもかかわらず、そこには学習指導要領をがっちりと意識した縛りのようなものが敷き詰められており、それに沿うように専門知識が展開してしまっていた。
おそらく私が「プログラミングとは何か」という問いでみつけたいのは、プロパーの人々が素でプログラミングを語っている様子なのだ。その語りの印象をうまく翻訳して原稿に載せたいと考えている。
高等学校情報科について理解するには意義ある文献たちだけれども、そもそもの原点を知るためには、もっと源流に近づく必要がありそうだった。
つまり、コンピュータ科学の扉を探してまわることだ。
—
読んでいるあなたは、少し呆れ始めているかも知れない。
教職課程向けテキストのプログラミング教育を扱う原稿で、こんな回りくどいことをする必要があるのかと。
あらかじめ断っておけば、行きつく先に意外な答えはない。
回りくどいことをしてもしなくても、おそらく出来上がる原稿に違いはない。
それでも、コンピュータ科学の扉を探して覗き込もうとする必要があると考えているのは、プログラミング教育の領域で出会った方々を理解したいという欲求があるからだ。
たとえば、Scratchの日本での普及に伴走している阿部和広先生や、Viscuit開発者である原田康徳先生と、直接お話した経験がある。ご両人ともソフトウェア工学やコンピュータ科学の専門家であり、様々な語りや記述の端々に、そうした専門性がにじみ出ているのを感じられる。
文系起点の学際学徒である私からすると、同じコンピュータを語るにしてもその方々との大きな差を感じずにはいられない。
埋められる差ではないが、埋める努力をすることが誠実な向き合い方だと思う。
プログラミング教育に関する原稿に携わるのであれば、コンピュータ科学について自分なりにでも探索を経ておかなければ、記述の強度は保てない。
無駄な我流に過ぎるが、そういう流儀で原稿執筆の準備をした。
—
とはいえ、「プログラミングとは何か」をコンピュータ科学関連の文献に尋ねるのは、また違った難しさにぶつかることになった。
コンピュータ科学の世界で、プログラミングとは何かという素朴な問いに答える意味がないからである。
そりゃプログラムをつくることでしょう…と。
プログラミング(Programming)とは,いうまでもなくプロムグラム(program)を作成することである.そして現実世界におけるプログラムは,まとめられてソフトウェアとなり,コンピュータ(電子計算機)をただの電子部品の集合体から,きわめて強力で高速な情報処理システムへと変身させる.
『プログラミングの方法 – 岩波講座ソフトウェア科学』(岩波書店)まえがき
プロセッサが計算機のときには,アルゴリズムはプログラム(program)と呼ばれる形で表わされる.プログラムはプログラム言語(programming language)で書かれる.また,アルゴリズムをプログラムとして表現することをプログラミング(programming)という.
『計算機科学入門〔第2版〕』(近代科学社)7頁
プログラミング(programming)とはプログラム法,あるいはプログラムするということである.何をどうプログラムするのか,それが問われる.
『コンピュータサイエンス入門(第1版)』(サイエンス社)100頁
定義的な説明としては、これらの引用に準ずることで十分だろうと思う。
語用的な理解としては、まだこれだけでは不十分である。プログラミングに対してどのような解釈の幅があるのかを理解するには、もっと渉猟する必要がある。
—
そんなことを思いながら紐解いていたのは、竹内先生と玉井先生の著書だった。
プログラミング道への招待 – 丸善出版
本書は、大学初年生や、プログラミングに興味のある高校生、プログラムが動く仕組みを独習したい大人、プログラマなどを対象にした、「プログラミングへの招待」のような一冊。 具体的なプログラミング言語の説明はせず、プログラミングの話をするように工夫されており、横書きで書かれた「プログラミングのココロ」的な内容になっている。序盤では、現在のコンピュータの構造からすると、とても単純化したコンピュータの仕組みを紹介し、プログラミングのココロを理解するための土地勘・あるいは地に足のついた理解をするための関門のような構成とした。最後の6章のタイトルが「プログラミングは楽しい」となっているように、「プログラミングを楽しむ」ことが本書の通底といえる。
ソフトウェア社会のゆくえ – 岩波書店
いまや社会の隅々まで行き渡り,われわれの生活や思考スタイルまでも改造しつつあるコンピュータ.それを動かしているのがソフトウェアだ.はたしてその実像をどこまで知っているだろうか.知られざるシステムエラーや超ハッカーの裏側,ソフトビジネスの動向などを例に,ソフトウェアと現代社会との関わりを読みやすいタッチで描く.
この2冊は、専門家の立場からプログラミングやソフトウェアの世界に誘ってくれる貴重な著作である。
「ソフトウェア」などの言葉の語源といったところから興味深い話を展開している。
プログラミングについて…
プログラムとプログラミングの違い
どっちも同じようなものだと言わないでください.名詞としてのプログラムとプログラミングには,楽譜と作曲ぐらいの違いがあります.
『プログラミング道への招待』(丸善出版)55頁
プログラミングとは、プログラミング言語という人工言語でプログラムを記述するという仕事である。だからその作業は、小説や詩や論文や戯曲を書くという言語による創作行為と似ている面がある。
『ソフトウェア社会のゆくえ』(岩波書店)17頁
どちらも創作的なイメージを用いて、ずいぶんと一般向けにかみ砕いている印象に読めるかも知れないが、これらの記述以降もプログラミングとプログラム(ソフトウェア)に関する興味深い記述が続いている。
文芸(芸術)としてのプログラミングやプログラミングの美学といった話題に至ると、これはもうプログラミング教育の範疇を越えてしまいそうだけれども(その文脈に構造的プログラミングの話もあるけれども),こうした景色の存在を意識しながら、そろそろ出発点に戻った方がよさそうだ
「プログラミングとは何か」という問いを設定したところまで戻り,一旦それを置いておくことにしよう。
—
プログラムとは何か、プログラミング言語とは何か、コンピュータとは何か…などなど。
こうして広がっていく問いを包括するであろうコンピュータ科学全般について、これを読み手に意識化させることが大事なのだろうという思いが強くなった。
第14章の最初のページで「コンピューテーショナル」(Computational)、続くページで「コンピューティング」(Computing)という用語をあらためて持ち出したのは、こうした回り道の結果である。
—
『学びを育む 教育の方法・技術とICT活用』(北大路書房)は全国の書店からも注文できますし、オンライン書店でもご購入いただけます。
第14章の執筆にまつわる裏話はまだまだ続きます。