RubyKaigi 2024 に参加してきた
5年ぶりの RubyKaigi に沖縄/那覇へ。
やはり書ききれないと思うので順不同で。
やはりなんといってもぺんさんのキーノートには圧倒された。ひとりで TRICK を開催し 6つも弩級の作品を作り上げているのももちろんすごいのだけれども、それぞれの作品に今回の RubyKaigi のトークで紹介されるテクニックやトピックを盛り込み、そのセッションへの導入にするという構成の緻密さ、そしてこの発表が(表面上)主題としている「奇妙なプログラミング」作品が「表層的な表現」と「プログラムとして実行可能な論理構造」を持っているという重層的な構造を持っているというその特性そのものを「表面的にはアートとしてのプログラミングの紹介をしつつ、その実は RubyKaigi 2024 へのイントロとしての役目を果たしている」というこのキーノート自体の重層的な構造に織り交ぜているというこのメタ構造がすごい。後できいたところではキーノートの打診はCFPが close になった後のことだそうで、それからあれらの作品は作られたとのこと。もちろん各発表のことを意識して作ったとのことで、その労力はたいへんなもの。最高のキーノートでした。感動して鳥肌がたった。
金子さんはSAC2での少佐のいうところの「聖域に入っている」状態でずっとアドレナリンが途切れてなさそうだった。他のパーサー関連の発表ではIELRの発表をきいた。パーサーまわり(というか Lrama 勢力というか)全体として目指すべきところが明確でやるべきこともわかっていてそれをやる人もいて着実に歩みを進めているというので将来は安泰ですなという感じであった。アクション部を記述する新言語を作るという話になったらだいぶおもしろそうなので注目していきたい。Prism との比較でいうと今現在 parser.gem を使ってますとか prism を使ってますという gem などがなんで ripper じゃないの? というところを取材してみたい気はする。数年前になんでみんな fiddle じゃなくて ffi 使ってるのっていう時期があったけど(今もまだそうかもしれない)、使われてるのにはそれなりに理由があって fiddle はそのギャップを埋めるために目先のユーザビリティのための機能追加などをしてきたという経緯があるので、そういうエンドユーザーへの目配りというのも必要そう。
Day 0 は 2019 に続いて ESM さんのクルーザーにお邪魔しておひさしぶりの人達と会話するなど。あいにくの雨だったけどああいう立食パーティー形式にしては珍しく食べものがなくなってなくてしっかり食事できたしおいしかった。
WASM/WASI 関連の発表は 2つ katei さんと udzra さんのをきいて、だいぶ WASM 周りの環境が整ってたんだなというのを知った。まだあんま実用的に使えないな〜と思ってたのだけどネットワークももう使えるみたいなのでそろそろ真面目に使えるところがないかやってみたい。もちろん gem install が使えるようになるのも期待。
Shopify 勢の memory leak 修正や Object Shapes の解説や YJIT の最適化まわりの話はこれまでコミットとしては読んではいたけど理解が追い付いてないところを答え合わせとしてきいて、いろいろ確認や納得ができたのでよかった。YJIT まわりとか雰囲気で読んでるからなぁ。
KJ と Samuel と byroot とはいろんなところであいさつして、いつも backport の手伝いありがとうとか、PR のレビューお願いとか、backport リクエストあったらいつでも呼んでねとか頑張って話してた。会社から English speaker な同僚がいなくなって英語をもう 6, 7 年くらい喋ってなかったのでだいぶ苦しかったがたぶんなんとかニュアンスは伝わったんじゃなかろうか。
Official Party と After Party ではできるだけいろんな卓を巡って知らない人たちと話して、committer としてコンテンツになれるように努力した(無料でチケットいただいてるのでね)。trunk changes 読んでます、というひともいれば今回はじめての RubyKaigi です、という人もいて、Ruby じゃなくて Google Cloud の話とか LLM の話とかしたりもしたけどまあそれも一興。RubyKaigi のホスタピリティを高める一助になれてれば良いのだが。
After Party で 12,3 年ぶりくらいに conceal_rs さんにお会いして会話をしたのが印象的で、もうわれわれもいい歳になってきて後進に仕事を引き継ぐってことを考えるころなのかも、という話題になった。 ruby まわりで自分がやっていることというとブランチメンテナと ruby trunk changes で、ruby trunk changes については誰かに託すというのはちょっと考えてない。そこであらためて言語化したのだけど、自分はコミットを継続的に読むことはお勧めしたいけど若い人に ruby trunk changes のような活動をすることはあんまり積極的に勧められない。正直なところ労力に対して得られるものとか、その時間を別のことに振り分けられた時に得られるものとかのことを考えると、割の良い投資ではないと思うので。じゃあなんでやってるのと言われると困ってしまうのだけど、これはもうやり始めてしまって習慣になってしまってるから、としか言いようがない。ちなみにブランチメンテナとしては今回 kokubun さんが 3.3 のメンテナになり自分は引き続き 3.2 をメンテする(つまりこれまで最新の安定版をメンテしてたけど 1つ古い世代のをメンテする)ことになっている。引き続き自分もメンテナは続けるけど、こちらはプロセスの改善などもやっていって他にも引き継いでくれる人が出てくるといいなと思うしきっと出てくると思う。20024年に ruby を残さないといけないですからね。
会場で kakutani さんをみかけるとなんかホッとする。自分のなかでは kakutani さんはなんかこう、Rubyist のあつまりを体現している人なんですよね。実家に帰ってきたような安心感。
あと観光まわりだと、Day 4 に美ら海水族館とエメラルドビーチに、Day 5 にはおきみゅー(沖縄県立博物館・美術館)と千日という喫茶店にぜんざいを食べに。あーあと会期中は会場近くの「花はな商店 本店」という沖縄そば屋さんに 2回も朝食を食べに行った。あそこのそばは海海苔が練り込まれててツルツルでめちゃおいしかった。あと海ぶどう丼ともずくかな。もずくは沖縄で食べると本土で食べるのとでは別格でおいしい。やっぱ鮮度かな?
Kaigi Effect 的にはなにかな。まず WASM/WASI まわりは触ろうと思う。Lrama も実務的(ruby trunk change 的な意味で)にも役立つし読みやすい構造してそうなので中をみてみるかなぁ。YJIT と Fiber Scheduler まわりの理解も深めたいけど。

















