TDDBC東京1.5 へ行ってきました #tddbc

Zynga Japanさんで行われました「TDDBC東京1.5」の感想ブログです

感想

ここ最近、TDDに関する勉強会に頻繁に参加させて頂いてます。
実務において、運用期間の長いレガシーなプロダクトの終わらない戦いがあります。
そこから脱却する為に有効なプラクティスはないか?と探すうちにTDDというキーワードに出会いました。
しかし、学習の中でつまづく事や迷子になる事も多く、更には現場に展開し、レガシーコードを改善していく*1までに到達していくには…
良いヒントを求め、参加させて頂きました!


@t_wadaさんの講演は今回で2回目の聴講となりますが、より深く聴く事ができたと思います
コードレビュー大会は他言語へのリスペクトの機会、 ソフトウェア開発の三本柱はバージョン管理・テスティング・自動化、 バージョン管理のないプロジェクトは死亡確定、 機械ができる事は機械に任せ人間にしかできない仕事を、 TDDは開発促進の為DeveloperTesting、 プログラマによるプログラマの為のテストを書きながらの開発、 完全主義の呪いからの脱却、 コードを書いて初めてわかる気付きに近い所で素早いフィードバックを得ながら、 黄金回転で一番大事なのはリファクタリング、 ひとつづつ少しづつ、 テンポよく回転力を保って、 Eat own dogfood、 道具を研ぎ澄まし、 祈るのではなく不安をテストに、 必要になった時に命綱を編み始めるのでは遅い、 TDDの真の目的はコードとエンジニアとチームの健康、 この先生きのこ「レガシーコード改善ガイド」「データベース・リファクタリング」「xUnit Test Patterns」「GROWING OBJECT-ORIENTED SOFTWARE, GUIDED BY TESTS」、 写経・写経・写経!
よし、頑張ろう!


@ShiroKappaさんのLTでは、
みなが幸せで良いものを作れる為、個人では整えられない職場環境を組織として共有していきたいというトップの方針ものと、共通のゴールを目指して取り組む、良いなあと思いました!
「脱却 - 属人的永年保守」のページでウルっときて「獲得 - 安心感、攻めの姿勢、今の自分への信頼、コード・品質・価値の共有」の流れで泣けてきました><


@remore さんのLTでは、
TDD導入開始から3ヵ月間、幾多の苦難をどのように乗り越えてきたかのあるある体験談でしたが、そのなかの幾つかは自分も感じた事があり、また幾つかはその予兆を感じているものがあります。
TDDの検証段階の自分にとって、3ヵ月先行している@remoreさんの記録は道しるべ的な意味合いがありそうです!
上り坂を迎えた時には、是非ともコチラのLTを振り返ってみたいと思います!


ペアプログラミングの方は、事前に各自ポジションペーパーを記入してあったので、初対面の方とでもバックグランドをある程度把握した上でコミュニケーションできてよかったです!
折角、@tomy_kairaさんがGit入門のLTをしてくれたのに、レポジトリをinitしただけでその後バージョン管理してなかったなあ…と、少し心残りもありましたが、@HIROCASTさんのLTにあったようにグリーンバーを見てペアの方と拍手しあったり「コーディングを楽しむ」という部分も体感できました!
ペアを組んで頂いた方は、自前のキーボードでの参戦、Vimさばきも鮮やかに、まさに「道具」にこだわりのある方でした。


コードレビューは、他言語へのリスペクトの機会という言葉を意識して聞かせて頂きました。
Groovyという言語を見るのは初めて(情弱ですみません…)だったので、コードが面白いなあと思ったり、Nodeを使ってテストと実装に挑戦してみたペアのレビューも興味深かったです。
自分が選択したPHPでの別ペアのレビューでは、クラスに切りだすかどうかとか、機能の名前付けとか、同じような所で悩んいたり、ペアによって違いが出て、それを比較検討して自分の引き出しを増やす効果があったり、普通では体験できないような事なので、実践でそういう機会を意識的に作ってみるのも面白いかと思いました。


質問コーナーは、事前にGoogleモデレータに質問事項を募集してあったのも良いアイディアだったと思います。
TDDを実践していくにあたって身に付けていると好ましい知識は?という問いに対して、オブジェクト指向リファクタリングデザインパターン、設計技術、テスト技法、TDD・テスト設計における語彙、CI、静的コード解析・・・それぞれが関連して繋がっている要素であり、良書も色々あるのでインデックスしていきたいです。


その後、近くのお好み焼屋さんで懇親会が行われました。
鉄板が熱くて、ビールは飲んだそばから汗になって出ていくような熱気でしたw
PHPフレームワークredmineの運用などについて、参考になるお話を沢山聞かせて頂き、収穫でした。


今後もTDDBCは各地で順次計画されているようですので、お近くで開催される場合には是非参加される事をお勧めします!!

最後に

主催の@HIROCHASTさんはじめ運営の方々、会場提供して頂いたZynga Japanさん、良い機会を提供頂きありがとうございました!
@t_wadaさんはじめ登壇者の方々、貴重なお話し、ありがとうございました!
また、ペアプロでご一緒して頂いた方、色々お話しさせて頂いた皆さん、ありがとうございました!
今回得られた情報を実践し、なにかフィードバックできるよう頑張りたいと思います!

*1:既存のレガシーコードとの戦いには「レガシーコード改善ガイド」をお供に!