見出し画像

楽しく・美しくプログラミングを学ぶ場所をつくりましたという話

2020年度から小学校でのプログラミング教育が始まりますね。小中学生のプログラミングスクールや、政府の情報発信もいよいよ熱を帯びてきています。しかし、なぜ国を挙げてプログラミング教育に力を入れるのでしょう?

なぜ小学校でプログラミング教育をするのか?

文科省、総務省、経済産業省などが主導する「未来の学びコンソーシアム」に掲載された資料には、こんなふうに書かれています。

我が国の競争力を左右するのは何か。それは「IT力」です。ヨーロッパでは、「IT 力」が、若者が労働市場に入るために必要不可欠な要素であると認識されています。(中略)今後、国際社会において「IT力」をめぐる競争が激化することが予測され、子供の頃から「IT力」を育成して裾野を広げておかなければ勝ち抜くことはできません。そのような思いから、小学校におけるプログラミング教育の必修化は実現されたのです。

―未来の学びコンソーシアム「小学校プログラミング教育必修化に向けて」P1.「プログラミング教育が必修化された背景」より

たしかに、これからの産業の中心はいうまでもなくITです。先端的な情報技術の研究者・開発者の人材確保は国家的な問題といえるでしょう。小学校からプログラミングに触れておくことは将来の産業を担う人材の育成ということでは、理にかなった政策といえます。

プログラミングできるってどういうことなんだろう?

こうした流れを受けて、特にスマホアプリ、ゲーム、ロボット、ウェブデザインなど具体的なものを作ることを目的としたプログラミングスクールが多数存在します。たしかに、あなたが、具体的に用途があり使えるものを作ることができれば、あなたは「プログラミングができる人」です。しかし、プログラミングができるということには、もうひとつ別の側面があります。

プログラミングすることは、コンピュータという道具を探求すること

結論を書いてしまいましたが、こういうことです。少なくとも僕はこう考えます。具体的なアプリケーションを考えたり作ったりする前に、コンピュータとはどういう道具なのかをよく知る必要がありますよね。では、作り手以外の人はどうでしょうか? これから需要があるからといって、誰もが作り手であるソフトウェアエンジニアやITベンチャーを目指すわけではありませんよね。そういう作り手以外の人にとってもコンピュータを探求することは必要なのでしょうか?

コンピュータと、どう生きていくか

例えば将来、自動運転技術が進み、街なかにコンピュータが運転する自動車が増えていくとします。AIによる予測精度が格段に高まり、人が運転していた時代に比べると渋滞も交通事故はほとんど発生しませんが、全くゼロにすることはできません。その高精度なAIでも予測できない超レアケースな交通事故が発生して、もし、あなたの大切な人が傷ついたり、死んでしまったりしたらどうでしょう。現在であれば、運転者の過失や機械の故障といったことに原因を求め再発を防止し、場合によっては加害者の責任を求めることができます。しかし、AIにそれができるでしょうか。車を制御するプログラムのバグであれば製造した人や企業に責任を問うことができますが、バグではなくAIの判断であるとしたら? 詳しい話は省きますが、AI技術を支えるディープニューラルネットワークでは、そうした個別の判断を調整しようとすれば判断全体に影響を与えてしまい、別の事故の原因になってしまう可能性もあります。

自動運転はちょっと極端な例ではありますが、いま、こういった社会とコンピュータ(情報技術)の問題はあちこちで噴出し始めています。身近な例ではFacebookなど巨大IT企業と個人情報の問題も大きな議論になりつつあります。社会でコンピュータが生きるようにするためには、卓越したITエンジニアや企業の経営者だけがその鍵を握るわけではなく、社会に参加する人々の議論や判断が必要です。その時、コンピュータとはどういう道具なのかを知っておくことは誰にとっても必要ではないでしょうか。

コンピュータとのつきあいを始めよう

ちょっと話が長くなりましたが、プログラミングは、ちょっとコンピュータとつき合ってみるか、くらいの感覚で始めるのがいいと思います。アプリやウェブデザインも興味がある方はいいですが、普段自分が見慣れているアプリやウェブと同じようなレベルで作れるようになるには相当時間がかかります(プロの仕事ですから当然ですよね)。

でも、画面に絵を描くプログラムであればほんの1,2行の命令できちんと動きます。いくつかの命令の組み合わせて10行くらい書けば、美しいグラフィックが現れます。そうしたことの繰り返しで、コンピュータとはどういう仕組みで動いているのかが自然と理解できるようになります。絵を描いてもしょうがないじゃないかという声も聞こえてきそうですが、コンピュータに自律的に絵を描かせるために必要ないくつかの原理は、物理シミュレーション、画像認識、AI(機械学習)、ブロックチェーン、人工生命などを実現するプロセスを細かく分解してみれば同じものが使われています。

楽しく・美しくプログラミングを学ぶ場所

これまで、主に美術系の大学で10年ほどプログラミングを授業で教えてきたのですが、昨今のプログラミング教育や、プログラミングスクールに思うところもあり、自分で場所を作ってみようと思い至りました。上で長々と書いた話に共感される方、子供のプログラミング教育が気になっている保護者の方、プログラミングを始めたいけど何を作ったらいいかわからない方、などなど、まずは、絵を描く感覚で楽しく学んでいただけたらと思います。

体験受講もやっていますので、ぜひご参加ください。お待ちしています。


この記事が気に入ったらサポートをしてみませんか?