トークセッション「中と外から見た Rails」に行ってきた

  • エア社員としては参加しないわけには行かないので雨の中行ってきました.
  • 12/3(木) 池袋ジュンク堂本店にて
  • いつもの Tokyu.rb とか Asakusa.rb とか Rails勉強会@東京とかの人が多かった
  • 司会はオーム社の森田さん
  • 登場人物
    • 前田さん
    • 大場社長
    • 松田さん

自己紹介

AWDwR3の紹介

  • 概要
    • ある程度まとまったアプリケーションを作って技術を身に付けることができる
      • Ajaxまで含めた内容らしい
  • 第3版で変わったこと
    • 第3部
    • あまりない
    • Rails 2.2.2
      • 安定したバージョン
      • 「いつも本が出ると新しいバージョンが出る」
    • 国際化は「こんなんじゃ物足りない」 by @a_matsuda
    • ActiveResource についての説明
    • ルーティングのテストが熱いらしい
  • レビューの感想
    • 突っ込みすぎて Rails のバージョンが上がると役に立たない
    • 表紙がすごい
      • レールから離れて飛んでいってしまってる
      • 電車が速そうになってる
  • 話しているうちにほんの宣伝ではなくなってきている可能性

AWDwR3に見る開発スタイル

DHH の Rails vs みんなの Rails
  • コラムに「Rails にこういうのないよね」的なことが書かれている
  • Rails 1, 2, 3 になるにつれて,DHH だけのものじゃなくなってきた
  • 「レールはみんなの心の中にある」@a_matsuda
  • DHH の強いポリシー
    • 参照整合性制約
      • 外部キーを入れるとたいへんなことになる
      • プラグインで対処できはする
      • 最初は入れないで,本番に近づくにつれて入れていく感じ
      • 「外部キーなしでやりましょう!」を言う機会にはなる
        • だが年配の方には・・・・
      • Rails 3 になれば,ActiveRecord 使わなければ
    • マイグレーションによるデータ投入
      • migration でデータを投入しているが,DHH は良くないと書いて言っているらしい
      • マスタ系はやっている
    • 使わないアソシエーションを定義する?
      • 全部用意する必要はない @nay3
        • チーム内で使う関連だけを考えているほうがいいんじゃないか?
      • あとで書けばいいんじゃないの? @nay3 @a_matsuda
    • 複合主キー
      • オブジェクト指向的に STI をよく使う
        • テーブルの中身が気になるなー @a_matsuda
        • クラスの方が気になるんですよー @nay3
        • 紹介を先取り
    • REST
      • REST 率高い
      • 一番影響を受けたのが Scaffold
      • Rails 2.x 以降の Scaffold が REST 的になった
      • Rails の REST は HTTP Method とリソースURIであれこれする
      • Rails は REST に忠実なフレームワーク
        • Rails 界隈では REST と親和性が高い
      • 前田さんはあまり REST をお好きではない
        • 普通にブラウザで使うアプリケーションなら,そこまで頑張らなくてはいいのでは?
        • 軽く考えればいいんじゃないの? @nay3
        • 結構頑張って作る @a_matsuda
      • Practical に役立つ部分だけで良いんじゃないのか
      • REST はガラスの仮面に似ている @nay3
        • 4つのせりふだけでやる寸劇がある.似ている
    • ActiveSupport
      • Rails 症候群 = なんでも Open Class で拡張したがるヤツが多い!
      • でもそれが許される文化が Rails
      • やるのは中二だけ @nay3
      • アプリケーションでやるのはどうかと思う @前田さん
        • 限定的に使えばいいけどねー
      • 1.days.ago とか英語っぽくなってしまってる
      • 好きな method / 嫌いな method
        • Object#try が大好き @a_matsuda
          • ほんとに良い機能なら Ruby そのものに入れるべきじゃないかと思ってる @前田さん
        • Rails から Ruby に逆輸入はいいんじゃないの?
    • RSpec
      • 古い人たちは RSpec が好きじゃない
      • RubyConf では matz が Internal DSL をもっと使いましょうーと言っていた @a_matsuda
      • まるで英文で書いて実行できる
      • オブジェクト指向の次のパラダイム
        • 何がオブジェクトで何がメソッドかが
世界の Rails vs 日本の Rails
  • RubyWorldConference では世界の Ruby.日本の Ruby の話があった
    • Jeremy Kemperを呼びたいと言ったのは前田さん
    • Rails comitter と Ruby commiter
      • Ruby わかってて Rails わかってる人は少数
    • Rails が出てきたときにちょっと嫉妬した @前田さん
      • 「ここまではなー」という内容に踏み込んだ

Railsの進化

  • Rails 3
    • WEB+DB PRESSRails 3 特集書きました @a_matsuda
    • agnostic
      • 選択の自由が我々に与えられる
      • Rails っぽければ Rails って呼んでいいよねー
        • Rack に乗る何かであればいいんじゃないか
    • Merb を取り込んだ政治力と懐の広さ
    • 「決められたレールなんてなくなってしまうんだ」と言うのが Rails 3
    • Rails + Merb = Rails 3
    • みんな Jeremy Kemper のを見ようぜ!
      • みんなちゃんと動画見ようぜ!
    • 広がると Rails エンジニアの定義が広がってしまう
      • 今まで通りのコードを書ける
    • Rails 3 になるとプラグインは全滅です

RubyRails

  • RailsGithub, RubySubversion
    • 中央がないのが git
    • Subversion が中央にあるのでいいんじゃないの?
      • あの Github のを公式だと言っていいんじゃないの?
    • Ruby は matz がコントロールしているのでいいよね
    • Rails アプリのリポジトリは git がいい @a_matsuda
      • 文化的にマッチする感じ
      • git はアジャイルにマッチする
      • マージが賢いので,分散開発に向いている
    • Ruby の方が若干保守的
      • ユーザとしては保守的がいい
      • 弄る側はもっともっと!な感じ?
    • Ruby 1.9.2 が出たら Ruby 2.0 の開発始まるので,みなさんのご協力を
      • RubySpec
        • Ruby 1.9 が出ない -> Rails 3 が出ない -> 本が売れ続けるという流れ
      • Ruby の trunk で RubySpec 動かしてみて,みんないろいろやりましょうー

懇親会

  • Tokyu.rb 席完成
    • ひとまず食う
  • いろんな人乱入
    • ありがたい話など
  • 最後に g 席に乱入してきた
    • 社長にご挨拶も