教育用プログラミング言語ワークショップ 2006

http://ce.tt.tuat.ac.jp/sigps/index.php?%B6%B5%B0%E9%CD%D1%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0%B8%C0%B8%EC%A4%CB%B4%D8%A4%B9%A4%EB%A5%EF%A1%BC%A5%AF%A5%B7%A5%E7%A5%C3%A5%D72006
にある教育用プログラミング言語ワークショップ 2006に参加した。久野先生に久しぶりにお会いすることができた。

一部で名前を聞いいていた「提言2005(http://www.ipsj.or.jp/12kyoiku/proposal-20051029.pdf)」はこの辺のメンバーが書いたということなのだな。

教育現場で使われている言語を10数件選んで、それぞれが20分の枠で何ができるかを紹介する、という趣向。私はお客さんのはずだったのだが、最後にあったパネルに出ることになった。

久野さんはばりばりJavaでやっているそうだ。色をやっと変えて丸が上下に動く程度のアニメーションしかできないわけではあるんだよなあ。

辰巳さんはJavaScriptを高校で教えた。確かにどこでもほとんど動くので良いよな。具体例を扱うのと、抽象化したモデルを扱うことの違いで、抽象を教えることの難しさを言っていたような気がする。教科書も書いたそうだ。ブラウザのドキュメントをコントロールしたりするのは教科書には書かなかったが、副読本のワークブックには載っている。

金子知適さん(graco)のC/C++。やっぱりつらそうだ。

足利裕人さんのBASIC。長いこと実践なさっているそうだが、まだ現役の言語でもある。教科書の出版社名をとことん伏字にしているため、話がさっぱりわからず。わかる人にはわかるわけだが余り意味はないはずなのだが、学校の先生はいろいろと心配しなくちゃいけないことがあるんだろうかね?

高岡詠子さんによるLogoの紹介。括弧のないLisp。タートルグラフィックスの肝がトライアル・アンド・エラーにある、というのは少々微妙な説明だったが、再帰やリスト処理を教えたいという点は確かである(さらなる感想は後述)。

湯浅さんのLisp。本人とても楽しそう。SICPとXSLispで授業をしている、という話だった。いつもちゃんと挨拶をする機会を逃しているんだよなあ。

松谷信治さん(内田洋行)のワンダーボーグ。学振とバンダイが共同開発したてんとう虫型ロボット。

阿部さんのSqueak。例のFAXねたをすいすいとその場で作ったのはなかなかインパクトあった。「完成度が低い(だっけ)」という項目をSqueakの欠点の欄にわざと残しておいて俺の受けを取る作戦だった模様。

岡田君の言霊Squeak。これもパネルのときに言ったのだが、やはりSeymourの言うようにそれぞれの人が自分向けの表記を作る可能性、というものを将来視野に入れて欲しい。長さんの質問というか意見はかなり正しくて、テキスト形式からタイルに戻したときに、その戻し方がエラーがあることのフィードバックになりうるのだ。

酒得さんのひまわり/なでしこ。面白い人だった。フリーソフト作りをしているということで生活の心配をされていたが、俺もされたいくらいではある。

兼宗さんのドリトルは、地道な努力、そして各地の先生方との人的ネットワークが強み。

長さんのTonyuはスイートスポットにはスポットはまっている。排他制御がどうなっているのか見ていないが、それなりにスケールしているようではあった。

西田知博さんはPENというやつを紹介していた。大学入試センター標準言語というものがあるのだな。Synthesizer Generatorを髣髴とさせる構造エディタでコードを書いていた。Alanが解釈するチクセントミハイのフロー理論によれば、構造エディタが作った構造も安心して壊せるように、壊した後の色々なサポートがあるとよいのだろう。

おにたまさんのHSP。ユーザーは30万人とか言っていた。コンテストも盛況の由。長さんは、TonyuのユーザーであればHSPを知らない人はいない、と言っていた。

鍛冶さんのRosetta。本当の強みは主張し切れていないようではあった。デモの中身をあらかじめPowerPointで紹介しておいて、その後デモと言ってほとんど同じものをもう一度見せる、というのはどうなのだろう。座長だった兼宗さんは意図的だったのか、このセッションの発表者達の発表時間オーバーには非常に鷹揚だった。

原田さんのViscuit。話しなれている。信号と車の例くらい複雑になると、いったいどうしてそうなるのかを説明するのが大分難しくなってきそうだ。仮にうまく動かないときに、どう変えたら思ったように動くのかとか。そういえば朝原田さんから驚きのニュースを聞かされたのだった。

この後パネル。僕は一般的にはパネルセッション懐疑派なのだが、それでもパネリストとして参加。受け売りのピジンクリオールの比喩を言ってみたり。ちょっとしたジョークを言ったのに滑った気がする。伊藤先生は、僕の「$100 Laptopが広まればパイが広がるのだからこの部屋の中で対立してもしょうがない。」という発言が、部屋の後ろのほうでは受けていたとおっしゃってくださったが。

「プログラミング」を教える、そして、構成主義的主張でモデルを自ら構築することによって学ばせる、という2点を見ると、論理的(?)な解のひとつは学習者が自分で言語を作る、ということになるだろう。岡田君のやつは、上級者用、初心者用の言語を切り替えると言っていたが、それぞれの人がどういう言語を欲しがるかを考え、それを自ら作れるような環境を作るのが理想かもしれない。

高岡さんは、高校ではLispに移行して、リスト処理や再帰の概念を教えるとよい、と言っていた。言語の違いとかによらないプログラミングの真髄を教える、ということなら、こちらも言語を作らせる、という話につながると思う。Lisp上での言語実装はリスト処理でかけるわけだし。パネルでは「やさしいメタ」という言葉を持ち出してみたが、エンドユーザー向けメタシステムを作るのが建設的だろう。

というようなことをパネル中に言おうかとも思ったのだが、パネリスト同士の対話などは特に求められていないみたいだったので危うく自制。なのでここで書いている。結局皆が人の話を聞くことなく言いたいことを言って終わるようなパネルになってしまった。

プログラミングの真髄というのは、だいたい合意があるものなのかね?またもAlanの某発言を引用すれば、「コンピューティングというのは禅みたいなもので、コンピュータからディスプレイを取り去り、キーボードを取り去り、CPUを取り去り、全部取り去った後で残るコンピューティングというのはいったい何なのか、という疑問なのだ」と言っていたが。

税金対策のため意見交換会という名前を借りた懇親会でいろいろな人と話せた。その後の2次会でも久野さんや原田さんや辰巳さんや並木さんと痛飲しつつ語り。韓国からは、高麗大学の李先生とそこの学生さんがたくさんいらっしゃっていたのだが、その学生さんの中には韓国SqueakerのKim君もいた。たっぷりと歓談。李先生は筑波大で兼宗さんと同期だったそうだが、韓国の学校での情報教育政策策定に関して非常に強い意思決定権をお持ちだそうだ。毛玉のガスタンクの例を気に入ってくださったようだし、韓国でもようやくSqueak熱が広まるかもしれない。

Kim君には、生命系かナノテクかを目指すのも面白い、と以前言ったことがあるのだが、Squeak熱が昂じて情報教育を専門としたそうだ。生命系は、黄教授の事件があってたいへんだっただろう、と彼が言うので、昔からN線みたいな変な話は常にあるので、余り極端に思いとどまることはない、と言ったりはしてみた。後でN線に関するWikipediaの項目を見てみると、状況は韓国の黄教授のやつに似ているところもたくさんあるのだな。

日本の現状に触れられたということで、思ったよりもかなり有意義な一日だったと思う。危機感を持っている人は持っている。が、何を教えるのかの統一された(とまではいかないが)方向性がないようなので、それを打ち出していくワークショップをまた開きたいということだった。