連載
» 2016年08月23日 05時00分 UPDATE

特集:小学生の「プログラミング教育」その前に(3):子どもだけではなく全ての日本国民にとってプログラミングが重要である、たった1つの理由 (1/3)

政府の新たな成長戦略の中で、小学校の「プログラミング教育」を必修化し2020年度に開始することが発表され多くの議論を生んでいる。本特集では、さまざまな有識者にその要点について聞いていく。今回はビジュアルプログラミングツール「Viscuit」の開発者である原田康徳氏。

[唐沢正和,ヒューマン・データ・ラボラトリ]

特集:小学生の「プログラミング教育」その前に

政府の成長戦略の中で小学校の「プログラミング教育」を必修化し2020年度に開始することが発表され、さまざまな議論を生んでいる。そもそも「プログラミング」とは何か、小学生に「プログラミング教育」を必修化する意味はあるのか、「プログラミング的思考」とは何なのか、親はどのように準備しておけばいいのか、小学生の教員は各教科にどのように取り入れればいいのか――本特集では、有識者へのインタビューなどで、これらの疑問を解きほぐしていく。

今回はビジュアルプログラミングツール「Viscuit」の開発者である原田康徳氏に話を伺った。


コンピュータとは何か――共生のためには子どもだけではなく大人も学ぶべき

 「『2045年にシンギュラリティ(技術的特異点)が起こり、人間の仕事が人工知能つまりコンピュータに奪われる』『人類がコンピュータに支配される」などとよくいわれていますが、人間とコンピュータがそれぞれ足りないところを補って共生していくためには、全ての人がコンピュータの良いところとダメなところを知っておく必要があります。また、『コンピュータとは何か』を追究すると、『計算するとはどういうことか』『モノを覚えるとはどういうことか』など、つまり『人間とは何か』が分かってきて面白いです」

 このように主張する原田康徳氏は、ビジュアルプログラミングツール「Viscuit(ビスケット)」の開発者だ。原田氏は、もともとプログラミング言語の研究をしていて、「未来のプログラミング言語はどうなるのか」という研究の過程で、2003年に「Viscuit」を開発した。Viscuitが他のビジュアルプログラミングツールと大きく異なるのは、子どもにプログラミング自体を学ばせるものではなく、「コンピュータとはこういうもの」とプログラミングを通じて直感的に知ってもらうためのツールである点だ。Viscuitを通じて楽しみながらプログラミングを行うことで、自然とコンピュータとは何かを直感的を理解できるという。

Viscuit」のサイト

なぜ「プログラミング教育」が否定されるのか

 子どものプログラミング教育をめぐる動きでは、政府の新たな成長戦略で2020年度から小学校のプログラミング教育がスタートすることが2016年4月19日に発表されている。また総務省は、「若年層に対するプログラミング教育の普及推進」事業を開始。その一環として、クラウドや地域人材を活用した、効果的・効率的なプログラミング教育の実施モデルの公募を5月27日に開始し、7月19日に選定結果を公開している。今回お話を伺った原田氏は、この選定を行う「第1回 プログラミング教育事業推進会議」の委員を務めており、子どものプログラミング教育を普及する活動にも意欲的に取り組んでいる。

 一方で、小学校のプログラミング教育について否定的な意見も多く挙がっているのが実情だ。この状況について原田氏は、「コンピュータという存在が理解しにくいため、『なぜプログラミング教育が必要なのか』についての議論が起こっているのだと思います。コンピュータは、今の世の中を劇的に変えている最も大きな要因の1つです。人間から仕事を奪っている一方で、その周りには新たな仕事が生まれています。それにもかかわらず、コンピュータとは何なのかを理解するのはなかなか難しい」と述べる。その理由について、原田氏は次のように話す。

 「コンピュータは、言葉では非常に説明しにくいものです。今までの発明は、ほとんどが過去のものとの差分で説明できました。例えば、自動車を見たことがない人でも、『エサのいらない馬車』『疲れない馬車』などといえば何と なく自動車というものをイメージできます。映画や写真も、この説明が通用するのに、コンピュータについてはできません。

 言葉で説明しにくいということは、本として残すこともできません。人間は本を読むことで、どんなに難しい発明や技術でも短期間で何となく理解できます。しかし、言葉で説明しにくいコンピュータは、本を読むだけでは理解できない。今の教育システムは、まさに本を読むことが中心といえるため、いつまでたってもコンピュータを理解させることはできないでしょう」

 本から学べないのであれば、自分で体験する他ない。ここに、プログラミング教育の大きな意義があるという。

 「プログラミングを行うことで、コンピュータの“ワケの分からからなさ”が少しずつ理解できます」

プログラミング教育を“小学生”に必修化する意義

