あまりこういった会に参加したことはなかったのですが、今はRubyとRailsに夢中なので自分の知らない楽しい何かを見つけよう、詳しい人に会って話を聞きたい話をしたいと思って参加してきました。
Emacsにだらだらと取ったメモ(話題に取り残されないよう注意しながらざっとですが)を見ながら振り返ってみます。
[Redmine + RESTful] 13:15-14:30
Yuguiさんのセッション。
まずは初めての人のためのRedmineの特徴。
- Rubyで書ける。
- 複数のプロジェクトを管理できる。
- プロジェクトの親子関係も持てる。(1階層)
- Roleに対する権限を一覧で管理できる。
- プラグインアーキテクチャ。
そしてここからRESTfulに関する議論へと突入。
RESTと言われているもの
- RESTful
- XML-RPC
- Hibrid
RESTfulフレームワークと言えばまずRailsという流れ。
操作対象となるリソースをURLできちんと表す→RESTful
大切なこと言いますよ:RESTで重要なのはGET! GET以外はどうでもいい。
RESTとは何なのか?
HTTPは分散アーキテクチャの世界初で唯一の成功例である。その成功の実績をRESTという言葉でまとめようという話。
そこで問題となるのが認証。色々な話が出ていましたが、印象に残っているところでは、
- 認証情報を毎回リクエストに含める方法であればRESTfulと思われる。
- サーバサイドはステートレスな世界でないとRESTfulとは言えない。
- 認証で処理を変えないといけないところはHTML情報の一部なのでは?
- RESTについて考える場合、認証はひとまず除いて考えるのが賢いし幸せ。
(認証ないとスパムが怖いけど・・・という余談で紹介されたRubyConf08の認証がイカス)
[JRuby] 14:40-15:55
koichiroさんのセッション。
まず、つかみのお話としてゆるふわとJRubyはDarknessなパワーで作られている件。.
Cのネイティブコードで書かれているRubyのモジュールは素直にJRubyで動かせない。
例えばYAMLパーサとか。とりあえずRubyで再実装して置き換えて後でJavaで実装した経緯も。
Rubyを使うと1行で書けるのにJavaで書く。
大変だけど、でもJavaで書いたらたいてい速い。事前にコンパイルできる。JITもある。速くなったとき嬉しい。
クラスの可視性がJavaとRubyで全く違うので注意が必要。
特にprotected要注意。privateもだいぶ違う。
作り方としては、
- rubyランタイムにクラス/モジュールを登録する。
- アノテーションを書く。
- 中身の処理を書く。
Javaは自分も仕事で最もよく使う言語であるので、話は理解しやすかったし、JRubyならうまく立ち回って仕事にRubyテイストを持ち込みやすいかもと思いました(笑)
[Git] 16:05-17:20
maihaさんのセッション。
- 今まで使ったことがない
- 遊びで使える程度に
- 仕事で使えるレベルに
最初に一通り、gitに関する概要をgit使いの方々に語っていただく。
- gitはリポジトリが複数あり得る。
- でも、あくまでもローカルリポジトリ(自分の手元)がメイン。
- だからgitはいろいろな操作が速い。
- 世の中git化の流れ。
最初のローカルリポジトリ作成から、やって見せていただいたので自分でもできる気がしてきます。
ただ、目の前で実行されているコマンドを、自分のMacBookでもトレースしてやってみようとしましたが、展開が速くて挫折。使ったことないので致し方ないと自分を慰めたわけであります(笑)
git使いになるための非常に実践的なセッションでした。最初cvs,svnしか使ったことがないのでチンプンカンプンかなぁと思っていましたが、主にsvnでこうやってたことがgitでうまくできないんだけど、どうするの?という様ないくつかのケースに対して実際にgitコマンドを実行しながら試して納得という内容。
今までsvnで満足していたのですが、これからはgitです(爆) svnからのリポジトリの移行もし易そうなので、さっそく今読ミのをソースコード管理をgitに変えてみようかなと思います。
#git-guiかわいいよgit-gui。
最後になりましたが、Rails勉強会@東京運営者の方々、会場を提供してくださったCTCさま、ありがとうございました。