高校情報教育で何を教えるべきか、そして、それを大学の教育と結び付けるにはどうしたらよいか(高大連携情報教育と呼ばれる)、さらに、高校教育をもとにプログラミング教育を行うには、そして、大学での学びを企業に結び付けるにはそうしたらよいか・・・などなど、高校、大学、企業における教育カリキュラム(コース)の問題が、言われている。
このときに考えられるモデルとして、こんなのがある(情報フルーエンシーというらしいよ)
1. Intellectual Capabilities(知的能力):情報に限らない一般的に必要な知能
↓
2. IT Concepts(情報技術の概念)
↓
3. IT Skills(情報技術のスキル)
(上記のリンク先参照)
つまり、プログラミングなんていうのは、情報技術の概念であって、
プログラミング言語であるJavaを使ってプログラムを書くというのは、情報技術のスキルにあたる。
で、知的能力というのは、読み、書き、そろばんのほかに、問題解決力、プレゼンテーション力、コミュニケーション力など、情報に限らず、他の分野にもつかえる能力をさす。
ここで、上記モデルの「1、知的能力」について考えてみる。
たとえば、知的能力の一つである「そろばん」、つまり計算について考えてみると、本来数学の分野の話だが、幅広い分野に使えるので、知的能力となる。このような、ある分野の話なのだが、幅広い分野に使える知的能力というのは、いっぱいある。例えば、国語の分野の読み書き、美術の分野の絵の書き方?、理科の分野の観察などなど・・・
情報の分野にも、もちろんあるわけで・・・
・・・はいはい、わかりましたよお・ロジカルシンキングでしょ!
だけど、こういっているのは、たぶん日本の大学関係者だけで、
世界的に見ると、ここで言われるのは、Computational Thinkingとなる。
Computational Thinkingは、コンピューターサイエンス分野に関する技術なんだけど、それを、(コンピューターサイエンス以外の)分野にも使う、問題解決能力をまとめたもん
っていう理解でいいかな??たぶん・・・
なので、このComuter Thinkingから、プログラミング能力、そしてプログラミングと結び付く体系化を行えば、高校はどこを教え、大学はどこを教え、それらの知識をもとに、企業でプログラミングができるというようにむすびついてくる(あ、日本語変だけど、通じる?)
企業で必要なプログラミングというと、例えばJavaが書けること。
Javaでどんな能力が必要かというのは、試験をOracleがやるくらい知られている。
この元となる知識というのも、だいたい、わかっていて、そのため、言語の本の多くは、その順番で書かれている。
例えば、高橋麻奈さんの場合(やさしいJava)
変数 (宣言)
式と演算子 (順次処理)
場合に応じた処理 (条件分岐)
何度も繰り返す (繰り返し)
配列
ときて、この後クラス(言語固有の話)にむすびつけている
言語、とくに手続き型の場合は、だいたい、こんなもんが要素だ。
つまり、「2.情報技術の概念」であるプログラミングと「3.情報技術のスキル」の間はこんなことが要素になりそう。
では、こんど「1.知的能力」と「2.情報技術の概念」の間は?というとここが、CTになることになるが、
ここ
Computational Thinking
http://scratched.media.mit.edu/resources/computational-thinking
によると、プログラミングに関するようなcomputational conceptsは
sequence
loops
parallelism
events
conditionals
operators
variables
lists
なんだって。
なので、
(1)この概念を身につけさせ、
(2)そして、プログラミングに結びつけ、
(3)さらに、各言語に結び付ければよい。
高校では、(3)の一例(つまり、何かの言語などを使って)(1)を身につけさせ、
大学では(1)をもとに(2)を教え、(3)を演習させる・・・
とすると、大学の授業では、(1)を元としているので、この能力があるかどうかを
テストすることになる・・・つまり、Computational Thinkingをテストすることになる。
ふ〜、やっと今日言う主題に結び付く、お膳立てができたよ。
でね、一般教育としては、
プログラミングっぽいことを楽しくやらせて
Computational Thinkingを身につける
っていう素材が必要になってくるんだけど、
これを、鷲崎先生のところ(ごめん、私の世代的に鷲崎先生になるんだけど、
深澤先生のところといったほうが、適切なのかも?)の学生さん(院生さん?)
の高野さんというかたが、
まねっこダンス
https://play.google.com/store/apps/details?id=jp.eclipcebook
というので、つくっているらしい。
女性プログラマ育成が目的らしいが(なぜ、じょせい・・・?)
テキストエリアに命令をかいて、
ダンスさせるということで、
sequence
loops
parallelism
を身につけさせるというものらしい。
プログラミング言語をつかわずに、CT能力を育成するってことで、
さっきの(1)→(2)→(3)の流れにもっていく教材をつくり、
高校情報→高大連携→産学連携→産業界
まねっこだんす アプリ開発 開発で金儲け
までの流れをつくったのかもしれない・・・
これって、すごくない?
やっぱ、時代は鷲崎先生のところなんですかね・・・
このときに考えられるモデルとして、こんなのがある(情報フルーエンシーというらしいよ)
1. Intellectual Capabilities(知的能力):情報に限らない一般的に必要な知能
↓
2. IT Concepts(情報技術の概念)
↓
3. IT Skills(情報技術のスキル)
(上記のリンク先参照)
つまり、プログラミングなんていうのは、情報技術の概念であって、
プログラミング言語であるJavaを使ってプログラムを書くというのは、情報技術のスキルにあたる。
で、知的能力というのは、読み、書き、そろばんのほかに、問題解決力、プレゼンテーション力、コミュニケーション力など、情報に限らず、他の分野にもつかえる能力をさす。
ここで、上記モデルの「1、知的能力」について考えてみる。
たとえば、知的能力の一つである「そろばん」、つまり計算について考えてみると、本来数学の分野の話だが、幅広い分野に使えるので、知的能力となる。このような、ある分野の話なのだが、幅広い分野に使える知的能力というのは、いっぱいある。例えば、国語の分野の読み書き、美術の分野の絵の書き方?、理科の分野の観察などなど・・・
情報の分野にも、もちろんあるわけで・・・
・・・はいはい、わかりましたよお・ロジカルシンキングでしょ!
だけど、こういっているのは、たぶん日本の大学関係者だけで、
世界的に見ると、ここで言われるのは、Computational Thinkingとなる。
Computational Thinkingは、コンピューターサイエンス分野に関する技術なんだけど、それを、(コンピューターサイエンス以外の)分野にも使う、問題解決能力をまとめたもん
っていう理解でいいかな??たぶん・・・
なので、このComuter Thinkingから、プログラミング能力、そしてプログラミングと結び付く体系化を行えば、高校はどこを教え、大学はどこを教え、それらの知識をもとに、企業でプログラミングができるというようにむすびついてくる(あ、日本語変だけど、通じる?)
企業で必要なプログラミングというと、例えばJavaが書けること。
Javaでどんな能力が必要かというのは、試験をOracleがやるくらい知られている。
この元となる知識というのも、だいたい、わかっていて、そのため、言語の本の多くは、その順番で書かれている。
例えば、高橋麻奈さんの場合(やさしいJava)
変数 (宣言)
式と演算子 (順次処理)
場合に応じた処理 (条件分岐)
何度も繰り返す (繰り返し)
配列
ときて、この後クラス(言語固有の話)にむすびつけている
言語、とくに手続き型の場合は、だいたい、こんなもんが要素だ。
つまり、「2.情報技術の概念」であるプログラミングと「3.情報技術のスキル」の間はこんなことが要素になりそう。
では、こんど「1.知的能力」と「2.情報技術の概念」の間は?というとここが、CTになることになるが、
ここ
Computational Thinking
http://scratched.media.mit.edu/resources/computational-thinking
によると、プログラミングに関するようなcomputational conceptsは
sequence
loops
parallelism
events
conditionals
operators
variables
lists
なんだって。
なので、
(1)この概念を身につけさせ、
(2)そして、プログラミングに結びつけ、
(3)さらに、各言語に結び付ければよい。
高校では、(3)の一例(つまり、何かの言語などを使って)(1)を身につけさせ、
大学では(1)をもとに(2)を教え、(3)を演習させる・・・
とすると、大学の授業では、(1)を元としているので、この能力があるかどうかを
テストすることになる・・・つまり、Computational Thinkingをテストすることになる。
ふ〜、やっと今日言う主題に結び付く、お膳立てができたよ。
でね、一般教育としては、
プログラミングっぽいことを楽しくやらせて
Computational Thinkingを身につける
っていう素材が必要になってくるんだけど、
これを、鷲崎先生のところ(ごめん、私の世代的に鷲崎先生になるんだけど、
深澤先生のところといったほうが、適切なのかも?)の学生さん(院生さん?)
の高野さんというかたが、
まねっこダンス
https://play.google.com/store/apps/details?id=jp.eclipcebook
というので、つくっているらしい。
女性プログラマ育成が目的らしいが(なぜ、じょせい・・・?)
テキストエリアに命令をかいて、
ダンスさせるということで、
sequence
loops
parallelism
を身につけさせるというものらしい。
プログラミング言語をつかわずに、CT能力を育成するってことで、
さっきの(1)→(2)→(3)の流れにもっていく教材をつくり、
高校情報→高大連携→産学連携→産業界
まねっこだんす アプリ開発 開発で金儲け
までの流れをつくったのかもしれない・・・
これって、すごくない?
やっぱ、時代は鷲崎先生のところなんですかね・・・