1/17(金)〜18(土)に開催された東京Ruby会議12に参加しました。

とても楽しかった!!!
- 前夜祭
- Diff of the conference-app from 2023 to 2024
- Alba: Why, How and What's So Interesting
- Rubyと暮らし、OSSに貢献し、登壇する ── 半年間続けた「OSSやっていきの集い」の成果と学び
- PicoRubyと暮らす、シェアハウスハック
- ゆるゆるMastodon 鯖缶生活
- 超入門WebAssembly ~Rubyのコードを眺めて完全に理解しよう~
- Rubyでつくるパケットキャプチャツール
- Git scrapingで始める継続的なデータ追跡
- Thinking about a map for Rails applications
- An OptCarrot Retrospective
- 本編
- 懇親会
- 最後に
前夜祭
前夜祭は第二部から参加していました。
クラフトビール美味しかったですし、最初はテーブルに着席してのスタートだったのでそこで一緒のテーブルに座った人とコミュニケーションを取るきっかけになりました。
発表もどれも面白かったです。
Diff of the conference-app from 2023 to 2024
自分はforteeというカンファレンス運営支援アプリの開発にちょこちょこ関わっているので勝手に親近感を覚えながら聞いていました。
カンファレンス当日をRails 8のRC版で動かしていた、すごい。
Alba: Why, How and What's So Interesting
ここの話が印象に残っています。
「こう書きたい」と思ってそのまま書けるのはたしかにRubyっぽさで、それを意識して作るの大事だな、と思いました。
(そしてRubyっぽい使い方をするライブラリの作成を助ける機能がRubyに備わっているのも良いなあと)
Rubyと暮らし、OSSに貢献し、登壇する ── 半年間続けた「OSSやっていきの集い」の成果と学び
SmartHRさん、「3割がOSS貢献未経験(つまり7割は経験者)」の時点ですごい。
社内に週次でOSS貢献レポートを流せるだけの貢献してるのすごいな#tokyorubykaigi
— muno92 (@muno_92) 2025年1月17日
これもそうですし、レポートによってOSSに貢献してる人や貢献先が周知されるのがめっちゃ良い話だなあと思いました。
PicoRubyと暮らす、シェアハウスハック
生活に結びつく身近なガジェットのコードを書くの楽しそう。
ryosk7さんとはその後の懇親会や本編でのアンチボッチランチ(後述)など、今回の東京Ruby会議12を通して色々お話できました。
ゆるゆるMastodon 鯖缶生活
自分が自由に使える砂場で色々遊ぶ、良いですよね。
Rubyのmasterブランチを動かす、何か趣味開発でやってみたい。
超入門WebAssembly ~Rubyのコードを眺めて完全に理解しよう~
WASIは名前を聞いたことがあるものの全然知らなかったので勉強になりました。
wasmランタイムとバイナリの両方をRubyで作るのすごい。
Rubyでつくるパケットキャプチャツール
最近体験しながら学ぶ ネットワーク技術入門を読んでパケットキャプチャしたりしていたので聞いていて楽しかったです。
プロミスキャスモードを使って宛先が自分のMACアドレスになってないフレームも受信すると聞いて「なるほど、そうやってパケットをキャプチャするのか!」となりました。
Git scrapingで始める継続的なデータ追跡
スクレイピングや公開されているAPIを叩いてのデータ取得、データの保存場所が微妙に困りがちなのでGit管理して履歴も辿れるようにするのは良いなと思いました。
紹介されていたツールで言うとDuckDB便利ですよね。CSVやJSONに対してSQLで検索するのに使ってます。
その結果を楽に可視化したいなと思うこともあったので紹介されていたYouPlotが気になってます。
Thinking about a map for Rails applications
分析手法についての説明が分かりやすく、また実際に便利そうなツールが動く所まで作られていてすごかったです。
(懇親会で聞いてみたら元々「こう分析すれば良さそう」という当てがあって作り始めた訳ではなくアドバイスを元に作っていったとの事で、それもまたすごい・・・)
An OptCarrot Retrospective
Optcarrotの事を知らなかったのでそんな経緯があったんだ、と聞いていて面白かったです。
実際にRuby3.2 (辺り?)で目標を達成していてすごいなと。
最後にOptcarrot上でマリオをプレイしているデモを見れたのも良かったです。
本編
そして本編。
会場に入ったら笹田さんが出店されていた本屋さんがありました。
色々と眺めてみて、全然知らない本が目に止まったのであなたの知らない超絶技巧プログラミングの世界を購入。
個人的には電子書籍派なのですが、本屋だとこういう偶然の出会いがあるのが好きです。
mameさんにサイン貰った!#tokyorubykaigi pic.twitter.com/Y2JUrDTD3t
— muno92 (@muno_92) 2025年1月18日
著者の遠藤さんにサインを書いていただいてそれだけでもとても嬉しかったのですが、サイン自体がQuineになっていて、後で実際に実行してみてテンション上がりました。
(何も見ずに空でサインを書かれていたのもすごいです)
~ > cat autograph.rb eval s=%q!puts "eval s=%q"<<33<<s<<33 #@muno_92さんへ #YusukeEndoh! ~ > ruby autograph.rb eval s=%q!puts "eval s=%q"<<33<<s<<33 #@muno_92さんへ #YusukeEndoh!
その後は発表を見たり合間にスポンサーブースを回ったり。
スポンサーブースはどこも面白く、またスポンサーノベルティが置いてある机で普段使っているRentioさんのチラシ・ステッカーをGETできて嬉しかったです。
Rentioいつもお世話になってます#tokyorubykaigi pic.twitter.com/wIP5N7q9Eq
— muno92 (@muno_92) 2025年1月18日
お昼にはアンチボッチランチの企画で@ryosk7さん、@taka_RUNTEQ_60aさん、@Okunichiyouさんとお昼を食べに行きました。
アンチボッチランチ!
— muno92 (@muno_92) 2025年1月18日
美味しかった &&色々話せて楽しかった〜#tokyorubykaigi pic.twitter.com/BiWZttsMyL
あとは会場に来ていたPHPerで写真を撮ったりプリクラを撮ったり。
盛り沢山で楽しかった!
ここからは見た発表を振り返っていきます。
Keynote
GitHubでの開発についての発表。
巨大なモノリスで開発するためのレビューの工夫やシステムをスケールさせるためのレプリケーションの仕組みなど1つ1つが「なるほど」と思う内容で「適切な対応を全部やっている」感じがすごいなと思いました。
発表を聞けて良かったです。
また、ちょくちょく「これはRails x.yからできるようになりました」と紹介されていて、YJITによるパフォーマンス向上も合わせRubyやRailsを着実にバージョンアップしている事のメリット分かりやすく出ているな、と感じました。
ただ、英語の聞き取りに苦戦して実況している他の人のツイートを助けに発表を聞いている感じになってしまいました・・・
あとはずっと英語で聞き続けているとだんだん頭が疲れてきたり・・・
DuolingoやSpeakを使ってはいるのですが勉強量が足りないな、と実感しました。
Ruby製テキストエディタでの生活
「勝つ」とは
自分が日々の生活で使うこと
とか
人間は「どうしてもほしいがまだ世界には存在しないもの」 を求めて(自分でつくるしかなくなり)「制作」をはじめる。
とかめっちゃわかる〜と思いました。
実際にTextbringerでプレゼンをされていたのもすごかったです。
混沌とした例外処理とエラー監視に秩序をもたらす
発表冒頭の例がグサグサ刺さりました。
Expected/Unexpected、Accepted/Unacceptedの分類、分かりやすくてなるほどと思いました。
functionalなアプローチで動的要素を排除する
動的なアプローチと関数型アプローチの違いの先、カリー化や関数合成などを使うと何故嬉しいかがしっくり来ていないので勉強していきたいです。
Ruby meets secure DNS and modern Internet protocols
ちょっと前にDNSについて勉強していたので「なんとなく分かるぞ」と楽しく聞いていました。
RubyKaigi 2023でDNS over HTTPSのDDR (だったと思います) が使われていた割合が紹介されていて、発表時間中と休憩時間で割合が目に見えて変わってるのも面白かったです。
(DDRに対応しているMacで発表を実況している時間帯と、Macを閉じてスマホでネットを使う時間帯の違いではないかとの事)
Regional.rb and the Tokyo Metropolis

