Rubyちゃんこんにちわ

子育てエンジニアが綴る

RubyKaigi 2014 SEP 18 Day 1 日記

はじめに

初めての RubyKaigi で、今まで行きたいと思いつつずっと行けてなかったのでとても楽しみにしていました。

Rubyist の誰かが人に話かけた方がよいと言ってのを覚えていたので、知り合いの方はなるべく話かけず(今思うと失礼だったかも。。。)、偶然近くに座った人、発表者の方、ライブラリなどでお世話になっている方に声をかけてみました。

急に話し下手に話しかけられて困った人もいるかもしれないですが、色んな世界あるなと知れたので声かけてみて正解でした。

それと最初は個人で行こうと考えていたのですが、会社の方で業務として参加可能ということだったので、業務日として参加させていただきました。特にレポートの強制もなしで、金銭的な補助もそこそこ出るので、制度としては結構良いのではないでしょうか?興味があればお声がけください。

以下自分の参加したセッションの自分用メモ。何かもうすでに色々忘れているので、当日書くってのは結構大事ですね。。。

CRuby Committers Who’s Who in 2014

Ruby comitter の紹介セッション。登壇する人をセレクトしてくれたので、どのセッションを見に行くかとても参考になりました。

Build-up Ruby interepreter - What is easy and what is difficult? -

trade off の話はソフトウェア開発では多くありますが、trade off を超えるという言葉はインパクト大きかったです。

performance について(特に parallel かな)、C Extension の話があったりして中々難しそうでした。

lunch

SNS Game 開発している方、アルバイトでコード書いている学生の方と軽く話しました。

Controller Testing: You’re Doing It Wrong

命令的でなく、宣言的にコントローラを書こうという話。

テストはどうするのかというと shared examples を上手く使って、宣言っぽく書けるという感じだった。 納得したつもりだったのだけど、今忘れているのでスライドを後で見たい。

個人的な感想で言えば、Growing rails application と思想が似ているかなと思った。あまりコントローラで命令的なことをしないという意味で。

Eliminating Giant VM Lock in Ruby through Hardware Transactional Memory

最近 STM(Software Transactional Memory) というワードを Haskell 業務で使っている人に聞いていたので、Transactional Memory 関係のセッションということで行ってみた。

CPU のキャッシュサイズ考慮が必要だったり性能出すためには結構難しそうに感じた。

あとセッション聞いていて思ったけど、発表者の方は確実に Ruby をより良くできる実力のある人だと感じた。

Cores unleashed Part II: Introduction to GobiesVM (and Software Transactional Memory)

Golang で書かれた ruby vm 実装とのこと。一つ前のセッションと違って、CRuby とは完全に別実装なので比較は難しい。

https://github.com/brucehsu/GobiesVM

Coffee break

無限コーヒーうまー

Non-Linear Pattern Matching against Unfree Data Types in Ruby (Egison Pattern Matching in Ruby)

Egison 言語のパターンマッチを Ruby に持ってきた話。

https://github.com/egison/egison-ruby

そして途中から Egison の紹介(笑)。Egison 自体は昔に Lightweight Language 系イベントの LT で見たことがあり、そこから続けていることが素晴らしい。Rakuten さん Egison の仕事もできるとか凄いわ。

Hypermedia: the Missing Element to Building Adaptable Web APIs in Rails

slide

プレゼンが上手い。上手すぎる。

Hypermedia な API を作る方法の紹介。途中に何故 microdata なんか出てくるのかなーと思っていたら、そこに自作 gem hypermicrodata です。どーん!って感じで紹介して、そっから API とし て必要なもの取ってくるのねーという感じでした。

https://github.com/tkawa/hypermicrodata

この日は Cookpad も garage をリリースしていたり、Hypermedia な感じが来てますね。

https://github.com/cookpad/garage

“Gem of this Week” - building culture and making gem

Drecom さんの話。geminabox 使っているとのこと。うちは GitLab です。

間違って rubygems にリリースしないように、独自の gem 作成ツール作ってて良さそうだった。

他にも小さなことでも gem 化して、共通化しているのが印象的でした。どれくらいのサイズなら作るか迷うところだけど、プロジェクト多いと十分ペイしそう。

Ruby committers vs the World

少しグダグダ感あったけど、色々有意義な話が聞けた。

Party!!!

偶然近くにいた方と話したり、Elixir 仲間の方を見つけて Elixir どこに使うといいんですかねーみたいな話をしてました。

最後に

初 RubyKaigi 充実してました!!一参加者であっても結構疲れたので運営の人は想像つかないくらい疲れているだろうなと思いました。本当にお疲れさまです。おかげさまで楽しく参加することが できました。