ニフティ本社にて、RegionalRubyKaigi の最初の instance である東京Ruby会議01に参加してきました。
会社に私物の MacBook 持っていくのは少々重いし、今日は豪雨になるかもということで濡れ対策の自信がなかったので、マシンは持っていかずに iPod touch でメモ取ってた。途中で日本語変換がもっさりしてきて、なるほどこれが巷で噂のメモリリーク疑惑かと。なので後半にいくにつれてメモが少なくなってく……。
気力と記憶の続く範囲で箇条書き。
- 角谷さんによるオープニング
- t-wada さん。他言語のライブラリをRubyに移植するノウハウ話
- テスト駆動開発動画の人
- 移植してみたのは Java で SQL のなんかするやつ。S2Dao の 2WaySQL というもの。
- 作業する前に考察すること
- 本当に移植すべきか?
- 既に同じことができるライブラリがないかとか
- 全部移植すべきか?
- そのライブラリのうまみはどこか。そこのところだけ持ってきて、他の部分は既存のライブラリ等で代替するといったソリューションはできないか。
- テストはあるか?
- テストの存在しないコードは Legacy Code である。
- 本当に移植すべきか?
- 大原則:一度に複数を相手にしない。
- 2つのアプローチ
- きれいに(Ruby らしいコード)
- (とりあえず)動く
- 逐語的移植
- 洗練フェーズ
- Ruby らしく。racc を使ってみたらしい。でもその話は略
- 恩返し
- 質疑応答より。Ruby と Java は結構近い。(逐語的)移植はそんなに大変じゃない。
- よしみさん classX の紹介
class A < ClassX has :a end
これで
class A def initialize(opt={}) @a = opt[:a] end attr_reader :a end
のような感じになる(インスタンス変数に入れるようになっているかどうかは未確認。Hash のままかも)。変更も可能にしたり、値の validation や省略時のデフォルト指定なども。
- こしばさん。 Win32OLE で Excel との連携話
- 手書きのイラストによる図でのプレゼン
- エクセルの構造化データエディタとしての底力はすごい
- xls.rb というのを作った。Excel を読み取って、ハッシュで返す。あとは好きに料理。
- LT
- 柳澤さん RailsOutliner
- ogijun さん。 Mac 愛を語る
- 須藤さん Rabbit 2008
- プレゼンツール Rabbit の思想を語る
- 大きい文字
- 100 を知り 10 を語る
- 抽象化
- いろんな方法で表示できたり、アクセスできたり。
- dRuby で繋げて制御したりもできる!
- 死なないためではなくて、生き続けるためのメンテナンス=新規機能の追加
- Rabbit は進化しつづける
- 訥々とした語り口だけど、さすがによく伝わるプレゼンだったなー。記憶にちゃんと残ってる(気がする)。
- Yugui さん 1.9.1 リリースについて語る
一応これで全発表のぶんメモと記憶を吐き出したと思う。やっぱり楽しかったし、classX みたいな結構すぐに使える便利そうなものもあれば、移植ノウハウ話のような為になる話も聴けて、これで無料だったとはかなりお得。主催者様、会場提供のニフティ株式会社様、発表者のみなさまに感謝。現地に行ったわたし達は勝ち組。
そして終了後 takkaw さんにお会いして夕食を一緒にして帰りました。KORG DS-10 を持ってたのでみせたり、拡張ライブラリの作り方について 1.8 と 1.9 の違いってどこかにまとまってるのかなとか、Ruby/SDL のサウンド再生部分をいじりたいとかそんな話をしたりしていました。というかなんかわたしが一方的に喋ってばっかりだったような。すみません。。。
Kaigi に出るとなんか作りたくなりますよね。Kaigi駆動開発(KDD)。よし、また頑張るか。