RubyWorld Conference 2012 で講演してきた

2009年から毎年開催されている、RubyWorld Conference 2012 で講演してきました。大舞台なのでえらい緊張しました。

最大の戦利品。Rubyさん。


今年も「これが RubyWorld Conference だ!」という感じの講演が沢山出てた。

以下、感想をだらだら、自分の講演について。

感想

Dave Thomas さんの基調講演

達人プログラマーことDave Thomasさんの講演。初めて肉眼で見れた。マジ感動。エンジニアリングとその上位階層の抽象的な話を、行ったり来たりしながら縦横無尽に話が繰り広げられていてとても面白かった。工学の視点では曖昧さは嫌われるが、工学をどこでどう生かすかという場面になると、別に科学的な意味での再現性や系統だった定義の重要性よりも違った価値観が支配しているもので、そこからRubyの良さが醸し出されてるんだ的な話だったような気がする。芭蕉やらウィトゲンシュタインやら出てきたところで、私は「ほーへーはー。流石でございます。」としか言えなかったわけですがw。

大学生の頃に本屋の棚で見つけた発売間もない達人プログラマーを買って読んだころは、大学生なので「なるほど、世のプロはこう考えてこうやるのか」と思って社会に出たら(ry。で、社会人成り立てのころは「達人"プログラマー"ってタイトルは、分かるんだけど日本のロール的には読むべき人が手に取らなさそうなタイトルだなぁ」と残念がってたんだけど、最近はむしろそうじゃない感じになってきたというか、あのタイトルのままで良かったと思える社会が広がりつつある気がする。

小林さんの『医療情報分野における標準化の動向と Ruby 言語による実装』

日々医師として働きながらも、OSSで医療標準規格のopenEHRのRuby実装を進めているお話。概要や日常について説明してくれた。

日本の多くの診療所で使われているそうで、バグると何億円と影響与えちゃうそうでハンパない。講演の終わり頃にはなんかの文法をパースをする必要があるので、パーサーのライブブラリ作って、アルゴリズムはどうのとか言い出して、医者やりながら本格的なプログラマってなんだそれと凄すぎて呆れてしまった。しかし、自分で必要なソフトウェアを自分で作るのはホント理想的で素敵ですなぁ。

そういえば、診療脳とプログラミング脳は使い方が真逆で切り替えが大変だと話していたので、懇親会で詳しく聞いたところ、診療は各種パターンを頭に広げて過去の経験や知識とマッチングしながら色んな各部署の連携を考えるので発散的になるが、プログラミングは物事を整理しながら収束させていくので、真逆なんだということです。いや、ようやるわ。

中坊さんの『大量データ処理時におけるRubyメモリ使用量削減対策』

ザ・大企業で使われそうなメールサーバのソフトウェア開発のお話。メモリが利用されすぎて困ったので、それをナントカするためのワークアラウンドを導き出す過程とその結果の紹介。最終的な結論としては、Ruby 1.9 や 2.0 使えば良いという身もふたも無い話だったが、一度 Ruby 1.8 で納品したシステムをそう簡単にリプレースはできないので、1.8でメモリをなんとか使わないようしのぐテクニックが紹介されていた。テクニックを導出するまでの道程は理にかなっているというか、仕組みの理解から導き出しているので見応えがあった。が、バッファのStringはループの最後でclear呼べとか聞いたときに苦労を想像して心で泣いた。

Aaron さんの『Real Time Systems in Rails

スーツ率の高い会場でいつものフレディ・マーキュリーネタが披露され、鉄板のつかみから始まった。あのお笑い能力、大阪出身の私には嫉妬である。

で、「こ、このスーツの中でサラミネタへ!?」とハラハラしていたら、Rails4のActionController::Liveの説明へ移り普通に勉強になる内容だった。ActionController::LiveとServer-Sent Eventsをうまく活用することで、サーバサイドの変更をフックして、画面の変更を再読み込み無しにするデモだった。あのデモ自身はライブラリ化されてないそうだが、技術的に可能であることが示されているだけでも凄い。JavaScript の Meteor のデモのようだった。

角谷さんの『“Above all, make it fun!” – we have grown in cultures: Ruby, Agile and Social Coding.』

「スーツ率が高いRWCの中でアジャイルやソーシャルコーディングの話をしようかと思ったけど、空気を読まずに違う話をします」的な出だし。Ruby文化には楽しさがあり、楽しさは仕事の重要度と関係ないみたいなお話。うまく、要約できないので飲み込みきれなかったんだろうけれども、聞いてる間はとてもいいなぁと思った。あ、途中紹介されていた逸話で「Q, 何故Matz(まつもと ゆきひろ)はRubyを作ったの。サイエンスとして?アートとして? A, ホビーとして。」というのがあって、これがとてもいい逸話で、お話されていた内容の一側面がうまく表現されていると思う。そーなんだよなぁ。強さや良い仕事とは柔らかさであるというか、そういうのをふっと受け止める感じが良い。

利用されていたスライドは↓にあった。よくご本人は背景画像とおっしゃってるのでご参考まで。
https://speakerdeck.com/kakutani/above-all-make-it-fun

社外含めて普段Kaigiなど来ない層に呼びかけて何人か来て貰ってるんだけれども、そういう人からも「ああいうのいいねー」って言ってて、反面その人の近くにいたコア・スーツな感じの人はホントにぽかーんとしていたそうで、それを聞いて空気読まなくて良い講演だったと思う。異文化衝突である。

で、この辺からワタクシの緊張が高まり始めており、徐々に人の話を聞けなくなる。

大場さんの『ソーシャルプラットフォームを支えるRuby

数万台のサーバを持つGREEのサーバ管理にRubyが一役買ってるよと言う話。RubyWorld Conferenceのスクリーンに最大サイズのPHPロゴが表示されるなど、極めて革命的な講演だった。サーバの管理やアプリケーションのリリースの効率を高めるためのダッシュボード的なアプリケーションで管理されており、自動化可能な場所で無駄なサーバ停止や人的リソースの浪費を食い止める工夫がなされている感じで、やっぱ違うでグリーさんという感じ。

最後は、なんか競合ソフト作ってる人たちと質問時間を使ってバチバチしてたけど、もう自分の講演が直前で緊張が高まりすぎており、よくわからなくなってた。

スライドは↓にあった。勉強になりますなぁ。流石PHPは稼げるで。
https://speakerdeck.com/koichiro/ruby-which-supports-social-platform

松村さんの『Ruby on Rails用モバイルアプリ作成フレームワーク"Pera"をリリース!』

すでに名前はPeraじゃなくてKannaらしい。数日前にペラだと響き悪いので、大工道具で用途的にも近いカンナでとか鶴の一声でなったそう。でもそれってFEPっぽいねとは思った。簡単にモバイルアプリが作れるそうで、確かにデモでは簡単に作っていて素晴らしい。
ただ、自分の講演直後のために、安心で脳みそが完全にふぬけており、あまりちゃんと聞いていない。ごめんなさい。

自分の講演

講演してきました。一週間前頃から「あれ?俺来週の今頃は講演終えてる?」って気づいたときから軽く緊張が始まり、最終的にはナーバスになりすぎて、多目的ホールの隅でじっと時間が経つのを待つという情けなさ。見かねてAsakusa.rbな人たちや色んな人がほぐしに来てくれました。ありがたやですわ。。。

いつまでも人の講演ばかり聴いてるだけだとなんだかなぁと思い続けて2.5年くらいは経過している。でも人の時間を1時間とか30分とか割いて聞いて貰うほどのネタなんて無いよねぇと悩んでたところで、デブサミの大場派懇親会で柴田さんから「篠田さんがやってる日常の紹介をSapporo RubyKaigiで話してみない?」と言っていただけたのが発端。「そんなの聞きたい人いますかねぇ?」「そういう発表が恒常的にあるのが大事なんですよ」という説得力ある後押し。で、そのときは勢いで「やります!」なんて言ったけど、あとで考えると自分の日常なんてKaigiに来るような人達に披露しても満足してもらえるような内容でも無いし、少し色が違うかなということで、結局札幌ではthinreports-railsの紹介LTとした。

なんやかんやで、色々考えて、今回のような内容ならRubyWorld Conferenceなら合ってるかなと思ったし、上司からも後押しを貰ったので、応募したわけです。あ、一応RWCの人ならこんなんでも満足するだろってやった訳ではないです。SI業界や会社のビジネスモデルやSIer的なエコシステムから見るとRubyはやっぱり奇妙な選択肢に見える訳で、でも自分は奇妙とかそういうのでやるべきじゃ無いしそうじゃないとそれなりに考えて日々を暮らしている訳で、その辺同じような人が大勢いる場だと思ったし、そういうのをうまく伝えてなんかの後押しになればなと、準備して発表に望みました。

沢山の人からよかったよと言っていただいて、ほんとにありがとうございます。やって良かった、やらせて頂きありがとう。