RubyKaigi2009で発表してきました

RubyKaigi2009で喋ってきます - @takuma104 log

本日(会場/Ust)で聴いていただいた皆様、ありがとうございました! またスタッフの方々、とてもスムーズに気持ちよく話すことができまして、とても感謝いたしております。ありがとうございます! 実はRubyKaigi初参加だったんですが、非常に熱いものを感じてすごく楽しかったです。ぜひ来年もまた来たいなあと思いました。(今度はスタッフかなー??)

スライド

時間の都合上ちょっと端折ってしまった部分を入れたスライドをupしておきました。

あとCCの写真もスライド中使わせていただいています。ありがとうございます。

映像

また、Ustreamにおそらく配信されたものと同じ録画が上っていたようなので、貼っておきます。無謀にも途中のデモがなにげにlivecodingだったので、壇上で立ったままコーディングする的なのをもっと練習すべきと思いました。。(その辺グダグダです)

http://www.ustream.tv/recorded/1833622

リソース

僕が作ったリソースは以下です:

今回のセッションでご紹介させていただいたライブラリ/アプリ:

irb for iPhoneは、シミュレータでしか動作しないかもしれません。あと、RubyCocoa for iPhoneは、3.0対応が不十分なため、2.xでビルドするといけると思います。この辺、しばらくメンテしてなったので、ちょっとメンテを再開してまず最新の環境でも簡単に動くようにようと思います。。

感想とか

今回セッションで話していて、途中で、みなさんiPhone持ってますかー?というのを会場の皆さんにお聞きしたんですが、「すごい!」と半絶句してしまって、ちゃんと言えてませんでしたが、ほぼ3/4以上の人が手を挙げていたような気がしました。アプリ開発している人ー?というのもお聞きしたんですが、こちらも1/4ぐらいでした。もっとアウェイな感じになるかなーとか思ってたのですが、Macセッションからの続きというのもあった所為か、会場のMac率も9割方みたいな感じで、このRubyコミュニティを見ても、iPhone色々来ているなあという感じがしました。

逆に今回のセッションの内容的に、RubyCocoa for iPhoneはデバック用だよ的な結論にしてしまって、なんというか、みなさんの(暗黙の)期待を裏切ってるようで、ほんと申し分けない気がしてきました。。というぐらい熱気がありました。

ということでMacRuby 0.5のほうでの可能性を探るのを、再開しようと思います。まえからも大分色々勉強してたりとかしているのですが、技術的に僕自身まだまだ追い付いてない感じです。。

このMacRubyはそもそもやってる仕事自体が大きいというのもあって、(なんせRuby自体をほぼ作りなおしてますので) 人手がぜんぜん足りてないそうです。iPhoneへの移植ともなると、さらにハードルが高いと。Vincentさんのセッションのなかで、MacRubyiPhoneへの移植話についてVincentさんが回答されていましたが、「対応検討中」とのことで、このままだとまだまだ道程はながそうです。

その辺Apple社がリソース投入的な意味で、どう気合を入れてくるかも気になるところではあったりするのですが…。どうなんだろう、期待できないのかなあ?? LLVMバックエンドって、Rubyにとってもすごい画期的だと思うんですけど。

現時点での僕自身の考えでは、iPhoneの移植では、MacにあってiPhoneにはない(Cocoaの)GCの部分をどうするか、という部分がいちばん問題になるのではないかと思っています。単にMac(Leopard〜)で使われているGCのAutozoneライブラリを移植すれば完了!という話ではなく、そもそもFramework側がGCに対応していないので、これをRubyCocoaのようにMRIGCと、NSAutoreleasePool併用みたいな感じにしないと、まともに動かないのでは、と。これだけでも相当大変な仕事になるのではないかと感じています。まずは、その辺も、とっかかりというか、足掛りというか(本当にボトルネックはそこなのか、というのも含めて…)、そこを探すところから始まる気がしています。