Rubykaigi2010に参加してきた!2010/08/27
先週末、Rubykaigiに参加してきましたよ。いろいろメモはしたけどまとめてなかったので、ここいらでまとめていこう。
ということで、Rubykaigi2010の初日。
keynote、、、の代わりのruby1.9.2とrails3のリリース
keynoteのはずだったんだけど、都合が悪くなった、ということで、代わりのセッション。代わりといってもスゴイ人がステージにいっぱいいた。matzさんとlchinさんが通訳とか、なかなかないでしょ。内容は新しくリリースされたruby1.9.2の話題とrails3の話題。翌日にruby1.9.2についてのセッションもあるため、この日はrails3の話題が多かった。
以下メモ。
ruby1.9.2のリリースと同じような時期にrails3をruby1.9.2と対応させた状態でリリースできたのは、すごいこと。 これは継続的なテスト、正しいテストを行っていたから。
今回のRubykaigiで良く聞いた言葉の一つが、「継続」。
railsでは、何ヶ月か継続的なサブミットをしているとコミット権を得られる。情熱を示すことが大事。
「情熱」。この言葉も今回のRubykaigiでは大事なキーワードになっている。
ソフトウェアは決して完成しない。
Feels Like Ruby:JavascriptをRubyっぽく。正確にはRspecっぽいテストとかする。
Sarah Meiさん:Pivotal Labの人。trackerとかを作ってる会社ね。(Pivotalは、この後の永和さんのところで実際に良い感じに使われていた。)
Rjsを使ったり、というような書き方をやめて、Javascriptのクラスを使ってfunction(s)を呼び出して使う。
そして、そのclassの中のfunction(s)に対して、Rspecライクなテストを行う、といようなことをしている。
テストはJasmineっていうフレームワークを使う。(これがPivotalで作っているもの)サンプルやらなんやらはgithubのページからどうぞ。
http://pivotal.github.com/jasmine/
リアルタイムウェブができるまで。:RailsとWebsocketを使って、リアルタイムウェブを構築
Makoto Inoueさん:new bambooで開発をしている人。http://new-bamboo.co.uk/
PusherっていうリアルタイムPush型のweb socketを使ったバックエンドをクラウドサービスとして提供している、というモノの紹介。これは使ってみたい!と思いつつ、とりあえず会社で応用するようなニーズが今のところ無いので、何か考えよ。
Head First 普通のシステム開発:永和システムマネジメントさんの普通の?開発
永和システムマネジメントさんのセッション。めっちゃ人がいたので最初は立ち見だった。
永和さんの開発チームの中で、特にアジャイルチームの中で行われている(らしい)普通の開発を実演、といようなもの。
かなり面白かった。
質疑応答のところ、結構めもったものがあるので、コピペで勘弁してください。
イテレーションの単位 = リリース可能なもの。 お客様の要望次第。都度?全部? お金の発生は、基本的に契約ごと。 タスク分割 管理はカンバンにふせん。開発チーム内で共有できる一番簡単な方法。 ストーリーの確認で、タスク(分割)自体が発生しなくなってきている。 ポイント(タスク時間の大きさ)の見積り ものにもよるが、イテレーションの単位は1週間〜2週間 信頼度にもよる。最初は細かくして報告。 でも3日以上になるようなことはほとんどない。朝会などで報告したときに把握しにくい。 小さすぎると、あれもこれもそれもとなってごちゃごちゃ。 ストーリーとしてお客様に伝わりにくくなってしまう。 ペアプロ あまりに偏りすぎないようにはしている ある決められた時間は、新人がやるとか テスト Rspecで管理。Unitは管理。controllerはやらない。 viewなどで 新人 4月入社、3ヶ月新人研修(ふつうの) 7月1ヶ月でプログラミングの研修 8月から現場 新人だからテスト書いといて、とかそういうことはしない。 Modelに書いたらどうなる?とかやらせてみて、理由聞いたり、他の案を出してみたり、ということする。 会社として、というより、チームとして、現場として デルタ(値の幅のこと)そのためにデルタ。 Pivotalで日本語入力めんどくないすか? IMEをskkにするか、ctrl+mで確定をする。 railsとかのバージョンは 基本は最新。 ガツンとやる!お昼休みにでも。 朝会 他にプランニングミーティング(スプリントの開始時期に、主にオーナー、リーダー) 朝会+プロジェクトによっては、夕会。 振り返り(お客様によっては、1ヶ月とか、4半期とか) リファクタリング 基本的には随時。 ひとつのストーリーを終わらせる直前にリファクタリング。 単体だったらすぐに。 構造については、どうしようと今考えている。(技術的な負債、一度捨てて作りなおしてしまう、ということも) 開発チームには、きちんと保守可能なものを届ける、ということを行う。 お客様の許可はいちいちとらない。やったほうがいいことをやる。 見積り 計画を立ててしくったら、すぐ謝る。 大きく外れていたら、みんなでケア。 残業は? みんな結構早いかも。 アジャイルは集中させて、作業させること。 エディタ:新人なにやってるかわかんないんじゃない? 都度質問してます。 dotfileはgithubにあります。
その日の夜の懇親会で、このセッションで1年目として参加していたhttp://twitter.com/bekkou68さんに少しだけ話しを伺うことができたので、とても満足。ありがとうございます。
新人研修ってどんな感じ?とか色々聞いたけど、お昼休みの開発の話が面白かったので、そこだけメモ
お昼は12時くらいになるとみんなでマクドとかいって買出ししてきて、集まる。 んでRubyAgileのページとかをいじる(らしい)
話を聞いてる範囲で伝わってきたのは、超楽しそう、ってこと。
ちなみに、うちの会社でもランチタイムのプログラミング始めましたw