見出し画像

初学者向けプログラミングの授業におけるソーシャルな知のデザイン

斎藤俊則(星槎大学)

初学者向けプログラミング授業の課題

 初学者向けプログラミング授業☆1 では,近い将来に学習者がプログラミングにかかわることが自明である場合を除き,学習者自身における,プログラミングを学ぶ理由の理解やプログラミングにかかわることへの納得感の形成がしばしば教授者にとっての課題となる.本稿では,そのような課題のある大学情報系科目を想定して,学習者が「プログラミングを学ぶ理由」や「プログラミングにかかわることへの納得感」を自ら見出だせることに重きを置いた,初学者向けプログラミング授業の作り方を解説する.具体的には,この課題の解決に力点を置くならば,プログラミング授業は「ディジタル・コンピテンシー」の獲得を学習目標とすべきであること,そしてプログラミング授業においてディジタル・コンピテンシーの獲得を学習目標とするならば,教授者がプログラミングを「〈ソーシャルな知〉のデザインへの参画」の主題のもとで解釈し授業を編成することが重要であることを説明する.

ディジタル・コンピテンシー

 情報系や理工系の専門科目への接続が想定されない情報系科目における,初学者向けプログラミング授業で優先すべき学習目標は,コンピューティングの専門家ないしは高度な利用者となるための基礎能力の獲得よりも,まずディジタル技術一般の利用者としての汎用的な素養の獲得であろうと考えられる.そのような素養をここで大掴みにディジタル・コンピテンシーと呼びその詳細を検討する.

 コンピテンシーとは,たとえば自らが属するグループの問題解決など,社会的な文脈の中で有能に振る舞うことのできる人の力量を包括的に表す概念である[1].コンピテンシーには特定分野の知識やスキルのような顕在化されやすい力量のほかに,力量を発揮することの意欲や動機などの潜在的かつ心理的要因☆2 や,いわゆるソーシャルスキルのような社会的場面での力量などが含まれる[2].コンピテンシー概念は従来の客観化,専門分化されたスキル観や能力観ではカバーしきれない,社会的文脈を前提とする包括的な能力モデルとして,複雑さを増す21 世紀の社会の教育課題を展望する議論の中で主流となっている(たとえば 文献[3],[4]).

 これを受けてディジタル・コンピテンシーとは,ディジタル技術の社会的な応用場面で有能な人が持つであろう顕在的,潜在的,社会的な力量と定義することができる.そのような応用場面としては,現在の具体的な社会課題の解決に結びついた多様な場面が想定される(表-1 に社会課題のディジタル技術による解決可能性について授業中に議論を行うことを想定したディスカッショントピックの例を示した).ただし課題解決への参画や貢献には,その人自身がディジタル技術を実装することに限らず,課題の当事者としてディジタル技術の専門家と効果的に協働することなどを含む.この意味において,ディジタル・コンピテンシーの獲得は,近い将来,ディジタル技術の専門家に限らずさまざまな立場から社会課題に参画し貢献することを求められる一般の学習者にとって(こそ),優先されるべき学習課題であると考えられる.

画像1

表-1 社会課題のディジタル技術による解決可能性を議論するためのディスカッショントピックの例

〈ソーシャルな知〉のデザイン

 ディジタル・コンピテンシーの獲得を学習目標とするプログラミング授業を作るためには,教授者がまずディジタル・コンピテンシーとしてのプログラミングの在り方を深く理解する必要がある.専門家としてコンピューティングに深くかかわる教授者の多くにとっては,プログラミングはそれ自体が知的かつ創造的な探求の対象であり,学習すべき価値を見出す上でほかに理由は必要ないと感じられるかもしれない.しかし,プログラミングをディジタル・コンピテンシーとして位置づけるためには,社会的文脈におけるプログラミングの意味や価値について今一歩踏み込んだ理解が必要である.この理解を深める上で「ディジタル・コンピテンシーとしてのプログラミングを学ぶことは,すなわち〈ソーシャルな知〉のデザインを学ぶことである」という考え方が示唆を与える.

 〈ソーシャルな知〉とは,ひとことで言えばソーシャルな,すなわち社会的な関係の中にある状況のもとで,その意味や価値が問われる知である.さらに,その知の活用が従来なかった新しい社会的な関係を生み出すことを含めて〈ソーシャルな知〉と呼ぶことができる.この考え方の背景には,社会とは人が為すあらゆる事柄(行為であれコミュニケーションであれ)に付随する意味や価値の源泉であり,社会の側もまた人が意味や価値を見出すあらゆる事柄を媒介にして編成され維持されるという認識がある.このような意味や価値と社会との関係についての認識は,学問分野でいえば社会情報学,さらにはその源泉の1 つである社会学に由来する.ある社会情報学の文献は,社会学の古典であるMax Weber による行為と社会との関係の解釈に触れつつ「行為とは,主体が主観的な意味に従い意味ある行動を取ることであり,また他者がその行為によって方向付けられることで成立するのが社会なのである.よって単なる生理学的な反応だけでは行為とはいえない.主観的な意味とは行為の動機であり,行為の動機を「理解する」ことが大切になる」と説明する[5].すなわち,社会集団やコミュニティにとって重要な意味を持つ課題解決への取り組みとは「主観的な意味」に動機付けられた「意味ある行動」の集積にほかならず,その中で生み出される知とは〈ソーシャルな知〉そのものであるといえよう.

 ディジタル・コンピテンシーとしてのプログラミングとは,社会集団やコミュニティの中で生ずる「主観的な意味」に動機付けられた「意味ある行動」であり,特に課題解決に必要な知識の創造や実現に与る点で,それは〈ソーシャルな知〉をデザインすることである.社会課題に直面する人がプログラミングを知ることは,仮にコーディングをより高度な技量を持つ他者にゆだねる場合であっても,課題解決に向けてディジタル技術をより能動的に活用する道を開き,課題解決の当事者として,まだ存在しない解決方法の創造に主体的に参画することを可能にする.しかしこの可能性が現実のものとなるためには,社会課題に直面する当事者がプログラミングを知るにとどまらず,プログラミングを通して課題解決のための知をデザインすることに対して,「行為の動機」としての「主観的な意味」を見出だす必要がある.それ故に,ディジタル・コンピテンシーとしてのプログラミングを学ぶことは,動機となる「主観的な意味」の発見を含めて〈ソーシャルな知〉のデザインを学ぶことなのである.

