第12回日本XPユーザ会当日のメモ書き+感想


『距離考えてますか』 by id:J_Matsumotoさん 当日資料(PDF)

  • なぜ距離というメタファを使用したか→壁だと越えられないもののようなイメージを抱くため
  • 顧客との間でCollective Ownershipは可能なのか? お客様が入れたバグに関して誰が責任を取るのか
  • 距離を測ってみよう→距離を測ると縮めたくなる
  • トレードオフよりギブアンドテイクとコラボレーション→トレードオフはマイナスとマイナスのイメージ


『どこでもXP -- リモートペアプロの実践』

  • 「恩送り」江戸時代の話。恩を受けたら、他の人に返す。江戸時代は循環型社会(長屋とか)
  • リモートペアプロ環境 EclipseのsangamプラグインMicrosoft Netmeetingと来て、Microsoftリモートアシスタンスを最後には選択した。
  • リモートペアプロの条件は、既にペアプロのよさを実感していること、ファイアーウォール問題を克服していること。
  • キーボードやマウスの受け渡しがうまくいかないので、トランシーバのようにトークンを受け渡している。例「渡しますよ、オーバー?」「了解、オーバー」なんかカッコイイ。
  • Q「リモートペアプロによるペースダウンはどれくらいか」 A「10%くらい。実はそれほどペースが落ちない」
  • Q「Webカメラを使わなくなった理由は何か」 A「対面のコミュニケーションが苦手だから」「横に並んでのコミュニケーションはとりやすいが、対面だと緊張してしまう」(これには納得しました)


劇団ぺけぴー

今回はテスティングネタ。なんかこれまでより格段に上手になってます。かわりに初々しさが減ってしまいました。あれはあれで良かったのだけど(^^;) 当日資料は近々公開されるかもしれないとのことです。 当日資料はここ(劇団ぺけぴーの事務所?)からどうぞ。余談ですがxUnitを「ぺけゆにっと」と読んでいました。


(ライトニングトークス)富士通の和田さんによる「XPは性善説か」

発表の中で出てきたのがスキル×やる気の2×2モデル(おっ、2×2)。プロジェクトが進むと、既存プロセスはスキル高&やる気低の象限に向かう左肩上がりの推移を示し、XPはスキル高&やる気高の象限に向かう右肩上がりのモデルになる。しかしXPでは最初にやる気が低い領域にいた人は一定数脱落する。というような2×2を発表されていました。

発表者の和田さんとは前のオブラブイベントでお会いしていました。イベントのあとの飲み会で話していたことが、こんなすばらしいトークスになるとは! ターンVモデル(V字モデルを上下逆さにした!)が今日一番ウケていたのではないでしょうか。


(ライトニングトークス)日本Rubyの会の方からやってきたkdmsnrさんによる"blog"[0..1] + "wiki"[1..-1]の紹介 (当日資料はcapsctrldaysへどうぞ)

irbsh[20:52](main):001:0> "blog"[0..1] + "wiki"[1..-1]
"bliki"

思わずその場で入れてしまいました(^^

トークスは初めてとのことでしたが、Giving Lightning Talks(via Matzにっき)に則ったインパクトのあるトークスでした。最近うまい人が多いなぁ。Martin Fowler's Bliki in Japanese1周年だそうです。おめでとうございます。これからもお願いします。ところでMartin Fowler's Bliki in Japaneseってそんなにマイナーなのでしょうか? ちょっと信じられないなぁ。


(ライトニングトークス)小井土さんによるVS2005のTDDやリファクタリング機能のデモ
VS2005には(NUnitには?)テストのカテゴライズ機能があるのですね。VS2005はEclipseやIDEAと機能を競って互いに刺激しあってほしいなと思っています。またNUnitではAssert.AreEqualやAssert.IsTrueなのですね。


(ライトニングトークス)水越さんによる「プロトタイプベースに愛を」 (当日資料はCoffee Diaryからどうぞ)
シャアザクもコピーできる邪悪な言語"Io"の説明。「クラスベースとプロトタイプベースは対立する概念ではない」とのこと。以下当日の画面をメモしたものです。(ちょっと遠かったので細部がかなり怪しいです。間違っていたら指摘してください。)

ZakuTest := TestCase clone do(
    testSpeed := method(
        assertEquals(1, Zaku speed)
    )
)

RED

Zaku := Object clone
Zaku speed := 1

RED→GREEN

ZakuTest := TestCase clone do(
    testSpeed := method(
        assertEquals(1, Zaku speed)
        assertEquals(3, CharZaku speed)
    )
)

GREEN→RED

CharZaku := Zaku clone
CharZaku speed := 3

RED→GREEN