高専におけるプログラミング教育を振り返って～主体的な深い学びの授業を目指した教材および学習支援システムの活用～
NPO法人 学習開発研究所
高橋 参吉

講演の要旨 筆者は、1990年代後半、高等専門学校でのプログラミング学習のためにネットワーク環境で電子化されたノートを利用できる学習環境を開発した。そして、この電子ノートを用いたプログ
ラミング学習システム（プログラミングノートと呼ぶ）を利用してプログラミング教育を行ってきた。プログランミングノートを利用した学習では、個人の電子ノートおよび学習履歴が自動的に作成され、学習者は学習活動に、指導者は教育活動に利用できる。
 自動的に作成される学習履歴だけでなくエラー処理など学習者が取り組んだ学習プロセスが個人ファイルに残るので、学習者は自らの誤りから学び、自らの学習を振り返ることができる。
これは、新学習指導要領でいうところの「主体的な深い学び」につながる学習方法であり、このプログラミングノートの学習履歴のデータを分析することは、学習者が「主体的に学習に取り組む態度」の評価方法にもつながる。
 今回の講演では、「主体的な深い学び」の授業の一例として、20年以上前に行ってきたプログラミング教育を紹介し、プログラミングという限られた学習であるが、「主体的に学習に取り組む態度」の評価、特に「自らの学習を調整しようとする側面」について考察する。また、最近、筆者は、初等・中等教育のプログラミング教育において、マイクロビットによるプログミングを行っているが、この教育との関係についても言及したい。

