
小学校・中学校・高校レベルへのコンピュータサイエンス教育の導入に大きく舵を切った米国。ホワイトハウスとオバマ大統領が公表した教育施策の概要をご紹介します。プログラミング教育にフォーカスしている日本とは対照的です。
前回記事では、日本ではあまり知られていない学問分野であるコンピュータサイエンスの概要を解説しました。「情報を動かし、情報で動く」という情報機械としてのコンピュータの原理や活用方法を探り、便利なものを創り出すという目的を持った学問分野です。プログラミングはあくまでコンピュータサイエンスの中の基本知識の一つ、という位置づけです。
プログラミング教育への関心が高まっている日本。文部科学省においても、有識者会議において、小学校段階におけるプログラミング教育の在り方を議論したりと、方向性を模索しているところですが、アメリカではすでに国策としてのコンピュータサイエンス教育の拡大に動いています。今回はアメリカ政府の動きをご紹介します。
関連情報:
- 「コンピュータサイエンスってなんだろう」、かながわグローバルIT研究所、2016年7月5日
- 「小学校段階におけるプログラミング教育の在り方について(議論のとりまとめ)」、文部科学省、2016年6月16日
「プログラミング経験を持った初の大統領」バラク・オバマ
米国科学財団(NSF)による高校向けコンピュータサイエンス教科の開発や、Code.orgにょるプログラミング体験の普及活動など、コンピュータサイエンス学習の機会を増やそうという様々な動きが従来からあるアメリカ。グーグルやフェイスブックなど、米国発の巨大IT企業の創業者の多くはコンピュータサイエンス専攻出身ですし、そこで働く人々の多くも同様にコンピュータサイエンスでの学位を持っています。高収入で付加価値の高い職に就くための必須スキルとしてのコンピュータサイエンスの重要性が広く認知されています。
とはいえ、大学以前の段階でのコンピュータサイエンス教育は無いといってよい状態だった米国。(実際には、教育は各州の管轄ですので、州によって状況は異なる。)国策としてコンピュータサイエンス教育に力を入れる方向に大きく舵を切っています。
2014年12月に米国各地で開催された「Hour of Code(コーディングの1時間)」。たった1時間だけでもコーディング(つまりプログラミング)に触れて、その楽しさを体験しようというもので、「コンピュータサイエンス教育週間(Computer Science Education Week)」の一環で行われたものです。そこでオバマ大統領自らもコーディングを体験、「プログラミング経験を持った初のアメリカ大統領になった」とホワイトハウスも声明を出し、コンピュータサイエンス教育の重要性をアピールしています。
参考情報:
- 「President Obama Is the First President to Write a Line of Code」、ホワイトハウス、2014年12月10日
そのような様々な動きのあった米国ですが、2017年予算にはコンピュータサイエンス教育が盛り込まれ、国策として動き出し始めました。
「全ての人にコンピュータサイエンスを」
2017年予算に盛り込まれたのは「全ての人にコンピュータサイエンスを(Computer Science for All)」と名付けられたイニシアチブ(運動)。学校教育へのコンピュータサイエンス導入のための様々な活動に予算がつけられています。
出典:
- 「Computer Science is for All Students!」、ホワイトハウス、2016年5月16日
その根底にある問題意識は、「従来のコンピュータサイエンス教育と呼ばれていたものは、ワープロの使い方やJava言語などのプログラミングに留まっていた」との問題意識。ワープロなどのツールの使い方をコンピュータサイエンスと呼ぶのは論外ですが、Javaプログラミングですら不十分とした点はすごいですね。コンピュータサイエンスの何たるかをよくわかっているところはさすがです。
このイニシアチブが目指すコンピュータサイエンスは、ツールやプログラミングという枠を超えて、「コンピューテーショナル思考(computational thinking)」を養うものとしています。
この「コンピューテーショナル思考」は、1990年代後半に提唱されたもので、その後の欧米のコンピュータサイエンス教育の在り方に大きな影響を与えたものですが、日本ではそもそも適切な訳語がないなど、あまり理解されていない概念です。
ホワイトハウスの声明では、コンピューテーショナル思考を以下の3つから成るものとしています:
- 与えられた課題を、より小さなサブ課題に分割し、
- これらのサブ課題に対して、コンピュータ活用による解決法を創り出し、
- そしてその結果を他者に伝える(communicate)スキル
コンピュータサイエンス教育が目指すもの
このイニシアチブの具体的な内容については省略しますが、ぜひ紹介しておきたいのは「なぜコンピュータサイエンス教育が必要なのか」を説明した部分。革新的なテクノロジーを生み出すイノベーターの育成や、ITに従事する労働者を育成するためではないと言い切っています。
原文は「Ultimately, CS education isn’t important only because it helps create the next generation of technological innovators and IT workers.」本当にすごいです。
それでは、コンピュータサイエンス教育は何のためのものか?
「コンピュータサイエンスの基礎を身に付けることで、生徒はほかの関心・興味を追及する能力を得ることができる。また、どんな仕事を将来選ぶとしても、そこで成功するためにも役に立つ」としてます。
これも素晴らしい考え方だと思います。
原文は「Having a foundation of CS knowledge will equip students with the ability to explore other interests, and help all students succeed in any careers they choose.」です。
実は冒頭で述べた文部科学省の有識者会議でもほぼ同様の主張がされていて、それには大変心強く感じますが、そもそも議論の枠が「プログラミング教育」という、コンピュータサイエンスのごく一部の話。日本でも、プログラミング教育を第一歩として、もっと広いコンピュータサイエンスの世界に触れる機会が増えることを願っています。
ホーム画面に戻るにはこのリンク
関連記事:
- 「コンピュータサイエンスってなんだろう」、かながわグローバルIT研究所、2016年7月5日
- 「プログラミングはどう教えるべきか?どう学ぶべきか?」、かながわグローバルIT研究所、2016年3月29日
- 「コンピューティング、コンピュータサイエンス、情報科学」、かながわグローバルIT研究所、2016年2月23日
(かながわグローバルIT研究所 森岡剛)
- 投稿タグ
- コンピュータサイエンス, プログラミング