2010年12月14日火曜日

「プログラミング、何をどう教えているか」

先日「忙しくとも休む暇を」と書いている割に、最近はずっと予定稿ですが。

タイトルは日本情報処理学会の雑誌「情報処理」から。プログラミング教育について論じた連載です。

その連載ではプログラミングの教育について色々なことを述べているのですが、少なくとも私が今まで読んだ中には、ツールとしてのプログラミングを教えているという感覚でした。勿論多くの人にとってプログラミングはツールであり、私もプログラミングをツールとして用いることがありますが、しかし、数学同様に、プログラミングはそれ自体にまた面白い世界を内包しています。

プログラミングは数学以上に「ツール」として見られていることが多いように思います。それ故、説明はかなり粗い。極論すれば、道具には道具なりの扱い方がある、という「使えればいい」程度の教え方のようです。勿論、それをどう使えるようにするか、ということがこの連載ではかかれているのですが、どうにも、プログラミングはツールである、ということから離れていないような気がしてなりません。

競技プログラミングのような世界がある。プログラムそのものを趣味としている人がいる。私もそんな一人で、自分の執筆したテキストには「プログラミングとは一般にはコンピュータに処理させたいことを記す、ということであるが、これではあまりにも味気ない。…(中略)…コンピュータを俳優とし、プログラマは脚本家と監督を兼ねている。こうしてつくられたドラマをプログラムとよんでいる。」と書きました。けれども、そう感じる人はあまり多くないのか、あるいはそこまで深いことを感じ取れるレベルまで教えることはできないのか、道具という感を払拭出来ていなくて悲しい限りです。

友人たちがよくプログラミングの質問に来ます。その友人たちの多くは、プログラミングを、訳の分からない、厄介な、しかし使いこなせないといけない道具のように扱います。まるで、プログラムをいやいややるのが義務感のような、苦痛を顔に表します。それを見ていて、心が痛みます。

プログラミングは、コンピュータを相手につくるドラマです。そんなクリエイティブな行為を、多くの人が「ただのツール」として捉えていて、あるいはそう教えていて、嫌な顔をされてしまう。私はそれがいやでたまりません。

この連載はまだ始まったばかり。じっくりと読んで、ツールとしてプログラムを教えるだけでなく、プログラミングそのもののクリエイティブな楽しさをこのように教えている、という記事が見つかることを期待しています。

1 件のコメント:

大阪のオバチャン さんのコメント...

私の同僚で、皆が口を揃えて鬼才と評するプログラマが
達哉んさんと同じような話をしていました。
そんな風に考えられるっていいな、と印象深かったのを覚えています。

仕事でも子育てでも何にでも当てはまりますが
気の持ちよう一つで大抵の事は楽しく
そして創造性豊かに取組めるものだと思います。
楽しく、というより英語のenjoyに近いのかもしれませんが。