講演の概要
高専でのLinux環境におけるCプログラミング教育（約25年前、1997(平成9）年前後）

 プログラミングノートの特徴
 学習者の学習・思考(学習履歴）のプロセスが残せる電子ノート
 「自ら考え学ぶ」学習指導、電子ノートの編集による学習の振り返り

 新学習指導要領による観点別学習活動の評価
 「知識・技能」「思考・判断・表現」「主体的に学習に取り組む態度」• 粘り強い取り組みを行おうとする側面• 自らの調整を行おうとする側面

 マイクロビットによるプログミング学習

引用文献
 プログラミングノートによるプログラミング 高橋参吉、松永公廣：電子ノートによるプログラミング教育の実施と評価、
日本教育工学雑誌22(Suppl.)、77-80、1998
 高橋参吉、松永公廣：プログラミング学習のための電子学習環境の構築、
日本教育工学雑誌23（3）、155-165、1999

 新学習指導要領の学習評価
 文部科学省：学習評価のハンドブック(高校版）
https://www.nier.go.jp/kaihatsu/pdf/gakushuhyouka_R010613-02.pdf

 マイクロビットによるプログラミング 高橋、喜家村、稲川：micor:bitで学ぶプログラミング－ブロック型から
JavaScript そしてPythonへ－、コロナ社(2019).
https://www.u-manabi.net/microbit/

プログラミング学習の問題点
 プログラミング学習、一斉指導は行いにくい。
 特に、問題となるのは、プログラムのデバッグである。
 人数が多くなると、全員に対応できない。

 学習者に考えさせるための支援が必要である。
 情報システムによるデバックなどの学習を支援
 学習者どうしの協調的な学習を支援 プログラミングノートによる学習
 エラーメッセージを注意して読ませる。
 学習者自身に熟考させる。

プログラミングノートの構成

プログラミングノートの機能 学習者の利用機能
 Pノート（個人の電子ノート）
 Pノートウィンドウ(プログラムの編集・実行、学習履歴の編集）
 電子教科書（C言語の教科書の一部）• 高橋ほか：動くグラッフィクスで学ぶCプログラミング、コロナ社(1996).

https://www.coronasha.co.jp/np/isbn/9784339023367/
 マニュアル（Linuxの付属マニュアル） 指導者の利用機能
 参照ウィンドウ（編集された学習履歴の参照）
 提出Pノート（電子提出されたレポートの参照）

Pノートウィンドウ プログラムの作成・編集・保存・実行 プログラム表示ウィンドウ エラーメッセージの表示 エラーメッセージ表示ウィンドウ

 考察文の表示・入力
 キーワード、考察文入力
 考察文表示ウィンドウ 参照機能ボタン
 Pノート、電子教科書、マニュアル
 個人履歴、集団履歴 助言（教えて‼ ボタン）Pノートの例
 元の作成プログラム
 プログラムの変更点
 各自の考察文などが表示される。
 提出、最新プログラム追加、保存などのボタンがある。
Linux用統合ソフト
Applixware を利用

プログラミングノートによる学習の特徴と指導 プログラミングノート利用学習の特徴
 学習活動の自己モニタリング
 学習活動の記録
 学習活動の確認 学習活動の理解学習過程表 学習活動を可視化
 学習過程表に、学習を振り返り、まとめる。

 学習活動を可視化することにより、学習に対する理解が深まる。

(参考）学習履歴ファイル

個人履歴の参照（１） 学習者による学習履歴の参照
 エラーメッセージの全履歴
 考察文・選択したキーワードの全履歴
 操作の全履歴
 選択したキーワードの種類と回数Linux用統合ソフト
Applixware を利用

個人履歴の参照（２） 指導者による学習履歴の参照
 個人履歴 集団履歴 学習履歴から編集された学習結果

 個人履歴の参照
 課題名を入力、学生番号を選択
 さまざまな履歴が参照できる

(参考）学習行動図
 横軸は時刻、縦軸はボタン名（学習者が押したボタン番号）でグラ
フ化すると、学習者の行動がわかる。

エラーメッセージの理解につながる考察関係（対応行表示・選択、考察確定）が、初期段階で多くなっている。

電子教科書の構成
 電子教科書（C言語の教科書の一部）
 電子問題集（練習問題）などからなる。
電子教科書だけによる学習（自己学習）も可能である。

電子教科書の特徴
 テキストはハイパーリンクされており、目次から参照できる。
 索引から関連用語のページにリンクが貼られている。
 例題プログラムは、「例題実行」で実行でき、プログラムは「編集」や「実行」ができる。
 学習メモ(付箋機能‼）は、学習したこと、重要なことなどが記入できる（画像添付も可） 。

学習者の評価

（まとめ）プログラミングノートによる学習指導 学習者が、「自ら考え学ぶ」ための支援・指導が重要である。
 プログラミングノート、電子教科書のような学習支援システムを利用
 授業中に実習の小テストを実施• 学習者に合わせたレベル（30％、50％、70％）の異なるヒントを用意 学期末試験でも実習テストを実施 プログラミングが苦手な学習者への対応
 Pノートの記入量は多くなる。 Pノートを編集することにより、学習の振り返りを行う。

 プログラミングが得意な学生への対応
 Pノートの記入量は少ない。助言機能により、苦手な学習者への支援を行うことにより学ぶ。

観点別学習活動の評価（１） 「知識・技能」
 「思考・判断・表現」
 「主体的に学習に取り組む態度」
 ①知識及び技能を獲得したり、思考力、判断力、表現力等を身に付けたりすることに向けた粘り強い取組を行おうとする側面
 ②の①粘り強い取組を行う中で、自らの学習を調整しようとする側面、という二つの側面から評価することが求められる。
文部科学省：学習評価のハンドブック(高校版）

観点別学習活動の評価（２） 「主体的に学習に取り組む態度」
 これら①② の姿は実際の教科等の学びの中では別々ではなく相互に関わり合いながら立ち現れるものと考えられる。
 例えば、自らの学習を全く調整しようとせず粘り強〈取り組み続ける姿や粘り強さが全くない中で自らの学習を調整する姿は一般的ではない。

 プログラミング学習における評価
 「知識・技能」「思考・判断・表現」の評価は、特に問題はない。
 「主体的に学習に取り組む態度」の評価で、「粘り強い取組」の側面、特に、「自らの学習を調整」の側面は、どのように評価するのか。

 プログラミングノートは、 「主体的に学習に取り組む態度」の育成、 「自らの学習を調整」するための役割を果たしているシステムといえる。

マイクロビットによるプログラミングの学習指導（１） ブロック型から、JavaScript、Pythonへのプログラム変換が、簡単にできる。
 学習者のレベルに合わせたが学習指導ができる。

マイクロビットによるプログラミングの学習指導（２） 印刷機能により、簡単にプログラムを印刷できる（残せる）。
 プログラムの途中経過も残せる。不要なプログラムも残っている場合もある。
 学習過程を残せるため、学習の振り返りができ、学習の理解につながる。

マイクロビットによるプログラミングの学習指導（３） 開発している教材は、学習者の主体的な学習を促す教材（「教材を見て、自分で確認して、自らが納得する」）である。
 教材のコンセプトは、
1)教材を実行して、確認する（学ぶ）。
2)教材（プログラム）を見て、確認する（理解する）。
3)教材（プログラム）の変更も試みて、確認する（思考する）。
である。
 例えば、「じゃんけんゲーム」の教材
 小学校、中学校、高校で利用できる教材であり、主体的な深い学びに合わせた教材となりうる。

（まとめ）プログラミング教育の在り方 プログラミング教育では、学習者の主体的なプログラミング学習が重要である。
 プログラミングノートによるプログラミング学習の考え方は、学習の理解を助け、自らの学習を調整できる学習支援システムである。
 コロナ禍の遠隔教育にも、応用できる考え方ではないか。

 マイクロビットによるプログラミング学習では、学習者の主体的な学習が可能であり、主体的な学習を促す教材の開発もできる。
 コロナ禍の遠隔教育でも利用できる学習指導のあり方の検討や教材（オンデマンド教材）の開発が必要である。

「主体的に学習に取り組む態度」の観点からの学習指導
 「主体的に学習に取り組む態度」の観点から、学習活動の評価を行うためには、次のような学習指導を行う。
 粘り強い取組を行おうとする側面
 生徒のレベルに合わせて、例題や課題は段階的に取り組めるように設定しておき、学習指導をする。
 生徒の興味・関心に合わせて、プログラム言語は選択できるようにしておき、学習指導をする。

 自らの学習を調整しようとする側面
 生徒が自らの学習を振り替えられるように、学習過程を残せる学習ツールや教材を用意しておき、学習指導をする。