TDD in Action に参加しました
7月22日 TDD in Action #tddact(東京都)
TDD in Action #tddact - Togetterまとめ
前日の SCMBC に引き続き 2 日連続で勉強会参加です。
見せてもらおうか!Tokyoのテスト駆動の性能とやらを! ※開催概要より
ということで、色々な人のテスト駆動の性能を見せてもらってきました!
会場は毎度おなじみオラクルさん。今回もフライングでオラクルなう!をきめました。
参加することを決めた後、色んな人から、マサカリが飛び交う勉強会だよね!と脅されていましたが、そんな雰囲気はなく、めちゃくちゃ楽しい一日でした!*1
そして、Japan Oracle User Group さんのご厚意で、こんな感じの今までにないスタイル!
【速報】朝からビールクズのお知らせ #TDDAct
オラクルさんのご好意で朝からビールが提供されました! Vivaダメ人間 #tddact
ペアプロの準備
自己紹介、使用言語の確認などを行った後、早速ペアプロ開始です。
Groovy 卓は、最初 5 人でしたが、使用言語確認の際、お一人が移ってこられたため 6 人 3 ペアとなりました。
私はアジャイルサムライ横浜道場での道場仲間でもある @grimrose さんとのペアでした。
IDE は IntelliJ IDEA、テスティングフレームワークは Spock を選択。
物理的な環境としては、私の PC を使用し、@grimrose さん持参の HHKB を繋いで行いました。
この構成は意外とよかったです。*2
@grimrose さんが Gradle を使って開発用ディレクトリ構成を作成して準備完了です。*3
ペアプロの開始
お題は、TDDBC 大阪で使われた「自動販売機」でした。
課題の解決法について、紙にメモを取りつつアイデアを出し合い、方針が決まったところでコーディング、課題が一区切りつくごとに消し込み(done)という形で進めました。
ペア交代には明確な基準があった方がよかったかもしれませんが、何となくで交代していました。
割とこまめに交代していたので、どちらかがずっとドライバーという状況に陥らなかったのはよかったと思います。
Groovy/Spock を始めたばかり、Java 経験なしのため、色々と足を引っ張った気がしますが、とても楽しく進めることができました。もう少し、言語やフレームワークに習熟して、議論できるように精進します。
CafeSpock でも思いましたが、パラメタライズドテストと Unroll アノテーションの組み合わせがとても便利でわかりやすいです。
ライブコーディング
途中、何組かプロジェクタを使ってのライブコーディングが行われました。
印象に残ったことをざっくりまとめです。
- @kyon_mm さん、@pocketberserker さんペア
- コーディング開始まで 30 分近く、テストについて議論を進めていたのは非常に参考になりました
- done の定義重要!
- 人の git は git じゃない!
- やっぱり"git"じゃなくて"g"ですよね! by @tomy_kaira さん
- Haskell で TDD
- 初めて見た!
- @tomy_kaira さんがライブコーディング2回 + 闇LT という無双状態。
言語、エディタ、IDE、コーディングスタイル、設計思想、それぞれの違いを色々見ることができて面白かったです。