プログラミングを学ぶ意味は?

[画像のクリックで拡大表示]

司会:お二人は主に職業としてプログラミングをされていますよね。プログラミング教育では、IT人材を育てるのではなく、“生きる力”を育むためという位置づけです。それについては、どう思われますか。

鳥井:私は、プログラマーが本業なので、仕事できちんと成果を出すためにプログラミングが必要ですし、新しい知識やノウハウを勉強し続けないといけません。ただ、新しいことを学んだり、今までできなかった考え方で物事を構成できたりということ自体が楽しいと感じます。この点では、仕事だからやるというだけではないのかもしれません。

 プログラミングは、できることの階層が深いじゃないですか。初めは魔法だなと思っていたことの仕組みが分かって、自分でできるようになる。すると、さらに深い仕組みに理解が進んで、もっとできるようになる。この繰り返しがわくわくして楽しいです。

池澤:私も、ウェブ制作を受託したり、記事を書くときに実際に試してみたりとか、仕事でプログラミングする機会が多いです。この過程で身に付けた考え方やスキルが、日常生活など仕事以外で活きていると思います。

 文章を書くときでも、プログラミングのように、伝えたい事柄を分解・整理し、骨組みを作ってから、秩序立てて書くようになりますよね。

鳥井:プログラミングって基本的にコンピューターに対して、筋道を立てて説明しているので、そういう点では確かに同じですね。

[画像のクリックで拡大表示]

池澤:論理的思考力といったら大げさかもしれないですけど、そういう面がプログラミングを通じて鍛えられたような気がします。

 また、学生時代には数学が嫌いだったんですけど、プログラミングをしていると数学にぶつかる局面がありました。そうなると数学への興味もわいたりします。幼いころからプログラミングに触れる方々は、そうした面でもご利益があるというか、アドバンテージになると思います。

鳥井:数学の使いどころが分かるっていうのがいいですね。学校で習っているときには、その数学が何の役に立つのか、ちょっと分からない場合があるじゃないですか。コンピューターを動かしていると、使いどころが割とはっきりしています。役に立つ場面がすぐに思い浮かぶと、ここで使いたいから勉強しようというモチベーションにはなるかもしれない。

池澤:そうですね、モチベーションにすごくなると思います。私、小さなころにプログラミングに出会っていれば、もうちょっと数学が得意だったかもしれないと思います。

鳥井:あと、論理というか、考える筋道を検証するのにプログラミングはとてもいいと思います。自分で考えて、筋道を立ててプログラミングすると、ちゃんとフィードバックとして返ってくる。考えたとおりに動いた、あるいは動かないというフィードバックを受けて、まちがっていたら筋道を考え直してプログラミングし直す。この繰り返しにおいて、ずっと自分の考えを整理し続ける、検証し続けるということで、考え方の訓練にとてもなると思います。

池澤:アルゴリズムを考えるのは面白いですよね。これを実現するにはこうやるんだというのを図にして、それをプログラムとして書き起こすという行為が楽しい。

鳥井:しかもコンピューターは文句を言わない。ずっと試していても怒られないんですよ、人間とちがって。なので、子供のうちにこうした訓練をするのはとても良いことだと思います。子供って、自分がやりたいことであれば、いつまでもやれるじゃないですか。そういう経験が、プログラミング教育を通して、みんなに与えられるっていうのはとても良いことだと思います。

 あと、今ではどこにでもコンピューターがあるじゃないですか。どこにでもあるコンピューターを、なんだかよく分からなくて勝手に動いているものと捉えるか、自分で関与できて作り変えていけるものだと捉えるかで、できることがちがってくると思います。コンピューターのある世界から疎外されないで生きていくために、プログラミングは必要ではないでしょうか。

池澤:仕組みが分からないと、コンピューターが障害になってしまいますよね。子供のときから、コンピューターをブラックボックスや障害ではなくて、できること、活動範囲を広げるための手段や道具として捉えられるようになるとよいですね。

[画像のクリックで拡大表示]

(文/田島篤=出版局、写真/渡辺 慎一郎=スタジオキャスパー)