原田康徳氏(計算機科学者。ワークショップデザイナー。Viscuit開発者。博士(工学))
1992年 北海道大学大学院情報工学専攻博士後期課程修了
1992〜2015年 日本電信電話 NTT基礎研究所、NTTコミュニケーション科学基礎研究所
1998〜2001年 JSTさきがけ研究員
2004〜2006年、2010〜2013年 IPA未踏ソフトウェア創造事業プロジェクトマネジャー兼務
NTTを退職後、合同会社デジタルポケット設立

 プログラミング教育を“小学生”に必修化する意義について、「小学生にはまだ早い」「必修化するのではなく興味を持った子だけが教室などでやればいい」などさまざまな意見が出ている。これについて原田氏は「小学生からのプログラミング教育は、やらないといけませんね。今の時代の小学生は、ほとんどがゲーム機やスマホなどのデジタル機器に触れています。それだけに、できるだけ早い時期から『コンピュータとは何か』を知っておく必要があります」と訴える。

 よく「プログラミングではなくセキュリティやITリテラシを教える方が先だ」という意見もあるが、やみくもに「あれをするな」「このサイトには行くな」というだけでは、子どもが従うはずがない。プログラミングを通じて「コンピュータとはこういうものか」と体感してはじめて、「こういった使い方は便利だ」「こういったことを書き込むのは危ない」と納得して使うことができるということだ。

 また、「コンピュータの中身が分からなくても、ソフトウェアやアプリが使えればそれでいい」という意見もある。子どもにプログラミングを学ばせる理由として、原田氏が最近話しているのが「田んぼ」の例だ。

 「小学校では、田んぼでお米や野菜を育てることを子どもに体験させています。これは、お米や野菜がどうやって作られるのか、水とお日様が大事だとか、雑草をつまないと栄養が奪われるとか、小さい種から少しずつ大きくなるとか、その過程や常識的なことを長い期間をかけて直感的に学ばせることが大きな目的です。教育を『効率』『将来の効果』などの視点だけで見てしまうと、田んぼの教育はやりませんよね。でも、大半の親や教師たちは田んぼの教育を“良いこと”としています。プログラミングもそんなに難しいことではありません。田んぼと同じなんです。プログラミングを体験することで、『コンピュータとは何なのか』『普段使うアプリやソフトはどうやって動くのか』その中身が少しずつ分かってきます」

 さらに原田氏は次のように主張する。

 「小学生だけではなく、中学・高校・大学生、そして私も含めた大人まで、コンピュータを本当に理解できている人は非常に少ないのが現状です。『コンピュータとは何か』の概要的なところについては、全ての日本国民が、これから横一線で学んでいく必要があるのではないかと私は思います」

 これは冒頭にある“共生”のためだけではない。親や教師、つまり大人がコンピュータを知ることで、子どもに教える必要性や教え方を考えることができるというわけだ。

Viscuitを触って体感する「コンピュータとは何か」

 原田氏は現在、「こどもビスケット開発室」を月2回のペースで開催しており、子どもにアプリやソフトウェアができていく過程を身近に感じてもらうだけではなく、親にもViscuitを実際に操作してもらいながら、コンピュータとは何かについて、その概要を理解させているという。

 Viscuitのアプリは、iPhoneやiPad、Androidなどのスマートフォンやタブレット、MacやWindowsなどのPCでダウンロードして操作できるようになっている(Adobe AIR製)。インストールができない環境では、Flash Playerを通じてブラウザー上で動かすことも可能だ。

 教室の開催前に行われた今回のインタビューで原田氏は、実際にタブレット端末でのViscuitプログラミングを体験させてくれた。

コンピュータは元から頭が良いわけではない

 「Viscuitでは、タブレット上に指で絵を描いて、それを『めがね』ツールに入れると、さまざまな動きを作ることができます。『めがね』は、部品に命令を出すツールですが、『めがね』1つで出せる命令は簡単なものです」

 「『めがね』を増やせば増やすほど、複雑で難しい動きが作れます。すごいと思えるアプリも、すごい命令1つでできているのではなく、簡単な命令が何万も集まってできています。一方で、命令が1つでも間違っていると、全ての動きが停止してしまいます。コンピュータは元から頭が良いわけではありません。人が望む動きを実現するように何万もの命令を作ることが重要なのです」

 実際にViscuitを試してみると、「これがプログラミング? Scratchなどみたいに、ブロックとか文字とかは出てこないの?」と思う人もいるかもしれない。

 「『めがね』でプログラミングができるのは、Prologなど宣言型プログラミング言語の考え方をベースに作られたViscuitならではです。手続き型言語では、もっと複雑なプログラミングが必要になります。現在のITシステムの開発現場は仕様書通りに作るための手続き型言語やオブジェクト指向言語が主流ですが、小学校でのプログラミング教育を考えた場合、Viscuitのような宣言型言語の方が適していると思っています。命令を1つ足すことで一気に複雑な動きができる。手続き型言語だと、行数を増やしても複雑な動きになる度合いは低いでしょう」

       1|2|3 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。