なぜ Coderetreat に参加するのか。
プログラムを書くのを仕事としていると、締め切りとは無縁でいるわけにはいきません。
もうちょっとコードを書き換えたい、不要なコードを消したい、ちょっと設計を変えたい、いろいろなことを思ったとしても、締め切りがあるのでまずは動くコードを書いてしまいます。そのたびに、ちょっとだけコードの品質が下がっていきます。ちょっとだけ。
・これくらいのコードなら、まああとでメンテできるから大丈夫
・この設計はまだちゃんと動くか確認できていないから、まだ実システムに使うのは早い
・ここは OX を使った方がよさそうだけれど、実際に使ったことはないから、いつまでかかるかわからない。
そんなことを言い訳にしながら、実際のコードはだんだん汚くなっていきます。コードの汚さにもだんだん慣れてきて、そのうち汚さにも気付かなくなっていきます。
Coderetreat は、朝から晩まで45分のペアプロセッションを6回も繰り返します。しかも毎回ペアが変わります。ペア持っているスキルは毎回変わりますし、そもそも同じ言語を使えるかどうかもわかりません。問題は毎回コンウェイのライフゲームですから、だんだん問題に対する理解は深まっていきます。
Coderetreat は、課題を終わらせることが目標ではありません。よいコードを書き、よい設計をすることが目標です。始めてペアを組む相手と、よいコード、よい設計とは何かを話し合いながら、実装しつつ試してみましょう。ファシリテーターがちょっとお手伝いをします。コードを動くようにできないこともあれば、結果としてひどいコードになることもあります。でも、問題ありません。45分のセッションが終わってしまったら、コードは削除されてしまいますから。
締め切りのある現場に戻ったとき、ちょっとだけ品質を下がるのを避けられる、ちょっとだけコードを良く出来る、ちょっとだけ速くできるようになる。そうなれば、仕事のコードもちょっとだけ良くなっていくでしょう。あ、ペアプロもきっと、ちょっと上手になっていますね。
あ、Coderetreat には必ずおいしい昼食がついています。そちらもお楽しみに。
2012/12/8 は、Global Day of Coderetreat が開催されます。いまのところ150を超える場所で開催される予定です。
View GDCR2012 in a larger map