プログラミング授業における〈ソーシャルな知〉のデザインの導入

 プログラミング授業において教授者が〈ソーシャルな知〉のデザインの主題を意識することは,プログラミングを学ぶ理由の理解やプログラミングにかかわることへの納得感の形成に課題がある学習者との間に対話的な関係を開くための準備となる.そもそも,プログラミングを介した研究や職務の遂行が当然のことである教授者の多くは,すでに〈ソーシャルな知〉のデザインに深く参画し,新たな価値の創造に携わっている.この状況に長くある人は,そのような活動に参画することの成り立ちにくさを振り返ったり,活動の中心にある「プログラミングをすること」の意味や価値をあえて再考する機会は必ずしも多くはないのではないかと推察される.他方,学習の理由や納得感を見出せない学習者たちは,プログラミングが社会に不可欠な価値を生み出す活動であり,意味のある営為であることを,漠然とではなく具体的に理解するために,より多くの支援を必要する.加えて,そのような学習者たちにとって,社会的な意味や価値の創造に与る〈ソーシャルな知〉のデザインへの参加の可能性が自らにも開かれていることを理解するには,さらに多くの支援が必要である.

 したがって,上述のような学習者を対象とするプログラミング授業では,ただプログラミングを学ばせるだけではなく,「プログラミングを通して〈ソーシャルな知〉のデザインへの参画を促すこと」を正面から主題に掲げて授業を構成することが,学習者における学ぶ「理由」や「納得感」の発見に対する支援としての意味を持ち得る.なぜなら,〈ソーシャルな知〉のデザインへの参画を問うことは,その先にあるプログラミングの意味や価値への問いに必然性を与えるからである.これらの問いは翻って,学習者自身のプログラミングを学ぶ理由や納得感の発見を助けることになる.

 「〈ソーシャルな知〉のデザインへの参画を促すこと」を授業の主題とすることとは,すなわち,授業の事前準備の段階において,授業を成立させるすべての道具立て(たとえば,科目全体の目的と目標,個々の授業回の目的と目標,学習者に対する支援方針,教材その他の学習リソース,学生に課す課題や演習,学習成果の評価基準など)を,「学生に対して〈ソーシャルな知〉のデザインへの参画を促しているかどうか」という観点より吟味することから始まる(表-2 参照).そして,同じ観点で授業実践の評価や改善を繰り返すことによってそれは実現する.学習者の支援の観点から特に留意すべきは,学習者に対して〈ソーシャルな知〉のデザインへの参画に向けた学習のコンテクスト,すなわち学習の開始から収束(たとえば最終成果物の提出や発表など)に向けた学習活動の脈絡,を作るための配慮である.明確な学習のコンテクストの存在は,特に,現在学んでいる事柄が目的とするゴールに向けてどのような意味や価値を持つのかを学習者自身が見出だしやすくするために必要である.

表2_サイズ変更

表-2 「〈ソーシャルな知〉のデザインへの参画」の主題を導入したプログラミング授業の企画例(抜粋)

 プログラミング授業におけるこのような学習のコンテクストは,プログラミング授業を実施する科目全体,さらには科目体系全体の形作る学習のコンテクストと呼応することが望ましい.いわゆるカリキュラム・ポリシーの制定から始まるカリキュラム・マネジメントの話題は本稿の扱う範囲を超えるが,カリキュラム全体が学生に対して何らかの形で〈ソーシャルな知〉のデザインへの参画を促すものであれば,プログラミング授業の組み立ては,科目体系全体の作り出す学習のコンテクストへの呼応や調和を意識することでより効果的となる.科目体系全体において〈ソーシャルな知〉のデザインへの参画に向けた学習のコンテクストを作ることができるならば,学習者がディジタル・コンピテンシーとしてプログラミングを学ぶことの意味や価値を知り,そこに自分なりの理由や納得感を見出すことはより容易となるであろう.

