Vancouver PHP Conferenceの参加レポート――ボランティア運営型コンファレンスの底力
遠方よりはせ参じた講演者の中には、コンファレンス開催の数日前にバンクーバ入りしておき、日曜日にはウィスラーまで足を伸ばしてスキーリゾートを楽しんでからイエールタウンにてディナーを堪能するというスケジュールを組んでいた人も多かったようだ。これら一部の人々にとっては、ある意味非常に有意義なコンファレンス開幕イベントだったかもしれないが、あくまで本コンファレンスの正式な開幕は月曜日の朝からである。登録窓口では、名札がアルファベット順に印刷されていなかったというハプニングも発生していたが(あるボランティアスタッフの言葉を借りれば“これが本当のランダムアクセス”ということになる)、午前9時に予定されていた最初のプレゼンテーションが始まる頃には、参加者の受付は大方終わっていた。
プレゼンテーション
本コンファレンスの口火を切ったのは、PHPを生み出したRasmus Lerdorf氏によるプレゼンテーションであり、この配役はまさに適役と言えるだろう。Lerdorf氏の講演は、構成的には無秩序だったと評せなくもないが、内容的には変化に富んだ興味深い話であった。同氏は講演劈頭、多くの人々がオープンソースという世界に貢献している理由として、他のオンライン活動の場合と同様に、そうした行為によってオーガズム的な快感を感じさせるホルモン分泌が促進されるためであり、また日常生活における社会的な相互作用を高めるためであるという旨の説明をしていた。講演の残りは、基本的にテクニカル面についてのプレゼンテーションであった。具体的には、実行プログラムからの呼び出しを視覚的に表現するCallgraphというツールを用いたボトルネックの特定法とプログラムの高速化のデモンストレーション、および、Webアプリケーションをオンラインで構築するグラフィカルツールYahoo Pipesのデモンストレーションである。またLerdorf氏は聴衆に向かって「セキュリティに対して過剰に心配する必要はありません」と語りかけ、PHPプログラムに関する問題の大半はバッファのオーバーランに帰するはずで、それを悪用するにはローカルなアクセスが必要だと説明していた。こうしたセキュリティ問題についてより適切な処置が行えるのは、オペレーティングシステムレベルでの話になるということである。
Lerdorf氏に続いて講演したのはAndrei Zmievski氏であり、そこで語られたのは、来るPHP 6.0で予定されているUnicodeのサポートについての報告である。Zmievski氏は講演を始めるに当たって、まずUnicodeとは何かを簡単に解説し、Unicodeとはあらゆる言語で使われている文字を1つの共通化された体系にまとめることを目指した活動であると説明していた。またPHP 6.0ではCommon Locale Data Repositoryもサポートされる予定だそうだが、このシステムの場合、個々の言語ごとに用いられる通貨関連の情報も付加され、また照合や並べ替えに関する方式も指定できるようになっている。また現行のバージョン6.0についてはロケール認識に制限のあることが知られているが、将来的にはより詳細なUnicodeロケールの宣言で置き換えられることになる予定だそうだ。こうした変更に伴い、同一文字列内部で複数のキャラクタセットを利用する、あるいは並べ替えオプションをカスタム化するなどの機能も装備されるはずだとのことである。その他に新規のシステムでサポートされるものとしては、日本語における全角文字と半角文字との間の変換や、ハングル文字からラテン文字への変換などが挙げられている。Zmievski氏が語るところでは、バージョン6.0におけるUnicodeサポートの達成度は現状で60%といったところであり、作業の完了は2007年末になるものと予想されているそうだ。
その他に多数の聴衆を集めていたのは、Jeff Barr氏による「Web Scale Computing」(Webスケールコンピューティング)という、Amazon.comのオンラインサービスの概略を説明したプレゼンテーションである。ここで言うWebスケールサービスとは、いわゆる従量課金型のコンピューティングのことであるが、Barr氏の説明に従えば「ストレージや転送するデータの容量に対して課金するサービスで、非常な低価格で提供されているのが現状」ということになる。こうしたサービスに対して魅力的な料金設定がされている理由だが、そうでもしないと、売り込み先の企業は各自の用途に応じて自前のサーバファームを用意してしまうからである。Barr氏はAmazonから提供されているサービスの概要を説明し終わると、デスクトップからWebサービスを管理するツールとして、同氏の会社で現在用いられているソフトウェアをいくつか紹介し、そのデモンストレーションを行った。
翌火曜日のプログラムは、Brian Aker氏による題名のない講演で始まった。Aker氏はMySQLのアーキテクチャディレクタを務めており、今回は同氏が悩まされ続けている戦略的問題について語ったのであるが、その内容は、Amazon.com、MySpace、Flickrなどの代表的なWeb 2.0サービスで用いられるデータベースのスケーリングにどう対処すべきかというものである。Aker氏を悩ましている問題の中には、データのキャッシング、マルチパーティションでのアプリケーション分割、データベース内部での複数イベントの実行、ルーティング処理といった、データベース運用につきものの問題も含まれているのだが、これらお馴染みの問題は、Web 2.0サイト規模のスケールになるとその深刻度が一段と高くなるということだ。またこれらの他にもこの種のサイトに固有の問題として、サーバファーム用の電源の確保、廃熱の処理、地理的複製の対処といったものが挙げられていた。Aker氏は、古くから知られている問題については様々なソリューションを紹介する一方で、巨大サイトに特有な問題については大部分が未解決な状態であると説明している。
2日間の会期中で行われた講演は、そのほとんどがPHPに関する高度に技術的な解説であった。具体的な講演のトピックを列挙すると、Damien Seguy氏による「PHP Tips and Tricks」(PHP操作のヒント)、Marcus Böerger氏による「Standard PHP Library Updated」(標準PHPライブラリに関する最新情報)、Rick James氏による「Microsoft Tools and Platforms for PHP」(Microsoftの提供するPHP用のツールとプラットフォーム)、Kevin Schroeder氏による「Caffeinated PHP: Using Java to Extend PHP」(PHPをカフェイン漬けにする方法:Javaを用いたPHPの拡張)といったものになる。
ただし、その他のトピックが今回のコンファレンスで取り上げられなかった訳ではない。例えばZak Greant氏による講演「Copyright, Contracts, and Licenses」(コピーライト、契約、ライセンス)の会場は聴衆で溢れていたが、そこで語られた内容は、講演のタイトルに掲げられた各概念の基礎的な解説および、プログラマとしては何を知っておくべきかというものである。同じくPerrick Penet氏も「Open Source in Europe」(ヨーロッパにおけるオープンソース事情)について語っており、Andre Zmievski氏によるプレゼンテーション「VIM for Programmers」(プログラマとVIM)は、機能満載型のIDEがなくてもプログラム開発は行えるという趣旨での講演であった。
いずれの開催日も、その最後はライトニングトークで締めくくられていた。これは自由参加形式による持ち時間5分間の即興講演会である。今回のライトニングトークでは、自分が身につけたPHPのテクニックを紹介する者もいれば、各自が関係する企業、プロジェクト、コンファレンスの宣伝活動をする者もいた。終日プレゼンテーションに明け暮れた1日を締めくくるのに、こうした催し物は効果的なようである。
月曜夜のコンファレンス会場では一般開放イベントとして、Brian Aker氏、Zak Greant氏、David Ascher氏、Perrick Penet氏、Greg Dean氏、そして私という顔ぶれで送るパネルディスカッション「Open Source in Vancouver」(バンクーバにおけるオープンソース事情)が開催された。もっとも、タイトルにあるテーマは内容的に漠然としすぎていたため、私たちはパネラー間の討議を早めに打ち切り、残りの時間を聴衆との質疑応答にすることにした。その結果、タイトルに掲げられていたテーマは頭から無視され、ここでの討論は「オープンソースの世界は停滞しているのか、あるいはますます人気を高めつつあるのか」という内容で始められた。その後早々にパテントに関する問題が話題として浮上し、結局このパネルディスカッションに割り当てられていた2時間という枠の大半は、この問題についての議論に費やされることになったのである。私もプレゼンターの1人として参加した訳だが、パネラーだけでなく様々な聴衆の意見を聞くことにより多くの刺激を受けられるという点において、こうした双方向参加型の討論は長い1日を終えるに当たり相応しいイベントであったと感じている。
ボランティア参加型という運営形態のもたらすメリット
これはあまり表面だって話題になる性質の話ではないが、他のコンファレンスと比して今回の第2回Vancouver PHP Conferenceは、かなり効率的な運営がされていたようである。そうした功績のすべては、ボランティア参加型という運営形態に帰すことができるだろう。今回の運営に携わった人間の中には、2004年の第1回Vancouver PHP Conferenceに参加していた者もおり、そうした人々は自分たちが何をすべきかを予め心得ていたのである。例えば各プレゼンテーションの間には15分間の休憩時間が取られていたが、これはスケジュール通りに物事は進まないという現実を踏まえた上での措置であろうし、この種のイベントではつきものの細かなトラブルに対する主催者側の反応も速やかであり、スタッフ間での情報伝達の徹底などもスムースな進行に貢献していたよう感じられた。
今回のコンファレンスはイベントの規模としては小さく、参加者の多くは現地の人間で占められていたが、この分野で影響力を持つ人々の関心を集めたという点で、その意義は決して無視できるものではない。一見すると、規模が小さいイベントに多くの関心が集まったというのは矛盾しているよう感じられるかもしれないが、メインの主催者の1人であるPeter Gordon氏によると、むしろその逆なのだ。つまり、今回の基調講演を依頼した人たちは、ボランティア参加者で運営される小さなグループ活動という形態に共感したというのである。
「彼らにとって、ボランティア参加で運営されるコンファレンスやユーザグループという形態は、自分たち自身が進めている活動を推進させてくれる存在だと映る訳です」とGordon氏は語る。「そうした人たちは、だからこそ旅費と宿代が賄われるだけでも(バンクーバにまで)やって来てくれるのです。謝礼に類するものを要求してきた人はいません。今回のイベントは、ボランティア参加での運営という形態であったからこそ、その他の形で携わった人たちも積極的により多くの協力をする気になったと言っていいでしょう」
Gordon氏の示したモデルは、決して絵空事ではない。実際、今回のコンファレンスには会場を埋め尽くすほどの参加者が訪れており、同氏が私に語ったところによると、主催者側としては既に来年度の開催を企画し始めているとのことである。
Bruce Byfieldは、コンピュータジャーナリストとして活躍しており、NewsForge、Linux.com、IT Manager’s Journalに定期的に寄稿している。