ある PLoP 2000 参加報告

作成日: 2000/12/05
更新日: 2001/02/05

もりした みんぺい/(株)シーエーシー

目次

1. はじめに

PLoP 2000 [1] に参加してきました。ここでは PLoP の雰囲気を、いくらかでも皆さんにお伝えできればと思います。この稿を読まれた皆さんのうち一人でも、今度は自分が PLoP に参加してみたい、あるいは PLoP で行われている方法を、ご自分の属する組織の中で、プロジェクトの中で、試しに実践してみようかな、と感じていただければ幸いです。

2. PLoP に行ってみたい!

ぷろっぷにいきたしとおもわなくはないけども、ぷろっぷはあまりにとおし

しばらく前までは、私にとって PLoP(Pattern Languages of Programs) [2]とはそういう存在でした。雲の上の人たちが、遠いところで粛々と高度な議論を戦わせている…、パターンに関心はありましたが、私には敷居が高すぎるのでした。ところが、JapanPLoP [3] 入会直後の 6 月中旬のこと、なにやら、昨年に引き続き今年も PLoP に行きますが一緒に行きませんか、というフジノさんからのお誘いのメールが流れています。すでに参加したことがある人とご一緒できればずいぶん心強い、滅多にない機会だ、と、早速上司にお伺いをたててみました。答えは「うん、行っていいよ」。喜び勇んで、稟議書を書き起しました。突然、PLoP がぐっと身近になってきたような気がしました。

ご一緒させてください、と手を挙げたまでは良かったんですが、私の英語力はかなり貧弱です。その状態で参加して、果たして意味があるんだろうか、としばらくするとだんだん弱気になってきて、ボスに弱音を吐いてみました。「ま、玉砕してきてください」と一笑に付され、これでがぜん、気が楽になりました。確かに、いくらなんでも、八つ裂きにして食べられてしまうということはなさそうです。よし、本場の PLoP の雰囲気を、楽しめるだけ楽しんでこよう、という気になってきました。

3. ところで、PLoP ってなんでしたっけ?

ここでちょっぴりおさらいしておきましょう。そもそも PLoP(Pattern Languages of Programs、しばしば PLoP 会議の略) ってなんでしたっけ? ドッポンと落ちること、ってそりゃ plop やー、という冗談はさておき、、、ごめんなさい、もうしません。m(__;)m

で、Hillside Group って? といいますと、

とまあ、おおよそこんなところでしょうか。パターンの歴史の詳細については、参考文献 [4] [5]あたりを参照してみてください。というわけでこの PLoP に、今回参加する機会を得ることができたということなのでした。

3.1 卵からかえるパターンたち

ついでにもう少し、PLoP に投稿されたパターンやパタンランゲージが、どのような段階を経て世に送り出されるかをざっと見てみましょう。

  1. パターン投稿
    パターンの作者が、パターンを投稿します。
  2. シェファーディング
    投稿されたパターンをより良いものにし、PLoP で採択される質にまで高めるために、シェファーディング(Shepherding、羊飼いが羊を導くこと)と呼ばれるプロセスにしたがって、パターンが推敲されます。パターンの作者を羊(つまりは導かれる人)にたとえ、シェファード(Shepherd、羊飼い、つまりは導く人)が、作者に意見を送ります。シェファーディングは、およそ一月ほどの期間行われ、シェファードが PLoP で採択されるべきパターンを推薦し、プログラム委員が査読したものが採択される、となるようです。
  3. ライターズワークショップ
    PLoP での活動の中心です。提出されたパターンを参加者間でレビュー、推敲し、より良いものにするために議論します。 模様の詳細は 「ライターズワークショップ」の項にゆずりますのでそちらを参照してください。
  4. さらなる更新
    ライターズワークショップで得られたフィードバックをもとに、作者はパターンを修正します。
  5. PLoPD(Pattern Languages of Program Design)シリーズへの収録
    こうして完成度が高められ、厳選されたパターンが PLoPD シリーズに収録されます。現在 PLoPD は Vol.4 まで刊行されています。Vol.1 〜 Vol.2 までは毎年、PLoP の成果を反映したものが出版されていましたが、Vol.3 以降は、EuroPLoP などの他の姉妹 PLoP の成果も反映し、刊行間隔は 2 年おきになっています。なお来る Vol.5 は、'99 〜 '01 までの 3 年間の成果を反映させ、2002 年の早い時期に刊行する予定だ、と 「閉会セレモニー」 で Vlissides は述べていました。

PLoP に提出されたパターンは、およそこのような過程を経て世に出るようです。

4. Allerton House への道

さて、PLoP 2000 の全体のスケジュールはこんな感じだったようです。

PLoP 2000 概略スケジュール
会議期間: 2000 年 8 月 13 日(日) 〜 8 月 16 日(水)
パターン投稿締め切り 5 月 08 日(月)
シェファーディング開始 5 月 15 日(月)
シェファードの推薦締め切り 6 月 26 日(月)
採用通知 7 月 07 日(金)
最終原稿締め切り 7 月 21 日(金)
会議開始 8 月 13 日(日)