このような授業では学習者の何を評価すべきか

 〈ソーシャルな知〉のデザインを主題とするプログラミング授業では,学習者の評価はプログラミング技術の獲得のみならず,プログラミングを含めたディジタル技術を活用して知の生産者として社会へ参画しようとする姿勢や,そのような社会参画の蓋然性を高める学習者としての素養の成長を総合的に評価することが重要である.しかし,そのような姿勢や素養の成長は客観的な評価材料のみでは確認しづらいため,いわゆる形成的評価(学習の途上にある学習者に介入しつつ進捗や乗り越えるべき課題に関する質的なフィードバックを交えながら行う評価)を適宜用いながら総合的に成長を跡付けることが求められる.

 その際に,特に注意深く観察すべき点の1 つは,学習者による,プログラミングを学ぶことの意味や価値への言及の内容とその変化である.こと,プログラミングを学ぶ理由や納得感に課題がある学習者は,学習を開始する当初は,プログラミングを学ぶことの意味や価値を語る語彙をほとんど持たないか,非常に限定的であることが通常である.その語彙の変化(たとえば学習の意味や価値を語る語彙が豊かになった,内容が具体的になった,学習者の置かれた文脈との関係が表れてきた,など)を観察することで,学習者における〈ソーシャルな知〉のデザインの主題のもとでのプログラミングの学習の進捗や深化が理解できる.

 また,学習者同士の協働性が問われる課題を置くことで,それぞれの学習者のプログラミングへのかかわりの自律性や,それを〈ソーシャルな知〉としてグループのために行使することの積極性などを観察することができる.この観点による観察においては,教授者は学習開始時点におけるプログラミングの技術や知識の個人差を念頭に置きつつ,適宜助言やフィードバックを交えながら,特に技術や知識の面で不安がある学習者が,課題解決において積極的な役割を果たせるように支援することが重要となる.そして,協働の過程で,技術や知識の面で異なるスタートラインに立つそれぞれの学習者が,〈ソーシャルな知〉のデザインへの参画を通したディジタル・コンピテンシーの発揮の面で見せた成長を積極的に評価することが求められる.

初学者を支援する授業に向けて

 本稿ではプログラミングを学ぶ理由の理解やプログラミングにかかわることへの納得感の形成に課題のある大学情報系科目を想定して,学習目標としてのディジタル・コンピテンシーの獲得と,授業の主題としての〈ソーシャルな知〉のデザインへの参画を手掛かりに,学習者が「プログラミングを学ぶ理由」や「プログラミングにかかわることへの納得感」を自ら見出だせることに重きを置いたプログラミング授業の作り方の骨子を解説した.本稿が想定するプログラミング授業では,教授者が,一人でも多くの学習者が〈ソーシャルな知〉のデザインに当事者として参画することを支援する姿勢を持つことが重要である.本稿がそのような授業を生み出すきっかけの一つとなることを祈りつつ筆を置く.

☆1 本稿では科目全体でプログラミングを扱う場合だけでなく,科目の学習内容の一部にプログラミングを組み込む場合を念頭に置き,双方を合わせて「プログラミング授業」と呼ぶ.

☆2 前者の顕在化されやすい力量を認知的スキルと呼ぶのに対して,力量の発揮にかかわる潜在的・心理的な要因を非認知的スキルと呼ぶことがある.

参考文献
1) Woodruffe, C. : What is Meant by a Competency?, Leadership & Organization Development Journal, 14(1), pp.29–36 (1993).
2) Magenheim, J., Nelles, W., Rhode, T. and Schaper, N. : Towards a Methodical Approach for an Empirically Proofed Competency Model, In Teaching Fundamentals Concepts of Informatics : 4th International Conference on Informatics in Secondary Schools - Evolution and Perspectives Proceedings, pp.124–135 (2010).
3) 文部科学省,OECD における「キー・コンピテンシー」について,
http://www.mext.go.jp/b_menu/shingi/chukyo/chukyo3/039/siryo/attach/1402980.htm
4)OECD,OECD Future of Education and Skills 2030 - Organisation for Economic Co-operation and Development http://www.oecd.org/education/2030-project/
5) Scardamalia, M., Bransford, J., Kozma, R. and Quellmalz, E. : New Assessments and Environments for Knowledge Building, In Griffin, P., McGaw, B. and Care, E. (Eds.) : Assessment and Teaching of 21st Century Skills. Dordrecht, Springer, pp.231-300 (2012).
6) 石井和平:社会情報学─情報技術と社会の共変─,学術出版会,p.20 (2007).

(「情報処理」2019年12月号掲載)

■斎藤俊則(正会員) t-saito@gred.seisa.ac.jp
 星槎大学大学院教育実践研究科准教授.本会会誌編集委員会専門委員会(教育分野/ EWG)幹事.本会IFIP 委員会TC3(教育)代表.WCCE 2021 開催準備委員会委員長として同会議の広島開催の準備に取り組む.