RubyKaigi2011 1日目参加してきた

今日は1日大ホールにいて闇Rubykaigi最後までみて帰宅

メモを少しまとめてつらつらと

開会の辞 / 高橋征義氏

  • 最高のRuby会議になるように

プログラムについて / 笹田耕一氏

  • これまでのRuby会議の振り返り
  • 今回応募倍率は1.6倍!!
  • Ruby会議はRuby本体に関する発表が多い
  • まつもとさんがいつも基調講演
  • コミュニティ関連の話が増えてきた
  • 仕事にどう導入していくか、という発表から、仕事でどう使っていくかという話

Ruby Ruined My Life. / Aaron Patterson氏

  • takoyakikamen!
  • PVwwwwwwwwwwwww
  • RubyCore,RailsCoreの開発をそれぞれどういうスタイルでやっているか
  • Rubyではコミッタと一言で言っても担当が異なる
  • 担当分野のスペシャリストになれる
  • デメリットとして担当者に縛られる
  • 多言語展開行なってることにより自分の知ってる言語で貢献ができる
  • 一部ライブラリはgemになってる。だけどgemになってないライブラリもある。
  • gemのことについてはRubygemsチームのほうにいかなければならない
  • Railsではコミッタであればどこでもコミットできる
  • 専門家がいないので強く言える人がいない
  • Railsは誰もがリリースマネージャ
  • スピードは早いけどハイリスク
  • feel free to commit
  • feel free to revert
  • Rails on Ruby技術者
  • Rails技術者を雇う場合にはこのほうがいい。Ruby技術者だと幅が広すぎる
  • RailsはRuby+HTML+CSS+Javascript+SQL
  • Railsは特定の技術のニーズの話
  • 日本語の本では特定のトピックの本が多い
  • 英語の本ではRubyとRailsそのものの本しかない
  • Rubyではなにが作れるの?
    • A.なんでも作れる
  • Railsでは何が作れるの?
    • A.ウェブサイト!
  • 今loadpathはファイルシステム限定だけどWebとかSQLiteとかからできるようになるといいかもしれないね
    • SQLiteはシークライトって読むのかよかっこいい!
  • Rybt Ruined My Life
  • Rubyで人生破滅
  • 人生は悪化した
  • 好きな言語を仕事で使えないなんて

プロポーズwwwwwwwwwww

Next version of Ruby 1.8 and 1.9 / Cruby開発チーム

  • 次のリリースは1.9.3
  • ライセンスが変更されます
  • 1.9.3で追加されたもの
  • private_constant
  • テスト並列化

あの場でtrunkの話の結論まで出てしまうなんて・・・
でもすごいうけた

Rubyを利用した大規模ウェブサービスの開発・運用 / 舘野祐一氏

  • 舘野氏とRuby会議
  • クックパッドの紹介

使っている物

  • Ruby 1.8.7
  • Rails 2.3
  • Haml,Sass,jQuery
    • prototype.jsのコードを全部書きなおしてjQueryに統一した
  • Passenger
    • 2系のパフォーマンスがいいので2系
  • MySQL
  • Memcached
  • Varnish
    • キャッシュに利用
  • Akamai
  • Solr
    • 柔軟な検索に対応
  • Hadoop
    • データ収集の大量のデータを処理するとき
  • Railsは遅い?
    • 定石をしっかりやっていけば決して遅くなんてことはない
  • GOODはやらないBestのみ集中

開発サイクル

  1. Dev
  2. Deploy
  • Feedback

Dev

  • UnitテストとIntegrationテストをしっかり。入り口と出口
  • テスト実行時間が長い
    • リモートに高性能なリモートテスト用サーバを利用
  • JS部分もテストしていかないといけない
    • Capybara-webkitいいよ
  • 継続的インテグレーションにはjenkins

Deploy

  • 必須なのはCIのテスト通ることと通知
  • 開発者意外にも共有する。cap deployしたらmail,skypeなどで通知

Feedback

  • エラーはモニタリング。モニタリング専用マシン。リモート接続もできる
  • 色でわかるようになってる

社内で開発したツールを積極的に使ってとても効率的にすすめている

Shipping at the Speed of Life / Corey Donohoe氏

  • Githubの開発手法、運用方法などの紹介。cookpadとかぶるところもあったが定石なのか
  • Githubはまだクラウドには移行していない
  • Browser mob
  • Measure
  • Nagios
  • Redis

社内で開発したツールがいちいちかっこいいテンション上がる

Toggleable Mocks and Testing Strategies in a Service Oriented Architecture / Andy Delcambre氏

  • Fakeweb
  • Artifice
  • モック
    • 本物のように振舞うオブジェクト
  • スタブ
    • メソッドを値を仮のものに置き換える
  • フェイク
    • 本番ではつかえない
  • Rackをスタブに使ってテストする
    • HTTPレイヤーは全部フェイクここのテストじゃない
    • Rackなのでバックエンドは本物。テストの信頼性が高い

Issues of Enterprise Rubyist 〜SIerのなかのRubyistが考えるべきこと〜 / 相澤 歩氏

顧客のイメージ/要望

  • 安くて
  • 早くて
  • 柔軟な対応ができる
  • エンタープライズな品質も求める
  • たのしいRubyよりも役に立つRuby
  • 役に立つRubyは欠かせないRuby
  • だけど、あえてリスクのあるRubyを選択する必要性がない
  • リスクの回避を回避するのはとても難しい
  • 守りの考えの保守運用などではなく攻めの営業企画と話をしてみる
  • たのしいでは続かない
  • ちょっと便利では使われない

質問に困ったら、「良い質問ですね」で時間を稼ぐw

日本の図書館はどのようにRubyを使っているか - 「Next-L Enju」と「国会図書館サーチ」 / 田辺浩介氏

  • 人生を変えるサンプルコード
  • 10年前からRubyでシステムを構築してるところがある。神戸すごい
    • バージョンは1.6とかのとき
    • 実装の90%はRubyあとはelisp(?)とC
  • すこしの修正であれば図書館員が治す!すごい
    • Emacsを華麗に操作する図書館員!

Rubyで作った "critical mission" システムについて / 江森真由美氏

  • 書籍がでていないときRails開発していたらやたらとBerryz工房に詳しくなった
  • Rubyすげえ
  • 直感的
  • 容易
  • 便利なメソッド
  • テストは楽に楽しく
  • スピードと信頼性が今のところのネック

闇Rubykaigi

闇ぃぃぃぃいぃっぃぃいぃっぃ


明日も朝から行く予定です。