RubyKaigi2024に参加してきました。
RubyKaigiに現地参加することは初めてだったのですが、状況や運も相まってついに参加することができました。
Rubyを書き始めて17年経ちますが、まだまだ自分の知らないRubyやそのコミュニティの魅力に気がつくことができました。
RubyKaigiに参加できたのは
元々興味があったとか、業務委託先がスポンサーしてブースを出展することになったとか、理由は大小色々ありましたが、最大の理由は沖縄で開催してくれたので家庭内稟議が通ったからでした。
我が家では国内旅行に行く事が家族の趣味になっています。しかし、息子が産まれてから毎年の様に行っていた沖縄にはコロナ禍になってから足を運んでいませんでした。
アーリーバードチケットが発売されたタイミングで妻に「沖縄でこんなカンファレンスが」と話をしたところ、思った以上に妻が食いついてくれました。
気がついたら泳ぐ事が大好きな息子も沖縄旅行に全力で乗ってきて、我が家は家族全員で沖縄に行くことになり、私はRubyKaigiに初めて参加する事ができました。
RubyKaigiに行く前にやったこと
せっかく行けることになったのでどうせなら最大現に楽しんでしまおうと思ったのですが、私はRubyのコミュニティの知り合いが少なかったため、現地でどう楽しんで良いかよくわかりませんでした。
そこで目をつけたのがRubyの地域コミュニティでした。Rubyは地域コミュニティが盛んで定期的にイベントが各地で開催されています。まずは数少ない知り合いが運営に関わっているShinjuku.rbを皮切りにOmotesando.rbやスポンサー企業の事前勉強会などに積極的に参加してみました。
コミュニティに参加してみたのは大正解でした。わくわくしている気持ちを分かち合って、参加者たちとすぐに打ち解ける事ができたので、現地での再会を約束することで楽しみが増えました。
また、業務委託でお世話になっているTechouseさんがスポンサー企業として参加する事が決まっていたの、社内での事前勉強会などに参加させていただきました。
RubyKaigiのキーノートで最高に盛り上がった
会期中は色々なセッションを聞きましたが、一番心に刺さったのはDay1のキーノートです。tompngさんによる「Writing Weird Code」でした。
「奇妙なコードを書くこと」というタイトルでしたが、中身は奇妙というより魅せるコードについてのセッションでした。
特にQuineと言われる自分自身のソースコードを出力するプログラムはまさにプログラムコード自体が生きている様な錯覚を私に与えてくれました。ホールで中央ど真ん中に座って生で見られた事はとても良い体験でした。
Rubyという言語ならではの特性を使っているという話も含めてRubyKaigiのキーノートに相応しく、会場も大盛り上がりでした。
セッションの一言感想
満席で入れなかったセッションや裏番組で見られなかったセッションもあるので動画が公開されたらみたいです。
英語のセッションも頑張って聞きました。しかし、人によって聞きやすい英語とそうでない英語があって、聞きやすい英語でも6割くらいの理解度に留まってしまいました。これまた動画の公開が待たれます。
また、RubyKaigi後にRubyKaigiの話をする事で、当時理解できなかった事が理解できる様になってきていますので、動画を見直すとまた印象が変わるかもしれませんね。
Unlocking Potential of Property Based Testing with Ractor
PBTとRactorの話 テストで網羅性が欲しいと思う事はたまにあるので試してみたいです。
Long journey of Ruby standard library
gemの話 default gemsを減らして依存関係を減らす試みには感謝しかありません。
The depths of profiling Ruby
Pf2の話 競プロをRubyでやる時に使うと良さそう。
Vernier: A next generation profiler for CRuby
Vernirの話 Ractorがもっと流行ってきたら良さそう。
Ractor Enhancements, 2024
Ractorの話 並行処理の話が前に出過ぎていて、Actorモデルに言及している人が少ない印象があります。
An mruby for WebAssembly
wasmの話 まだwasmに触る事ができていないが興味だけはかなりあります。
Good first issues of TypeProf
Typeprofの話 今のGraphQLサーバのプロジェクトでTypeProfを導入できる様になったら是非貢献させて頂きたいです。
Lightning Talks
Parser色強めのLT会でした。CodeGeneratorを最近書いているのでParserの話は改めて聞きたい。
Ruby Committers and the World
わいわいしていてよかったです。
Using "modern" Ruby to build a better, faster Homebrew
Homebrewの話 古いバージョンでしか動かせないの本当に辛いですよね
ERB, ancient and future
erbの話。相変わらずせきさんの話は面白い。苦労話も良かった。
Matz Keynote
Rubyの話。過去も未来もみんながいきいきできる様に。
RubyKaigiの期間中のギャザリング
事前に地域コミュニティでもお世話になったとれびーさん(@treby006)やまきさん(@Kirika_K2)、一時期職場が一緒だったちーすけ(@16bit_idol)、アジャイルのコミュニティでいつもお世話になっているあきさん(@spring_aki)、そして業務委託でお世話になっているTechouseの皆さん、などと沖縄という地であちらこちらに知り合いがいる事が少し奇妙でとても心強く。ランチやMeetUpでご一緒させて頂いて話も盛り上がりました。
色々なスポンサー企業が出展されていましたが、Day2になるころにはRubyistならみんな友達だろうという謎の無敵マインドを身につけていたので、午前中に全てのブースを回ってお話とノベルティを頂戴して来ました。Rubymineのトートバッグはお気に入りです。
Day2のランチでは会場のなはーとの裏にあるLITORというカフェに行ったのですが、並んでいた山下さん(@M_Yamashii)と相席させていただいて、待ち時間が長かったとはいえセッション一つ分聞き逃してしまうほど話が盛り上がってとても楽しかったです。
他にもDay2深夜のRubyKaraoke、Day3のAfterParty、Day3深夜のRubyMusicMixinと、ただのプログラミング言語のカンファレンスの枠を大幅に飛び越えた楽しみ方ができました。
KaigiEffect
QuineとCode Generate Code Itself
Day1のキーノートに刺激を受けたので、RubyKaigi2024のフォントを参考にAA Quineを書いて見ました。
Quineを実際に書いてみて気がついた事は、プログラムコードを生成するプログラムコードは想いを増幅する力が備わっているのではないかという事でした。
ビジネスやサービスを作るプログラムコードがそうでないという訳ではないのですが、Systems Generating Systemsではないですが、Codes Generating Codesという響きが私の良さに刺さっていたという事が改めてわかりました。
最近では職場でも、良いと思ったプロダクトコードの雛形を生成するCodeGeneratorを書いてみたりしています。楽しいです。
また来年
RubyKaigiという場には人として、コミュニティ運営者として、そしてプログラマとして大変刺激を受けました。この温かい想いを大事にしつつ、来年の松山にまた参加できる様に妻に高知の良さを伝えて行きたいと思います。
家庭内稟議が通らなかったら一人で参加しようかなあ