これからのプログラミングは、どういう方向で発展するでしょうか。
これまでのIT技術の多くは、htmlなどのインターネットに関する技術として発展してきました。facebookやgoogle+やブログやyoutubeなどが、そのひとつの完成した形です。
しかし、インターネットを中心にしたIT技術は、これからのプログラミングで、若い人たちが熱中するキラーアプリケーション(というかキラー目標)ではありません。そこは、もう開拓されてしまった場所なので、第二、第三のザッカーバーグが登場する余地はありません。
若者が熱中するプログラミングの新たなフロンティアは、ロボット作りです。それは、プログラミング+物作りで、センサーという感覚器官と、運動や音声の出力である運動器官と結びついたプログラミングの技術です。しかも、ロボットという物作りには、自動車作りが持っているような美の要素があります。その美的な要素は、3Dプリンタなどの活用によって個人が操作することができます。この美しい物作りという面が、ロボットプログラミングの裾野の広さになるのです。
既に、スクラッチなどの子供向けプログラミング言語、ラスベリーパイなどのミニコンピュータ、ラピロなどの組み立てロボットの組み合わせで、小学生が家庭でロボット作りを楽しむ現実的な可能性が生まれています。こういう子供たちが将来、日本のロボット産業を担っていくのです。
言葉の森では、近い将来、このプログラミング教育も通信の家庭学習の中で行っていきたいと思っています。
子供たちののロボット作りのイメージは、次のような感じになるでしょう。
まず組み立てたロボットに、入力と出力のプログラムをします。もちろん、これは今の段階では、かなり上の学年になってからです。
プログラムの入ったロボットは、その子の毎日の生活に合わせて、朝になったら、「おはよう」などと声をかけます。そのあと、ロボットは自分で動いていき自動掃除機のスイッチを入れます。それから、カーテンを開け、エアコンや炊飯器のスイッチを入れます。
子供が勉強しているときは、近くにいて静かに見守っています。時間を見計らって、お茶を入れて運んできます。子供が、「何か歌って」などと頼むと、その子の好きな歌を歌います。何もする必要がないときは、子供の横で居眠りをしています。子供が夜寝るときは、一緒に布団の中に入ります。
子供にとっては自分だけの知性のあるペットのような存在がロボットです。やがて、子供は、そのペットのロボットを自分の好みに合うように、より美しくより格好のいいものにしようと考えます。3Dプリンタを使えば、粘土で人形を作る感覚で自分の好みの外見を作ることができます。
友達と遊ぶときでも、そのペットのロボットを一緒に連れていくので、どの子も、自然に自分のロボットを持つようになります。自分でまだプログラムや造型のできない子は、出来合いのロボットをペットにします。パソコンが一家に1台の時代から、一人に1台の時代になったように、将来は一人に1体のロボットが普及するようになるでしょう。
これまでの経済を牽引してきたのは、自動車や住宅という裾野の広い産業でした。しかし、これらは次第に飽和状態になりつつあります。今後は、ロボットが新しい産業として広い裾野を持つようになるでしょう。
そして、ロボット技術が更に高度化すると、鉄腕アトムのような人間の代わりに仕事ができるようなロボットも登場してきます。少子化が労働力の不足という点で問題があるのなら、それはロボットの投入で解決されます。その分、人間が、より多くの創造性を発揮し、より豊かな消費をするようにすれば、少子化は社会問題ではなくなります。
ロボット産業は、そういう可能性を秘めているのです。
今回の話は、少し長くなる予定です。
最初に、スクラッチやラズベリーパイに見られるプログラミング教育の新しい流れについて書きます。
http://itpro.nikkeibp.co.jp/article/NEWS/20131029/514542/
そのあと、プログラミング教育のキラーアプリケーションがラピオなどのロボット作りにあることを書きます。
https://www.makuake.com/project/rapiro/
そして、キラーアプリケーションの重要な要素である「美」をロボット作りと結びつける3Dプリンタについて書きます。
そのあと、プログラミング教育は、家庭の自習として行えるものだということを書きます。
そして、その家庭の自習というのが、最近、大学の先端的な教育として試行されている反転授業と同じものであることを書きます。
http://www.huffingtonpost.jp/2013/09/26/flipped-class_n_3993388.html
次に、IT技術が創造的であった時代は、もう終わりつつあるということを書きます。
その終わりつつある姿が、facebookやgoogle+やブログやyoutubeです。
そして、新しい創造性のフロントは、日本語にあることを書きます。
その創造性を育てる日本語をハイパー日本語と呼びます。
ハイパー日本語をオープン長文運動と組み合わせていく展望について書きます。
更に、将来の創造性のもうひとつの分野として心身教育を取り上げます。
心身教育を客観的なものにするための学習方法と評価方法について書きます。
では、最初に、プログラミング教育について。
スクラッチというプログラミング言語によって、子供たちがプログラミングを楽しむことが、より容易にできるようになりました。
ビジュアルな操作で、小学生でも、基本的なプログラミングの考え方を身につけることができるようになっています。
では、なぜ子供のころからプログラミングを学ぶ必要があるのでしょうか。
それは、第一に、プログラミングが面白い遊びだからです。出来合いのゲームをするのにも面白さはありますが、自分で何かを作り出すというのはまた別の面白さです。それはちょうどいい歌を聴くことと、カラオケで自分で歌うことの違いのように異なる種類の面白さです。
そして、受け身のゲームよりも、自作のプログラミングの方が進歩や向上があるという点で、より永続的な面白さになるのです。
プログラミング教育が必要な第二の理由は、プログラミングが、近い将来、国語、数学、英語に匹敵する主要教科になる時代が来ると思われるからです。
そのころには、英語は、自動翻訳ソフトの機能が向上することによって、勉強として学ぶものではなくなっている可能性があります。すると、将来の主要教科は、国語、数学、プログラミングの3教科になるかもしれません。プログラミングの学習には、それぐらいの幅の広さと体系性があるのです。
プログラミング教育が必要な第三の理由は、これがいちばん重要なことですが、プログラミングは、勉強にも、仕事にも、あらゆる生活に役に立つ便利な技術だからです。
例えば、それは、こういうことです。
旅行に行くときに、大きな駅に着くだけなら、電車で済みます。よくある一般的な仕事なら、出来合いのソフトで間に合うのです。例えば、ワードで文書を作り、エクセルで表計算をするというようなことです。
しかし、その大きな駅から少し離れた場所に行くには、バスやタクシーを利用しなければなりません。それは、ワードやエクセルの機能を引き出し、又は組み合わせて、より便利な使い方ができるようになるというようなことです。
しかし、その人だけしか行かないような場所を手探りしながら進みたいときは、もうバスやタクシーは使えません。自分で自動車やオートバイを運転して試行錯誤をしながら進まなければなりません。
仕事をしていると、必ず自分だけにしかニーズがないような課題にぶつかります。そのときに、プログラミング技術が役に立ちます。プログラミングの技術があれば、「こういうソフト、ないかなあ……。なさそうだから、自分で作ろう」ということもできるのです。