つくばでのRuby会議2010 2日目

Twitterは、書かない日はない(@iR3)のにblogは書けない日が続いている。
昨年は、実行委員をやったのに、夜は懐かしい友人と盛り上がってしまったので、blogに書きそびれた。
今年もさっきprintshopへの入稿の Adobe illustratorにダメ出しをくらって直していたら、いつもの寝る時間3時を過ぎてしまった。

今日は、朝一番はjpmobileの小川さん設楽さんのセッションを皮切りに、Matz基調講演、そしてお昼休みに、「メタプログラミングRuby」を買って、著者の Paolo Perrottaさん 翻訳者の角征典さん、序文を書かれたまつもとゆきひろさんのサインを頂いた。

写真左は、懇親会の紹介カード2枚で、Getした商品。たのしいRubyは2冊持っているので、3版が発刊されても買うのを躊躇していたので、1.9にも対応でちょうど有り難かった。

第1日目の万葉社長大場寧子さんの「Rubyで作るDSLの基礎」と繋がる話題で、Rubyの魅力のひとつであるDSLメタプログラミングが見事にシンクロしたのであった。

@takeshinodaさんが書かれているとおり

午後で面白かったのは「メタプログラミングRuby」の著者Paoloさんの講演(昨日、サイン貰ったよ!!)。黒幕術を語るRubyistは、「超強力だけど諸刃の剣だから気をつけて使うんだよ」って最後に必ず訴訟対策的(?)にいうんだけど、そのくせ語ってるときはキラキラ輝く。
Rubyが強力である理由の一つには、強力だけど簡単にさわれない程度に面倒くさいプロセスが必要なメタプログラミング機能にある、と思う。これには色んな言語の理解と、Rubyの実践が合わさらないとよく分からない点でもあるので、3,4種類の言語しか知らない人間にはなかなか伝えづらい。
Paoloさんすばらしいと思ったのは「危険だから使わせない。学ばないというのは理解できない」と断言したところ。何言語のどういう機能でもそうなんだけど「危険だから実開発では使えないよね−」とかいう人は沢山見てきた。けど、それは他人を舐めすぎであり、自分の技能や教える技量がないからそんなことを言ってるに過ぎないと思う。他人の潜在能力を過小評価しているのだ。そういう見識のない言動でどれだけ可能性を排除してきたのかといつも思う。

メタプログラミングは確かにやりすぎ危険だとは思うが、上手に使えばとても強力な武器になる。
今回のRuby会議での大きな収穫は、このメタプログラミングって便利だし、うまくつかえばいいんだ!という認識に至ったということだ。
yuguiさんの「初めてのRuby」で「『黒魔術』はちょっね」という空気を読んで「そうか避けて通ろう」としていたのに対し今回の会議の成果として「メタプログラミング面白」とスタンスが変わるかもしれない。

それにしても Pallo Perrottaさんは凄い方だ。イタリアで JavaをやっておられたのにRuby本を英語で執筆されて、日本で母国語でない英語で講演されて、そして日本語の漢字でサインをしてくださったのだから。

今回 外人の方が多く国際会議場にふさわしい雰囲気なのだが、イタリアの方はこれまでお見かけしなかったので、Rubyの世界的な拡がりを今更ながら感じたのであった。