地域.rb、色々なのがあるなとは思っていたのですが東京周辺だけであれだけの数があるとは!
発足時期や活動内容、運営体制など様々で、色んな地域.rbを知れたのも良かったですし単純に聞いていて楽しかったです。
Ruby と Rust と私 (仮)
RubyとRustで色々なツールを書いてきたからこそな違いや似ている部分が詰まっていて、聞いていて面白かったです。
また、単純に色々な実装方法を知れたのも良かったです。
Rubyで大きめのJSONをparseするときにprotobufを使うとか、Rustでanyhowやthiserrorを使うとか。
あ、あとこのブログを書いていてeagletmtさんで検索したらeagletmt/slack-thread-expanderの閲覧履歴がある事に気づきました。 (このツールが使われているSlackワークスペースに入っていたことがありました)
既にeagletmtさん製ツールのお世話になっていた・・・!
懇親会
たまにチネチッタに映画を見に行くので、懇親会会場を知った時に「あそこのお店か!」となりました。
会場へはノールックで行けたのですが、鶴見から川崎に移動して電車を降りたら周りに知った顔がいていつの間にかRubyistの集団に混ざっていたのは面白かったですw
川崎駅で降りたら自然とRubyistの集団に混じってた
— muno92 (@muno_92) 2025年1月18日
見た発表の感想を交わしたりRubyKaigi / RubyWorld Conferenceや地域.rbの話をしたり、型の話をしたりと楽しかったです!
最後に
前夜祭から本編まで色々な発表を聞けて面白かったですし、Rubyコミュニティの知り合いが増えたりコミュニティの事を知れたりして楽しかったです。
ここ数ヶ月Rubyを書くことから遠ざかっていたのですが、趣味で何か書きたいな〜と思いました。
運営の皆さん、素敵なイベントを開催して下さりありがとうございました!