日本からは、藤野晃延さん金澤典子さん長谷川洋一さん友野晶夫さん、筆者の 5 人が参加しました。みなオブザーバとしての参加で、7 月の中ごろに各自参加登録を済ませました。航空券、(PLoP の後で立ち寄った)シカゴの宿の手配、レンタカーの手配と運転などは、ぜんぶフジノさんにお任せで、申し訳ないほどラクチンでした。/(^_^;;

シカゴの空港から国内便に乗り換えて、ウィラード空港を目指したのですが、空港でちょっとした出来事がありました。フジノさんが知人を見つけ `Hi, John.' とお話をされていて、どうも会話が弾んでいるようです。なるほど前回の PLoP の時のお知り合いかしら、と思っていました。ウィラード空港で荷物の受け取りを待っている時にもお話をされていたのですが、(ね、ね、彼、Vlissides さんですって)と金澤さんが耳打ちしてくれて、いきなりびっくりです。ミーハーな私は、早速彼の `Pattern Hatching' [18] を手に、サインをもらおうとお話の輪に加わらせて頂きました。「その日本語版にもサインしてあげますよ」と言われて、もう目的のなかばは達成したような気分になってしまいました。/(^_^;; このときは、携帯電話のチャネル多重化方式のことが話題になっていて、君が使っているのは CDMA, それとも TDMA? などと聞かれたりしました。

5. 会議期間中スケジュール

ここでざっと、期間中のスケジュールをご紹介しておきましょう。

PLoP 2000 会議期間中スケジュール
午前 午後
1日目(8/13)
2日目(8/14)
3日目(8/15)
4日目(8/16)

6. 参加者

期間中に参加者リストが配られたのですが、それによると今年の参加者数は 50 名で、居住国別の内訳は以下の通りでした。

PLoP 2000 居住国別参加者数内訳
居住国 参加者数
アメリカ 29
日本 5
ドイツ 3
カナダ 2
フランス 2
イギリス 2
バルバドス 1
スペイン 1
フィンランド 1
ベルギー 1
スロバキア 1
韓国 1
オランダ 1

なおこの中には、ボランティアとして参加したフランスからのスタッフ 2 名、 「ゲーム」のコーディネータをほぼ毎回務めているという、イギリスからの George Platts も含まれています。

7. ライターズワークショップグループ構成

ライターズワークショップは、5 つのグループに分かれて実施されました。前回 PLoP '99、前々回 PLoP '98 の proceedings [6] [7] を見た限りでは、7 つずつのグループがありましたので、今回は減少傾向だったようです。

2000/11/21 に、PLoP 2000 のライターズワークショップのグループ構成、ならびにワークショップを経て改善されたパターンの内容が公開されました [8]。ワークショップ前のパターンが公開されないのは、これがあくまで「磨き上げられる前」のペーパーであり、ライターズワークショップの結果を受けて、更新したものを公開した方が良い、との判断によるもののようです。詳細は参考文献 [8]にゆずりますが、おおまかに言ってしまうと、以下のようなグループ構成でした。

ライターズワークショップのグループ構成
# グループ名
(出典・邦題)
リーダー グループの傾向 日本からの出席者
1 Office Connections
( [19]・82. 事務室のつながり)
Kyle Brown アナリシスパターン的なものが多い 金澤さん
2 Connection to the Earth
( [19]・168. 大地へのなじみ)
Steve Berkzuk 開発プロセスに関するものが多い 長谷川さん
3 Network of Learning
( [19]・18. 学習のネットワーク)
Bob Hanmer リアルタイムシステムやネットワークに関するものが多い フジノさん
4 The Unselfconscious Process
( [20]・4章 無自覚のプロセス)
John Vlissides パラレルプログラミングに関するものが多い 森下
5 Quiet Backs
( [19]・59. 静かな奥)
Ralph Johnson 一つとして同じ傾向のものはない?(^_^;;) 友野さん

グループ名の由来は、 [19] [20] にあるのではないか、ということを皆さんから教わりました。 [20] では、第 4 章のタイトルは「無自覚のプロセス」となっているそうです(筆者は邦訳を読んでいません)。しかし、この self は個としての self ではなく、process の当事者たる community とその literacy を指しており、「無我のプロセス」の方が、それでもニュアンスが異なるが、まだ良いのでは、というご意見をいただいたことも記しておきたいと思います。

グループの傾向、はあくまでも筆者の感じた傾向ですが、個々のグループにそれぞれ、ちょっと他とは毛色が違いそうなペーパーがあったりもしたようです。

なお、今回プログラム議長を務めた Eugene Wallingford が、PLoP 2000 終了後、「幅広い分野からの論文を集めたグループ 5 においてさえ、ライターズワークショップはうまく行った」というような一節を、参加者あてのメールに書いていますので、最後の 5 つ目のグループが混成グループだったというのはおそらく確実なのだろうと思います。

7.1 登録受付と参加グループ決定

初日の夕刻に現地についた私達は、さっそく参加受付をしたわけですが、意外にも(^_^?)、「どのグループに参加しますか?」と、サルサダンスが大好き(?)というフランス人青年スタッフに尋ねられました。スケジュール上は、てっきり翌日の『ライターズワークショップ編成(Writers Workshop Organization)』までに決めておけば良いのかと思っていたので、「えと、今決めないとどうなるんですか?」と聞いてみました。「そうしてもいいですが、たぶん困ったことになります」と冗談交じりに脅かされました。ということで、さっそく井戸端会議開始です。

じつは proceedings が参加者あてに公開されたのが 8/9 と、ワークショップも間近な時期だったことと、出発直前まで忙殺されていたので、パターンの名前と概要に目を通しておくのが精一杯でした。

せっかく 5 人参加しているから、皆それぞれ別々のグループに参加しよう、というフジノさんの提案にはみな即刻賛成です。私はグループ 3 が第一希望、4 が第二希望、けれどグループ 5 の `Leasing Pattern' という即興的なネットワークを実現するためのパターンにも惹かれるものを感じていました。結局、グループ 3 は、フジノさんの「ボクはこれに出たいな」の一言で決まり、グループ 1 に金澤さん、2 に長谷川さん、4 に森下が出席ということで落ち着きました。友野さんはと言いますと、先に『オレゴン大学の実験』の今の様子を視察し、夜遅くに Allerton House 入りの予定だったので、この時点ではいらしていません。否応なく、グループ 5 は友野さんに決まりです。

以上きわめて民主的なプロセス(^_^?)で決定した希望グループを告げると、以下のものを手渡されました。

カンファレンスでの配布物
配布物 説明
論文集(バインダー) シェファーディングが済んで、あとはレビューを待つばかりのパターン達が、グループごとに分かれたバインダーに収められています。出席者はそれぞれ、自分が出席するグループのバインダーを受け取ります。これには参考として、PLoP '99 に提出された Neil Harrison による「シェファーディングのランゲージ」 [9]、そして PLoPD4 [10] に収録された、Cope こと James Coplien, Bobby Woolf による `A Pattern Language for Writers' Workshop' [11] も収められていました。
論文集(CD-ROM) PLoP 2000 に採択されたすべてのペーパーが入っています。ワークショップ別、著者名順、パターン名順のインデックスがついています。
PLoP 2000 News 期間中のスケジュール、ライターズワークショップのグループ編成、Allerton House 内の簡単な案内などが載った official newsletter Vol.7 Number 1 が入っていました。
T-シャツ PLoP 2000 のロゴ入り T-シャツです。各種サイズはあったようです。期間中に着ている人がいたかどうかは覚えていません。/(^_^;; ですが、'99 年物と思われる T-シャツを着ていた御仁はいらしたような気がします。
ボールペン シンプルなボールペン。
バッグ これら一切合財が入ったカーキ色の肩掛けバッグです。紺色の字で大きく、`PLoP 2000 7th Conference on the Pattern Languages of Programs Allerton Park, IL' と書かれています。
名札 衣服にとめられるようになっている名札です。

なお、いったん参加するグループを決めたら、そのグループのライターズワークショップに継続的に出席しつづけることが強く望まれます。つまり(この時間のライターズワークショップは、このグループの方が興味深いから、そっちに出ちゃおう)なんてことはできないということです。これは、 [11] にも書かれているように、グループ内の信頼関係を高めるためであるようです。

また期間中、official newsletter は何度か発行され、これがまた、他の参加者の名前を覚えるのに役立ったりします。

8. ピッツァレセプション

初日の夜は、参加登録を終えたところで、ひたすら分厚いピザとビールその他の飲み物で、ほっと一息です。

9. 初心者オリエンテーション

初日の晩は Newcomer Orientation として、PLoP 初参加の人々を中心にオリエンテーションと質疑応答が行われていました。質疑応答の途中からだったと思うのですが、初 PLoP な 3 人が参加しました。...ところが、旅の疲れやらビールの効きめやらで、眠くなってしまってどうにも聴いていられません。心なしか、舟を漕いでいる音まで聞こえてきます。ということで、あまり大したことは話していない、と思い込む事にして中座しました。/(^_^;;

10. 開会セレモニー

二日目の朝からが、いよいよ本番、というところです。オープニングセレモニーでは全員が図書室に集合し、 Braian Foote らから、ライターズワークショップはこんな具合に進んでいきます、というようなデモンストレーションが行われました。

11. The Unselfconscious Process な人々

2 日目を迎えてから、グループメンバーとの正式な(^_^;)顔合わせとなったわけですが、ここで、私が参加したグループのメンバーを紹介しましょう。おそらく、もっとも参加人数の多いグループだったのではないかと思います。部屋も、Allerton House の中でもっとも大きな部屋「図書室」を割り当てられました。

John Vlissides
説明するまでもなく(^_^;)、『デザインパターン』 [12] を書いた GoF(Gang of Four、4人組)の一人で、 [18] の著者です。 このグループのリーダー役を務めてくれました。今回彼は、`M EMENTO-COMMAND : An Object Behavioral Compound Pattern' という MEMENTO と COMMAND を組み合わせたパターンを発表しました。
Jorge Ortega-Arjona
このグループでの最初の発表者でした。ファーストネームで「ホルヘ」と呼ばれていました。彼の発表は `The Communicating Sequential Elements Pattern : A Domain Parallelism Architectural Pattern for Parallel Programming' というもので、パラレルアプリケーションの一形態についてのアーキテクチャパターンです。登録受付をしたときに、スタッフであるかのように振舞っていたので、私は最初スタッフだと勘違いしていました。(^_^;) 出身はメキシコなのだそうですが、日本語を少し習ったこともあるのだとかで、いくつか挨拶を日本語でこなしていました。論文発表で日本に来たこともあるみたいです。陽気で茶目っ気のある人です。
Thomas Judkins
2 番目の発表者です。`Synthesizer' という(音楽の)デジタルシンセサイザーをつくるためのパタンランゲージを発表していました。発表の終わった日の晩に、「ユニークで面白いと思う。全体に、構造とプロセスを分離して、ここをこうするもっと良くなるんじゃないかと思いますよ」みたいなことを伝えた(つもりになった)ところ、「まだ学部生なんで...」と、ちょっと戸惑われてしまい、逆に私がびっくりしてしまいました(結局、このグループではただ一人の学部生(Washington 大学)さんでした)。でも PLoP で発表するなんてエラい! と私は感心してしまいました。「意見ありがとう。良かったら『シンセサイザー』で作った曲聴いてみて」、と CD-R をプレゼントしてくれました。また、「プールしない?」とビリヤードに誘われ、Allerton House の地下でエイトボールをプレイするという思いがけない展開になったりしました。
James C. Hu
3 番目に `Patterns in Flexible Server Application Frameworks' を発表していました。彼は、Douglas C. Schmidt のもとで、JAWS という高速 Web システムのためのフレームワークを開発していました。このペーパーは主にその経験をもとに書かれたようです。本稿執筆時点では、Washington 大学の博士候補生であると同時に、Entera, Inc. という会社でエンジニアとしてご活躍中のようです。なお彼は、 JAWS フレームワークについて解説した参考文献 [13] なども執筆しています。
Christopher D. Gill
Tom さんの `Synthesizer' と、James さんの `Patterns in Flexible Server Application Frameworks' の共著者で、`Chris' と呼ばれていました。彼は最終回のモデレータを務めたのですが、自身熱い議論を展開し、「おーい、君モデレータじゃーん」と突っ込みを入れられていました。...ってそんな紹介でいいんだろうか。/(^_^;; 彼も Washington 大学の博士候補生で、その分散オブジェクトコンピューティングセンターのフルタイムスタッフです。OO Software Development Laboratory というコースを担当されたりもしているようです。とても友好的な人でした。
Dwight Deugo
4 番目の `Security Policy: A Design Pattern for Mobile Java Code' の共著者、と当初の proceedings にはあったのですが、実際のペーパーには共著者としての彼の名前はなく、コメントを寄せていたということのようです。ご自身はオブザーバとしての参加のつもりだったようです。内容は、Java 2 のセキュリティモデルを題材としたものでした。...ところがぎっちょん、このパターンは発表予定者が PLoP に来られなかったため、レビューされませんでした(かわりに Vlissides が `MEMENTO-COMMAND' パターンを発表しました)。カナダの Carleton 大学で助教授をなさっているようです。そして、最後の閉会セレモニーで紹介されるまで気がつかなかったのですが、彼は Java Report 誌 の編集者です。また、次回の PLoP のプログラム委員長を務めると紹介されていました。ワークショップ中は、常に抑えた口調でさまざまな意見をおっしゃっていました。
Julio Garcia-Martin
5 番目の `Reductor: A Pattern to Solve Problems with Decrease-And-Conquer Algorithms' の発表者です。ファーストネームで「フリオ」と呼ばれていました。スペインの Madrid の大学で教職をされているようです。ワークショップ中はほとんど一言も発言しなかったので、あまり発言できなかった私としては、おかげさまで(?)そこはかとない安心感がありました。/(^_^;;
Berna L. Massingill
最後の発表となった `Patterns for Finding Concurrency for Parallel Application Programs' の発表者です。趣味(?)は talking とおっしゃるだけあって、まあ話すのが滑らか、というか速い速い。私にはほとんど音楽のように聞こえてしまいましたです。/(^_^;; それでも、私がつたない英語で意見を言うと熱心に聞きいってくれます。この最後のパタンランゲージは、 A Pattern Language for Parallel Application Programming の一部です。この最後の発表はレビュワー間で議論が白熱しました。白熱のきっかけは、Dwight Deugo さんの「個々のパターンが選択的であってもよいのか?」という問いかけでした。ワークショップ終了後も、数人が残って議論を続けていたのですが、「おーい、最後のゲーム、もう始めてるよー」と声がかかっても、「私にはゲームなんかよりこっちの方が余程大事よ」とおっしゃったのが印象的でした。って作者にしてみれば当たり前かもしれませんが。/(^_^;; 現在は、テキサスの Trinity 大学の助教授としてご活躍のようですが、いぜんは共著者の Beverly さんと同様、Florida 大学にお勤めだったようです。
Beverly A. Sanders
Berna さんと共著で最後のパターンを書かれた方で、Florida 大学で助教授としてご活躍中のようです。これまた趣味(?)がピアノとおっしゃるだけあって(?)、Berna さん同様、私にはおっしゃっていることが音楽のように聞こえてしまいました。/(^_^;; 私はあまりお話する機会がなかったのですが、金澤さんと同室だったそうで、とても親切な方だったようです。
Cameron Smith
オブザーバーとして参加されていた方です。ですが、他のライターの方々以上に熱心に、いろいろな意見を出されていました。現在は LEXIS-NEXIS というところでエンジニアとしてご活躍中のようです。彼も非常に友好的な人で、 「ゲーム」 のときも 「贈り物の交換」 のときも、終始にこやかでした。

12. ライターズワークショップ

ここでは、PLoP の中心的な活動であるライターズワークショップの進行の様子をお知らせします。私の参加していたグループでは、Vlissides がグループリーダーを務めましたが、彼はどういう順序でパターンを取り上げるか(結局記載の順番の通り)、開催場所は図書室のままで OK かどうか(中には屋外で議論を行ったグループもあったようですが、Vlissides のグループは図書室の中でのみ議論しました)、といったことに多数決を取ったりしつつ断を下し、後は通常の参加者同様、レビューワ、作者の立場で発言していました。

8 人用程度の大きさのテーブルの周りに、皆座ってワークショップが進行します。基本的に、パターンを書いてきた人たち、つまり作者達は、テーブルの周りの一番中心の輪に座り、「作者たちの輪」を形成します。これは、作者たち同士の一種の安心感を保つためです。 [11] の `Authors' Circle' がこれに対応しているようです。

非作者は、外側の輪に座ります。Cameron SmithDwight Deugo、それに私はもとよりオブザーバとしての参加ですので、外側に座っていましたが、 Christopher D. Gill(モデレータのとき以外)も基本的には外側の輪に座っていました。

その回のライターズワークショップのモデレータを務めるのは、基本的に他の作者で、持ち回りという形で事前に決めていたようです。

  1. パターンの作者が、ペーパーに書かれている概要を一言(2,3 センテンス)述べます。この後しばらくは、作者は全く発言せず、モデレータに「離れて座る?」と聞かれて、場合によっては「作者の輪」からも少し離れ、レビューワ間の議論の邪魔にならないようにします。そして他の出席者の意見に耳を傾け、ノートを取ります。このあたりの事情については、 [11] の `Author Reads Selection', `Fly on the Wall' のあたりに書かれています。
  2. 任意の 1, 2 名が、パターンの内容要約を各自の言葉で述べます。これは、事前にちゃんとパターンを読んできている事を作者に理解してもらうためでもあり、また、レビューワがちゃんと読んでくる事をある程度強制するためでもあるのでしょう。 [11] の `Volunteer Summarizes the Work' に対応しています。
  3. 提出されたパターンの良い点について述べます。ライターズワークショップは、本質的に批評のプロセスですが、まずは「作品」の良いところをきちんと明示し、作者にフィードバックを受け入れやすくする雰囲気を作り出しています。 [11] の `Positive Feedback First' に対応しています。
  4. 改善した方がよい部分について議論します。あくまでも、「改善した方が良い点」であり「こうすればさらに良くなる」という点をいいます。欠点をあげつらうのとは本質的に異なることに注意してください。 [11] の `Suggestions for Improvement' に対応しています。
  5. 作者が、ワークショップ中で不明だった部分について質問します。ここでようやく作者は発言できますが、あくまで議論の中でよく理解できなかった部分を訊ねるのみです。「いや、ここはそういう意味ではなくて、」という弁明はせず、そういう個所があった場合には、誤解されないように記述の方を書き直す、ということをするようです。これは、パターンのユーザーは、通常作者からの説明、解説を受けることはできず、書かれていることにのみ頼らなければならない、ということから来ているのでしょう。 [11] の `Author Asks for Clarification' に対応しています。
  6. 作者以外の全員が立ち上がり、作者に対し、パターン提出に感謝する意味で拍手を送ります。作者に positive な印象を持ってもらうと同時に、感謝の意をみなで表します。 [11] `Thank the Author' に対応しているといえるでしょう。

13. 各種ゲーム

ところどころで行われたゲームについて、紹介しましょう。ゲームは PLoP の重要な活動の一つと見なされています。ライターズワークショップで疲れた頭をリフレッシュさせ、気分を切り替えて次のワークショップに臨むためということが効用の一つに挙げられるでしょう。さらにもっと大切なことは、ゲームを通じて、初めて参加する人からベテランまでが、楽しむ時間を共有し、知り合い、短い期間中であってもそのつながりと信頼関係を深められるということでしょう。

ゲームをコーディネートしていたのは、ほとんどの PLoP、EuroPLoP に「水平(または側面)思考コーディネータ(Lateral Thinking Coordinator)」--つまり別の見方や考え方を導入して、皆を刺激して凝り固まらないようにする役目、とでもいえばよいでしょうか--として参加しているという、イギリス在住の George Platts です。Cope によれば、彼はこんな意味のことを言っています。「PLoP は、本当は『パターン』の会議なのではなく、『人々』の関係を築き上げるための会議なのだ、とつくづく思う。」 [13]

ゲームは、屋内で行われるものも屋外の芝生の上で行われるものもあります。屋内でのゲームは、Allerton House 内でもっとも大きな部屋である「図書室」で行われます。なお、以下のゲームの名前は私が勝手にそう呼んでいるだけで、本当にそういう名前かどうかは分かりません。/(^_^;; この他に、初日に屋外で行われたらしい、おおきなボールを使ったゲームなどもあったようです。最終回のゲームなど、私が参加できなかったゲームもありますが、これについては長谷川さんによる臨場感あふれる PLoP 2000 レポート、『PLoP の風』 [17]で紹介されています。:-)

またこの他に、 「閉会セレモニー」で行われた、 「即興の共同体」や、 「毛糸のネットワーク」といったゲームもありますが、これらは 「閉会セレモニー」の項で紹介します。

13.1 ものまねゲーム

屋内で行ったゲームです。

  1. 2 人ペアになってペアが前列後列に分かれ、ぐるりと輪になります。前列の人は椅子に座り、後列の人は前列の人々を助けるアシスタントの役をします。
  2. 前列の最初の人が、「自分の名前」を言い、そして「自分の趣味、あるいは何かのモノマネ」を身振り手振りを交えて宣言します。
  3. (時計回りでしたが)隣の人が、前の人の「名前」「(趣味あるいはモノマネの)身振り手振り」を再現します。そして、前の人同様、「自分の名前」「身振り手振りつきのモノマネ」を言います。
  4. こうして、後の方になるに従って、覚えていないといけない人の名前とモノマネが増えていきます。詰まったときには、詰まったところの後列の人が(名前はこれこれダヨ、とか名札を示してささやいたりして)手助けをします。
  5. 前列全員の人の名前とモノマネが完了すると一区切りです。後列の人が一人指名されて、前列全員分の名前と「モノマネ」を言ってみせ、拍手が湧き起こりました。

回を改めて、だったと思うのですが、前列後列入れ替わって、同様に行いました。このとき皆が何をしたかは、`The Official Newsletter of PLoP 2000: Getting to Know you' として配られ、名前と顔を一致させるのに非常に役に立ちました。

13.2 バーチャルフリスビー(Zip-Zap-Bop, ハシ-ヒシ-ホシ)

屋外で行ったゲームです。しばらく本当のフリスビーで遊んだ後に行いました。

  1. ぐるりと輪になり、一人置きにしゃがみます。しゃがんだグループと立っているグループに分かれることになります。立っているグループと座っているグループとでは、掛け声の種類が異なります。立っているグループでは、Zip-Zap-Bop を使い、座っているグループでは、ヒシ-ハシ-ホシ、を使います。
  2. 最初の掛け声は、立っているグループでは `Zip!'、座っているグループでは `ハシ!'、です。これはフリスビーを隣の人に手渡す仕草をするときにかける掛け声です。
  3. 二つ目は、立っているグループでは `Zap!'、座っているグループでは `ヒシ!'です。これはフリスビーの受け取りを拒否する仕草をするときにかける掛け声です。
  4. 三つ目は、立っているグループでは `Bop!'、座っているグループでは `ホシ!'です。これはフリスビーを隣の人に限らず、目の合った任意の人に投げるときにかける掛け声です。
  5. こうして、座ったグループと立ったグループとで、同時にバーチャルフリスビーを投げ合います。仕草や掛け声を間違えたら、座っている人は立ち、立っている人は座る、という具合に参加グループが即座に入れ替わって、そのまま継続します。

JPLoP のワークショップに参加したときにも、取り入れられていたゲームでしたが、乗ってくるとついつい真剣になったり、間違えると笑って突っ込みを入れられたり、やはり楽しいゲームです。

13.3 キャッチボール

屋外で行ったゲームです。

  1. 最初にぐるりと輪になり、みな胸の前で腕を組みます。
  2. ボールを持った人(最初は George)が、誰かの名前を呼んで、その人にボールを投げ渡します。
  3. 投げ渡された人は、当然胸の前で腕を組みっぱなし、というわけにはいかないので、腕をほどいて受け取り、他にまだ腕を組んだままの人を選んで名前を呼び、ボールを投げ渡します。
  4. こうして全員の「順番」が決まります。
  5. みな四方に適当に散り、この「順番」に従って、相手の名前を呼びながらキャッチボールをします。
  6. George が笛を吹くと、「順番」が逆方向になります。
  7. そのうち、全員適当に逃げ回るというか(^_^;)移動しまわるようになります。
  8. さらに、ボールの数がだんだん増えていきます。

体を動かしまわって、大声で名前を呼びあう声が響き渡って、楽しいですし運動不足解消にもなってしまうようなゲームでした。終わった後の心地よい疲労感が良いです。

13.4 世界地図

屋外で行ったゲームです。

  1. 芝生の上を世界地図に見立て、「今住んでいる国のところに立って」と言われ、皆わらわらと移動します。
  2. George が端から順番に、それがどこの国かをたずねます。
  3. 次に「生まれた国」に、またわらわらと移動します。
  4. 最後に「住んでみたい国」に、皆わらわらと移動します。

世界中から人が集まってくるカンファレンスならでは、のゲームですね。「住んでみたい国」のときには、日本にも何人か集まってくれて、ちょっと嬉しい気持ちになりました。たとえばフィンランド Technical Research Center に勤務しているという Juha さんなどもその一人でした。彼は、`Implementing Application Frameworks' の 第23章 `A JavaBeans Framework for Cryptographic Protocols' の執筆者でもあるようです。もし PLoP のようなカンファレンスを日本で行うことになったら、ぜひ寄稿するとおっしゃってくださったり、「僕も同じメーカーのデジタルカメラを使っているよ」と声をかけてくれたり、日本贔屓な方なのかも、と嬉しく思いました。

13.5 多言語オーケストラ

  1. 参加者が(おそらくは人数調整のために前列と後列とに分かれ)、ぐるりと輪になります。
  2. 後ろの列に立っている人たちが、順番に、各自の母国語で任意の擬音語あるいは擬態語を言います。たとえば 英語でカチカチいう音 `click' とか、日本語で水滴が落ちる「ぽとぽと」という音というようにです。これが各自の「音」、になります。
  3. 一人が指揮者として、各自を指差しながら指揮を取り、合奏(合唱?)し、即興の音楽を奏でます。最初は George が指揮者をやってみせてくれました。
  4. 前後を入れ替えて、また同様に行います。指揮者も、やってみたい人が入れ替わって、どんな音楽を作り出せるかを楽しみます。Andreas Rueping -- 彼はドイツからの参加で、EuroPLoP の議長を務めたこともり、EuroPLoP 2001 の議長もまた務めるようです -- が最初に挑戦し、うーん、こりゃなかなか難しい、といっていました。次に Vlissides が挑戦し、見事な指揮者ぶりを見せて、喝采を浴びていました。

これもまた、世界中から人が集まってくるカンファレンスならでは、のゲームですね。誰もが参加できるジャムセッション、という感じがまた良かったです。

13.6 吸血鬼

これも屋内で行ったゲームです。George が、古色蒼然とした図書室の中を見渡しながら「ここには、幽霊が住み着いています。ドラキュラもいるんです」などと舞台設定を言います。

  1. 一人が吸血鬼役になります。
  2. 全員が目をつむって、部屋の中をそろそろと歩きまわります(危険防止のために、何人かのボランティアが出て、部屋の隅で激突しないように状況を見ています)。
  3. 吸血鬼は、誰かを捕まえると、首筋に噛み付くそぶりをしながら、`Ouch!' などと叫びます。噛まれちゃった人は吸血鬼の仲間入りです。
  4. 吸血鬼同士が噛み付き合うと、人間に戻ります。

目をつむって歩き、あちこちで `Ouch!' という声が上がり、自分も噛み付いたり噛みつかれたりで、なかなかドキドキします。あ、この声は○○さんだぁ、とか思ったりしながら楽しんでいました。

14. リーディングタイム

またの名が「うたたねタイム」です。「うたたねタイムもまた、PLoP の重要な伝統である」みたいなことが書かれていたりしましたが、前もって次に取り上げられるパターンを読んでおかないといけないので、私自身はこの時間にのんきにうたたねしている余裕はありませんでした。時間は大体 30 分程度で、試しにというかやむなくというか、時間内に読んでみるのにチャレンジしてみましたが、(内容や長さにもよりますが)ぜんぜん時間が足りん、というのが実感でした。ということで、前日の夜に一通り読んでおく、というように途中で方針を変更しました。それでも読み応えはタップリですが。/(^_^;;

15. 総会:パターンコミュニティの前進

二日目の晩には、全員参加の総会が開かれ、パターンコミュニティをさらに前進させるには、どうしていったらよいのかが議論されました。 `C3PO: Outcome' という、パターンに関するメーリングリストでの議論の集計らしきものを渡されました。この中から意見の多かった、

といったグループに、その場で一斉に「この指止まれ」方式で分かれて、ワーキンググループを形成し、各々別室に移ったりして議論しあうというものでした。

2000/12/04 の時点では、「パターンの学術雑誌」「パターンを教える」のワーキンググループの成果が、PLoP 2000 の Web ページ [1] から辿ることができるようになっています。

余談ですが、Cope こと James Coplien に初めてお会いしたのは、この会が始まる前のことではなかったかと思います。フジノさんに紹介され、ようやっとのこと「あなたの `Advanced C++ Programming styles and idioms' を読みました」と伝えました。「日本語版と英語版とどっちを読んだの?」と聞かれ「日本語版(『C++プログラミングの筋と定石』)です」と答えると「いやあ、それは良かった。日本語版の訳者の方々は熱心でねぇ。原著のおかしいところをいろいろ質問してくれたんだ。だから日本語版の方がバグが少ないんだよ」と快活な笑顔をみせてくださいました。

16. シェファーディングワークショップ

効果的にシェファーディングを行うには、という内容でワークショップが行われました。私は リーディングタイムが足りないのを補いたかったのと、まだシェファードには遠いと思っていたので出席しませんでした。あとで出席された友野さんに伺ったところ、基本的に KoalaPLoP で行われたものと同様だったそうです。KoalaPLoP には、日本からはフジノさんが参加されましたが、これを参考に JPLoP ワークショップでシェファードを務める人たちの間で、シェファーディングの勉強会を開催したことがあるのだそうです。PLoP 2000 での内容はまったく同じだったので、友野さんには物足りなかったようです。ですが、私自身もいつかは参加してみたいワークショップです。

17. 初心者向けセッション:次は何? あなたのパターンはどうなる?

Kyle Brown が、プレゼンテーションで、「なぜパターンを公開するか」「どこに公開したらよいのか」といった話を取り上げていました。これも [1] からプレゼンテーション資料をダウンロードできますので、詳細はそちらを参照してください。

なお彼は、話し方も明快ですし、いろいろパターンも発表しているナイスガイです。「パターンを書いて有名になろう! 富と名声を手にしよう!」と明快に語っていました。/(^_^;; 単に世に貢献したいだけという人もいるでしょうし、パターンを書く目的がそれだけってことはないんではないか、と苦笑いさせられましたが、これは傍らにいた Vlissides の方を見やってのジョークだったようです。

18. 閉会セレモニー

閉会セレモニーは、 「即興の共同体」ゲームで最終的に 3 人トリオになり、床に座る人、その後ろの椅子に座る人、そのまた後ろで立つ人というように分かれて、ぐるりと輪をつくるところから始まりました。

プログラム議長を務めた Eugene Wallingford が、閉会の挨拶を述べました。また全員で、今回の PLoP 全体を通しての運営の改善点や、近年質量ともに増えてきたパタンランゲージを効果的にレビューするにはどうしたらよいか、などについて話し合いました。PLoPD5 は、'99 〜 '01 までの 3 年間の成果を反映させ、2002 年の早い時期に刊行する予定だ、という Vlissides の言及も、ここでなされていました。

ところどころ、議論の切れ目で、George が笛を吹きます。そうすると、トリオになった 3 人は、位置を交代して、気分を新たにします。

最後は 「毛糸のネットワーク」のゲームをし、そして今年の 「シェファーディング賞」の発表と続いたのでした。

18.1 即興の共同体

George の発する、いろいろな共通点に基づいて、グループになってはまた別れ、を繰り返しました。「PLoP に参加した回数」「利き手」「子供の数」「今履いている靴の種類」などです。「だれとでもいいから 7 人になってー」「だれとでもいいから 3 人になってー」というのもありました。

うわぁ、たくさんお子さんいらっしゃるんだなぁ、とか、PLoP に毎回参加しているのはあの人たちか、とか、おーっとこんなところに共通点が、などと思ったり、「早く早く、こっちに入って」と言葉を交し合ったりしました。それまでにあまり話をしていない人とも、共通点を通じてまた親近感が深まる気がしました。

「だれとでもいいから 3 人になって〜」のこの 3 人がトリオになって、最後の 「閉会セレモニー」での議論をしたのでした。

18.2 毛糸のネットワーク

これも、 「閉会セレモニー」 で行われたゲームです。

  1. 大きく広げたパラシュートの端に、みなでぐるりと輪になって立ちます。
  2. 毛糸の玉を、毛糸の端を持ったまま、任意の人の名を呼んで投げ渡します。
  3. 受け取った人は毛糸をつかんで、また次の任意の人の名前を呼んで、毛糸の玉を投げ渡します。
  4. 数個の毛糸の玉を、こうして同時に交換し合い、毛糸の玉が小さく、なくなってしまうまで続けます。
  5. こうしてできた「毛糸のネットワーク」をパラシュートの上にそっと降ろします。こうしてみると「毛糸のネットワーク」は、PLoP に参加した人たちの間にできたつながりを象徴している、と説明が入ります。:-)
  6. と、一同ジーンとしたところで、パラシュートを持ち上げ、みなで一斉にあおります。「毛糸のネットワーク」はぽんぽん弾んで、やがてカラフルな固まり、いえいえ冠へと姿を変えます。こうしてできた冠は、 「シェファーディング賞」 が発表されると、その頭上に輝くのでした。

18.3 シェファーディング賞

シェファーディングの質が、PLoP に提出されるパターンの質に大きな影響を与えることからだと思うのですが、今年から [8] にちなんでもっとも優れたシェファーディングを行ったと認められたシェファードに、「シェファーディング賞(Shepherding Award)」が贈られることになったようです。Rossana Andrade が発表した `A Pattern Language for Mobility Management' をシェファーディングした Todd Coram がこの賞を受けました。そして Todd の頭上には 「毛糸のネットワーク」でできた、カラフルな冠が輝いたのでした。:-)

19. 落ち穂ひろい

その他のエピソードについて、触れておきます。

19.1 食事

朝・昼・晩の食事は、Allerton House 内の食堂で取ります。簡易ビュッフェといった趣ですが、食べ物を受け取ってから、6 人くらい座れるテーブルに、各自思い思いに座ります。このときがまた、他の参加者といろいろお話ができるチャンスです。最初の朝食で、ゲームのコーディネータをしてくれた George Platts と知り合いになりました。韓国からきていた SeungIl Lee (私達 JPLoP のメンバーは、「しげるさん」と覚えたりしていました)とお話をしていると、どなたからだったかは失念したのですが、「なんで君たちは英語で話をしとるのかね」と聞かれたりしました。スロバキアからいらしていた Lubor Sesera さんから、かの国のソフトウェア事情をうかがったりもしました。

19.2 贈り物

これも、PLoP の伝統になっているようです。自分の出身地の、ちょっとした、かさばらない、安価なものを知り合った人々と交換しあう、というものです。絵はがきを持ってきている方が多かったですが、子供用のオモチャやロゴの入ったボールペンなど、皆さん思い思いのものを持ってこられていました。私は実は、これを何にしようか結構頭を悩ませて、そうだ! 紙風船にしよう、などと思っていたのですが、出発直前まで仕事その他でドタバタしてしまい、結局日本を発つ直前に売店で絵はがきを数種類買っていきました。その中では、葛飾北斎の絵を刷ったものが人気がありました。同じグループの人たちはもとより、 「閉会セレモニー」終了後に、お話をした人たちとプレゼントを交換し、良い思い出になりました。

19.3 がっしゅ!

以前に、フジノさんの KoalaPLoP の参加報告プレゼンテーションを聴講したときに、 「ライターズワークショップ」 の最中に、誰かが意見を言うと、他のレビュワーが「がっしゅ!」と叫ぶことがあり、これは「その通り!」というような意味なのだ、ということを教わりました。これ、ワークショップに参加してみると、本当に言っています。「がっしゅ!」が飛び交っていました。自分で何か意見を言って、「がっしゅ!」 と言われると、これだけで来たかいがあったと思えます。/(^_^)

実は PLoP 終了後、参加した JPLoP メンバーの間で「そういえば、がっしゅ、ってどう綴るんかしら」という話になりました。ある人は「Gash だよ。あなたの意見は深く刻み込まれた、というトコロから来ているんじゃないかな」と言い、ある人は「Gush じゃないでしょうか。もやもやしたものがあふれ出て、『よくぞ言い得た』ってことでは」と言い、ある人は「どっちもそれらしく聞こえる」と言いました。/(^_^;;

後にオブジェクト指向シンポジウム 2000 で Cope に再会する機会があったので、そのときのことを思い出して、どうなんでしょう、と聞いてみました。どうやら、`Gush!' が正しいようです。「意見があふれ出ている」さまを表現しているんだそうです。パターンコミュニティ独自の用語なんですかと聞くと、「もともとは詩のコミュニティから来ている。だから PLoP のコミュニティと詩文のコミュニティとで使っているね」とのことでした。

19.4 エンターテイメント

夜は、各自ドリンクなどを手にしながら思い思いに語り合う時間でした。生バンドの Jazz 演奏が、行われていたりしました。ドラムが叩けるという友野さんは、飛び入り参加もしてきたようです。:-)

John Vlissides に話しかけて、「実は今、『デザインパターン』の第 2 版に向けて作業中なんだ。パターンのフォームは前の版との互換性もあるから、変更するつもりはない。でも今までの PLoP で得られた成果やフィードバックを取り入れていきたいと思っている。そうそう、今度は Java のサンプルも入れるよ。パターンの数自体は、1 つか 2 つ、増えると思う。初版は 4 人で書いたけど、ひょっとすると、もう一人著者が増えるかもしれない」とうかがったのもこのときです。今思うと、もっと詳しく聞いておけば良かったと思ったりします。

19.5 恥ずかしながらドジりました

基本的には収穫も多く、予想以上に楽しんでくることができたのですが、大失敗がなかったわけではありません。ということで、恥ずかしながらドジりましたコーナーです。/(^_^;;

本来レビューされるはずだった、`Security Policy: A Design Pattern for Mobile Java Code' の方を事前に読んでいったら、なんと、Vlissides の `MEMENTO-COMMAND: An Object-Behavioral Compound Pattern' のレビューが始まりました。(*_*;; まあ要するに、私が予定変更を通知されたのに気がつかなかった、ちゃんと確認しないのがいけなかった、ということなのですが、議論にも参加できず、がっかりしましたです、はい。後で聞いたら「著者が結局来られなくなってしまったから」変更になったのだそうです。これ以降「次やるのはこれですよね」と確認するようになったことは言うまでもありません。/(^_^;;

チェックアウトの時には、部屋の鍵を返さないといけないのですが、なんと、これを忘れてそのまま空港まで行ってしまいました。うーん、仕方ない、シカゴからでも郵送するか、と思っていました。ところが、あ、しまった、鍵持ってきちゃった、という方がもう一人おられまして(^_^;)、結局フライトの前になんとか郵送しようということになりました。で、急いで封筒を買いに走り、そのお店の人に事情を説明しつつ、鍵を見せ、、、たら、「この鍵はどこのポストに投函しても Allerton House に届きます」とその鍵にはそんな意味のことがかかれており、結局現地の空港のポストに投函して、ホッと一安心となったのでした。どうやら、鍵を返し忘れて慌てる人々は、他にもいるのだなぁ、と妙なところで感心してしまいました。

20. PLoP に参加してみて

PLoP には、パターンを参加者全員でより良いものにしていこう、そして PLoP を楽しもうという雰囲気を強く感じました。また、ゲームを行ったり、生活をともにしたり、短い期間であっても信頼関係の絆を深めようという工夫が随所に見られました。メインイベントである 「ライターズワークショップ」も、もちろん作者により良いフィードバックを与えるために、最大限の工夫が凝らされています。そして、それでもなお、 「閉会セレモニー」では、改善すべき点を議論し、絶えずプロセスを改善しているというのも見習うべきところでしょう。

そして PLoP とは、George の述懐にもある通り、人と人とのネットワークを形成する場なのだと感じました。PLoP に参加しなかったら、Coplien、Vlissides をはじめ、この分野の第一線の人たちと話をする機会はおそらくなかったでしょう。また、一緒に参加した JPLoP の方々とさえ、これだけ充実した時間をともに過ごすことができたかというと、それもまたありえなかったんではないかと思うのです。日本に帰ってきてから、Cope が招待講演で来日し、彼と再び直接話をすることが出来たり、そしてまた、ご一緒させていただいた JPLoP のメンバーの方々から様々なことを学び取ったり、議論をしてみたりと、参加したことの意義は非常に大きかったと感じています。

この稿を読まれた皆さんが、そんなに楽しんでこられるなら、自分も参加してみようとか、自分のパターンを PLoP で磨き上げてみたいとか、組織内のドキュメントレビュープロセスにライターズワークショップの手法を使ってみようとか、そういった何ごとかを感じ取っていただければ幸いです。

なおこの稿の内容は、参考文献 [15] に付録として収録されている、フジノさんによる PLoP '99 のレポートに負うところが大であることを特に記しておきたいと思います。初期の PLoP の様子を知る上で、Cope によって書かれた PLoP '94 の概略 [16]も大変参考になりました。長谷川さんによる PLoP 2000 の臨場感あふれるレポート「PLoP の風」 [17]もぜひお楽しみください。

最後になってしまいましたが、お誘いをくださったフジノさん、ご一緒させていただいた間、そしてその後も、筆者にさまざまなことを教えてくださった、友野さん、金澤さん、長谷川さん(順不同です。;-))に最大限の感謝の気持ちをささげます。またワークショップやメーリングリストを通じて、いつも有益なコメントをくださる JPLoP のメンバーの皆さんに感謝して、この稿を終わります。

参考文献

[1] PLoP 2000, http://jerry.cs.uiuc.edu/~plop/plop2k/
[2] The Pattern Languages of Programs Conference, http://jerry.cs.uiuc.edu/~plop/
[3] JapanPLoP, http://www.kame-net.com/jplop/
[4] Ralph E. Johnson, 中村宏明, 中山裕子, 吉田和樹: 『パターンとフレームワーク』, ソフトウェアテクノロジーシリーズ Vol.1, 共立出版, 1999
[5] History of Patterns, http://c2.com/cgi/wiki?HistoryOfPatterns
[6] PLoP '99 Proceedings, http://jerry.cs.uiuc.edu/~plop/plop99/proceedings/
[7] PLoP '98 Proceedings, http://jerry.cs.uiuc.edu/~plop/plop98/final_submissions/
[8] PLoP 2000 Proceedings, http://jerry.cs.uiuc.edu/~plop/plop2k/proceedings/proceedings.html
[9] Neil Harrison : The Language of Shepherding. A Pattern Language for Shepherds and Sheep, In PLoP '99 Proceedings, 1999
長谷川洋一(訳):『シェファーディングのランゲージ』, Translation/LoS-YH-01/LOS-YH-V0120.pdf, 1999
塚本好広(訳):『シェファーディングのランゲージ』, Translation/LoS-YT-01/LOS-YT-V0099.pdf, 1999
[10] Neil Harrison, Brian Foote, Hans Rohnert(eds.) : Pattern Languages of Program Design 4. Addison-Wesley, Reading, MA, 1999
[11] James O. Coplien, Bobby Woolf : A Pattern Language for Writers' Workshop, In Neil Harrison, Brian Foote, Hans Rohnert(eds.) : Pattern Languages of Program Design 4. Addison-Wesley, Reading, MA, 1999
[12] Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides : Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, Reading, MA, 1995
本位田真一, 吉田和樹(監訳):『デザインパターン―オブジェクト指向における再利用のための』, ソフトバンク, 1995
[13] James C. Hu, Douglas C. Schmidt : JAWS: A Framework for High-Performance Web Servers, In Mohamed E. Fayad, Ralph E.Johnson (eds.) : Domain-Specific Application Frameworks, John Wiley & Sons, 2000
[14] James O. Coplien : Foreword, In Linda Rising (ed.) : The Patterns Handbook: Techniques, Strategies, and Application, SIGS Reference Library Vol.13, Cambridge University Press, 1998
[15] ソフトウェア品質学研究会(編), 鈴木純一, 長瀬嘉秀, 田中祐, 松田亮一(著): 『ソフトウェアパターン再考―パターン発祥から今後の展望まで』, ソフトウェア品質学シリーズ, 日科技連, 2000
[16] James O. Coplien : Progress on Patterns: Highlights of PLoP/94, In Proceedings of Object Expo Europe 1994, SIGS Publication, ftp://st.cs.uiuc.edu/pub/patterns/papers/ObjectExpoPLoP.ps, 1994
(邦訳)『パターンの進化―PLoP '94 に参加したある技術者の感想』, 日経データプロ(編) : 『オブジェクト技術の最新基礎知識』収録(pp.104-111), 日経 BP 社, 1996
[17] 長谷川洋一 : 『PLoP の風』, (HTML版) http://www.tpn.co.jp/doc/plop2k/PLoP2k20.htm, (PDF版) Meeting/plop2k20.pdf, 2000
[18] John Vlissides : Pattern Hatching : Design Patterns Applied, Addison-Wesley, Reading, MA, 1998
長瀬嘉秀, 永田渉(訳):『パターンハッチング―実践デザインパターン』,ピアソンエデュケーション, 1999
『パターンハッチング正誤表(主なもの)』, http://www.tech-arts.co.jp/oo/patternhatching.html
中村学(編):『パターンハッチング : 誤りおよびその修正(案)』, http://www.lake.its.hiroshima-cu.ac.jp/~mondo/pattern/PatternHatching/
[19] Christopher Alexander, Sara Ishikawa, Murray Silverstein : A Pattern Language : Towns, Buildings, Construction, Oxford University Press, NY, 1977
平田翰那(訳):『パタン・ランゲージ ― 環境設計の手引き』, 鹿島出版会, 1984
[20] Christopher Alexander : Notes on The Synthesis of Form, Harvard University Press, 1964
稲葉武司(訳):『形の合成に関するノート』, 鹿島出版会, 1978

ご意見や、間違いのご指摘などは もりした みんぺい までお寄せいただければ幸いです。