TDDBC横浜 Second Seasonに参加しました

9/1に行われた
TDDBC横浜 Second Season
にRuby/RSpecで参加してきました。

案内

2012/09/01 TDD Boot Camp 横浜 Second Season #tddbc - Togetter

参加の経緯

TDD Boot Camp 福岡 2 #tddbc - Togetterに参加してた@dekokunとかが楽しそうだったので前々から気になってはいた。

それでもしばらく参加しようとしてなかったのは、
仕事が忙しいことを言い訳にしてたのか、ペアプロすることに自信がなかったのか。
あるいは、TDDに対してそれほど本気でなかったのかもしれない。

ともかく、先日参加した#scmbc tokyo 3でTDDBCの紹介があり、
今回は自然な流れで参加することができた。

※ 募集が始まった時tddbcで一緒のテーブルだった@STAR_ZEROさんが素早く教えてくれたので、
最初の抽選では漏れてしまったけど、繰り上がりで参加できた。
マジでありがとうございました。

準備した環境

最初は今仕事で使っているPHPで申し込んだのだけど、先の事を考えてRuby / RSpecに切り替えました。

PHP のテストを Ruby で書く « blog.udzura.jp

こんなのもあるし :)

autotest · rspec/rspec Wiki

最初にペアを組んだ方が全くといっていいほど同じ環境だったので非常にスムーズだった。
違ったのはIMEの切り替え方法ぐらい。

Java / JUnit のTDDデモを見ながらRSpecで追いかけてみた

Screen Shot 2012-09-01 at 12.02.45

デモペアプロを見ながらこんな感じでやってたら、即座に@t_wadaさんにcontext使って構造化しようとか、letじゃなくてsubject使うといいよとかアドバイスを頂いた(言い訳するとcontext前者はJUnitの書き方に引きずられた感...orz)。実際に修正してもらうときにvimプラグインを有効にしてたら、「宗教上の理由でVimは使えないんですよ...」とおっしゃってたのが印象的だったw

RSpecのよりよい書き方はRSpecというプレゼンとか

とかで勉強していきます。

お昼休憩

同じテーブルの人たちでポジションペーパーを見ながら、今どんなことやってるとかを話しながらお弁当食べた。
「TDDいいと思うしやりたいと思うけど、なかなかできないよねー」とかとか。

あとグリーンバンドを買いました。

ペアプロ

2回め終了時のコードがこちら:
fukayatsu/tddbc-vending-machine

改めて見るとコミットタイミングが微妙だし、TDDのサイクルも適当になってしまっている。
チートシート見るとかとか、TDD本を写経して改善したい。

楽しかったが、かなりハードだった。毎日ペアプロしてる人はすごいなー

イベント中にポチったものとか

↓ ほんたったは自宅用と会社用に複数

↓ こっちは懇親会でじゃんけんで勝って頂いたもの(横浜賞とのことでした)
凶器になりそうなぐらい厚い。以前これの読書会をやっていたそうです

w50w50

xUnit Test Patterns: Refactoring Test Code (Addison-Wesley Signature Series (Fowler))w50

Tweetsを一部抜粋

↑ 例えば、asertから書くとか

↑ 2回目、場合によってはコメントでTODO書いたりするんだろうと思う

↑ 最後のQAで手動コミットはオワコンという指摘もw

↓ 昼休みに購入
w50

気のせいか、いつもの勉強会のピザより美味しかった

↑ 相対見積りが大事、というのを実感できたw

じゃんけんとは言え、人から本を貰うというのは重いものだな、と思った。

800ページ超...。

おわりに

会場を提供していただいた、株式会社アットウェアさん、
スタッフの皆さん、
一緒にペアプロをしていただいた皆さん、
本当にありがとうございました!!

引き続きTDDを自分のものにするのと、頂いた本をなんとかするのを頑張ります!