今回のプログラムは以下のとおりでした。
まずはじめのプログラムは、初級者向けレッスンの前半「テーマの解説と演習の紹介」で、先週の XP 祭関西のように、ペアプロの様子を実際に見せながら、テスト駆動開発の流れを紹介しました。 ペアプロの実演は、小波ゼミ 4 回生のコウザイさんと 3 回生のサカイさんの二人です。 いちおうおおざっぱな台本は書いておいたのですが、途中からはアドリブというか二人とも素でペアプロをしていたようで、これがとてもいい味を出していました。 きっと二人ともペアプロ向きのキャラクタなんだろうなぁというのが感じられて、とても頼もしく眺めていました。 いちおう台本のようなものも勉強会のページにアップロードしておきましたので、参加された方は当日の様子を思い出しながら読んでみてください。:)
少し前に小波先生に、「そろそろペア発表者を世代交替させたい」と言われてサカイさんを紹介されたのですが、いきなり完全に交替しちゃうのはサカイさんも心の準備が...でしょうから、今回の発表はコウザイさん、サカイさん、私の三人でやりました。 そんなわけで、会場で言い忘れましたが、今回でコウザイさんは Ruby 初級者レッスンの発表から卒業です。7 ヶ月の間おつかれさまでした〜。
つづいて、はるばる東京から召喚した青木さんによる「Ruby リファレンスマニュアル刷新計画」のプレゼンです。 「自慢タイム+不満タイムでプレゼン時間の半分以上が過ぎる」という、文字にしてしまえばありえなさそうなプレゼンでしたが、実際はとても楽しいプレゼンでした。 私自身は、ML には登録しているものの何もコミットしていない、という状況なので、今後はもうちょっと協力したいなぁと反省しています。 というわけで、いまのところ活動のメインは ML ですので、興味のある方は青木さんの日記の 2006-09-04 の記事をご覧の上、ぜひご参加ください。
三番めは、西山さんによる nadoka ネタの発表です。 個人的には、nadoka はログ取りとコネクション・プーリング(って言うのか?)にしか使っていないので、「へぇ〜、そんなこともできるのね〜」とか思いながら聞いていました。 当日会場で西山さんのコンピュータがインターネット接続できなかったため、ライブでデモをできなかったのがちょっと残念でした。
四番めは、小波ゼミ 4 回生の中から、卒論で Ruby を使っているアサさんと yumi さんのお二人による、卒論中間発表でした。 「先生の意図どおりに進めないと先生が不機嫌になる」とか「会場からの質問は学生が答える前に先生が反撃しだす」とか、いろんな意味で自分が学生だったころをなまなましく思い出させてくれました。 まだまだやることはたくさんあると思いますが、すてきな研究になるように応援しています。
最後に、初級者向けレッスンの実技コーナーで、6 人程度のグループにわかれて実際に手を動かしながらチームでテスト駆動開発をしました。 私の所属したグループはコウザイさんがグループリーダーで、サカイさんと初参加のツェツェさんの二人が主にドライバを担当して、二つのチームでトリオ・プログラミングでした。 お題はスタック・クラスを作ろうというものでしたが、ツェツェさんチームは時間内に完成しちゃったので、最後は forwardable.rb を使ってリファクタリングをしてみました。 前回からグループにわかれての実技コーナーを設けたのですが、今回のテーマの「ペアプロ+テスト駆動開発」は特にグループレッスンとの相性がよかったと感じました。 Ruby 歴の浅い方や、初参加の方にとっても、楽しんでいただけたのなら幸いです。
懇親会はいつものように移動しながらわいわいとやっていましたが、今回は半分弱が学生だったそうです。素晴らしい。 その後の二次会では、私はコウザイさんと Internet Week 2006 でとりあげるアプリケーションのモデリングをしていて、その前では南木さんと id:kagehiens さんが Rubyist SNS のモデリングをしていました。
今回もとても素敵な勉強会でした。 参加者のみなさん、発表者のみなさん、スタッフのみなさんに感謝しています。