🛤

Kaigi on Rails 2025 に参加した

に公開

2025/9/26, 27 に開催された Kaigi on Rails 2025 に参加した。

Ruby 歴はまあまあ長いけど(28年くらい?)、Rails 歴は4年弱くらいなのでよわよわです。
Kaigi on Rails のオフラインはは初参加。

会社に参加費と交通費と宿泊費を出してもらったのでたまにブースの店番をしてました。

https://x.com/smarthr_dev/status/1971760739699642769

発表スライドはここにまとまっていて便利。

https://scrapbox.io/ruby-jp/Kaigi_on_Rails_2025

以下聴講したやつ。

Day1

SponsorLT

なぜかスポンサーLTで結婚式直前に婚約解消したというつらい話がされてた。

https://x.com/tmtms/status/1971397297243291711
https://x.com/tmtms/status/1971397574671335710
https://x.com/tmtms/status/1971398775014031807
https://x.com/tmtms/status/1971399064249040951
https://x.com/tmtms/status/1971401362740244874

Keynote: dynamic!

https://speakerdeck.com/moro/dynamic

Rails でアプリを作るときのやりかたは、はじめに設計を固めるんじゃなくて考えながら作っていく。Rails はアジャイル開発に向いてる。という話だった気がする。

https://x.com/tmtms/status/1971402745774211394
https://x.com/tmtms/status/1971405482301735346
https://x.com/tmtms/status/1971405662421983715
https://x.com/tmtms/status/1971408807978012805

高度なUI/UXこそHotwireで作ろう

https://speakerdeck.com/naofumi/uxkosohotwiredezuo-rou-kaigi-on-rails-2025

フロントエンド苦手なのであまりわからなかったけど、React は好きじゃないので Hotwire 使ってみたい。

https://x.com/tmtms/status/1971436114402742612

入門 FormObject

https://speakerdeck.com/expajp/an-introduction-to-formobject

いろいろ違和感があって頭に入ってこなかった。

  • ActiveRecord を継承したクラスじゃないとモデルとは言わない
  • Form オブジェクトはモデルではない
  • Form オブジェクトを使うのは Rails Way ではない

…みたいな

Form オブジェクトは1度のリクエストで渡される複数の ActiveRecord モデルに関連するデータを Rails Way で扱えるようにするためのモデルというものってことでいいと思うんだけどな。

https://x.com/tmtms/status/1971443378714968473
https://x.com/tmtms/status/1971444524707889622
https://x.com/tmtms/status/1971445012111184232
https://x.com/tmtms/status/1971446286521082079

もう並列実行は怖くない コネクション枯渇とデッドロック解決の実践的アプローチ

https://speakerdeck.com/katakyo/moubing-lie-shi-xing-habu-kunai-konekusiyonku-ke-jie-xiao-notamenoshi-jian-de-ahuroti

コネクションプールが枯渇してしまうという話だけど、コネクションプールの最大数は雑に1000とかに設定しても問題ないと思うんだけどな。
RDBへの接続数はプロセス数とスレッド数から決まるので、コネクションプールの最大数を厳密に計算して小さくしておく必要はないような。

https://x.com/tmtms/status/1971451443044548630
https://x.com/tmtms/status/1971454173259702314

Web Componentsで実現する Hotwire とフロントエンドフレームワークの橋渡し

https://speakerdeck.com/da1chi/bridging-with-web-components

Custom Element いいよねー。HTML の標準機能で独自の要素を作れるのがよい。

5年間のFintech × Rails実践に学ぶ - 基本に忠実な運用で築く高信頼性システム

https://speakerdeck.com/ohbarye/5-years-fintech-rails-retrospective

https://x.com/tmtms/status/1971476700673474613
https://x.com/tmtms/status/1971477743440363620

2分台で1500examples完走!爆速CIを支える環境構築術

https://speakerdeck.com/falcon8823/2fen-tai-de1500exampleswan-zou-bao-su-ciwozhi-eruhuan-jing-gou-zhu-shu-kaigi-on-rails-2025

CI を速くするための方策いろいろ。
GitLab は高機能でいいよね。GitHub も追いついて来てはいるけども。
オチが良かった。

https://x.com/tmtms/status/1971483605525528800
https://x.com/tmtms/status/1971484763975487871
https://x.com/falcon_8823/status/1971490939333222470
https://x.com/tmtms/status/1971491262911164765
https://x.com/tmtms/status/1971485107669340359
https://x.com/tmtms/status/1971485665666941113
https://x.com/tmtms/status/1971485924929438208

今改めてServiceクラスについて考える 〜あるRails開発者の10年〜

https://speakerdeck.com/joker1007/jin-gai-meteservicekurasunituitekao-eru-arurailskai-fa-zhe-no10nian

joker さんはパーフェクト Ruby on Rails のサービスクラスを書いてたらしい。
が、今では使わない方がいいと思ってると。
まー、ビジネスロジックは全部適切なクラスを作ってモデルに書けばいいよね。ActiveRecord を継承してなくても。
終盤のモジュラーモノリスの話はよくわからなかった。

https://x.com/tmtms/status/1971502482305274148
https://x.com/tmtms/status/1971503433665695825

Day2

2重リクエスト完全攻略HANDBOOK

https://speakerdeck.com/shoheimitani/double-request-handbook

いろいろ役に立ちそうな発表だった。

Range on Rails ― 「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ

ちょうどこの前、時系列データの扱いが複雑になったので、多重範囲型の Ruby クラスを作ってシンプルにできたところだった。
PostgreSQL に多重範囲型があるのは知らなかった。使ってみるのもいいかもしれない。

https://x.com/tmtms/status/1971790553491882158
https://x.com/tmtms/status/1971791100651491653
https://x.com/tmtms/status/1971792488026501392

非同期処理実行基盤、Delayed脱出〜SolidQueue完全移行への旅路。

https://speakerdeck.com/srockstyle/fei-tong-qi-chu-li-shi-xing-ji-pan-delayedtuo-chu-solid-queuewan-quan-yi-xing-henolu-lu

Solid Queue よさそう。

https://x.com/tmtms/status/1971798186374348801

ドメイン指定Cookieとサービス間共有Redisで作る認証基盤サービス

https://slides.com/kokuyouwind/kaigi-on-rails-2025

"複雑なデータ処理 × 静的サイト" を両立させる、楽をするRails運用

https://speakerdeck.com/hogelog/a-low-effort-rails-workflow-that-combines-complex-data-processing-x-static-sites

rails g authenticationから学ぶRails8.0時代の認証

https://speakerdeck.com/willnet/rails-g-authenticationkaraxue-hurails8-dot-0shi-dai-noren-zheng

勉強になる。
rails g authentication は、認証システムのひな型を作ってくれるだけで、自前で認証システムを作りたい人向けって感じなのかな。

https://x.com/tmtms/status/1971841254154817767
https://x.com/tmtms/status/1971843175204769887
https://x.com/tmtms/status/1971844468661014772
https://x.com/tmtms/status/1971845075937513671

Keynote: Building and Deploying Interactive Rails Applications with Falcon

Falcon よさそう。

Closing

Kaigi on Rails とてもよかった。

RubyKaigi や RubyWorld Conference よりも仕事の役に立ちそうな話が多くて、つい仕事脳で話を聞いてしまった。

おまけ

https://x.com/tmtms/status/1971795533728829461

2025/9/26, 27 に開催された Kaigi on Rails 2025 に参加した。

Ruby 歴はまあまあ長いけど(28年くらい?)、Rails 歴は4年弱くらいなのでよわよわです。
Kaigi on Rails のオフラインはは初参加。

会社に参加費と交通費と宿泊費を出してもらったのでたまにブースの店番をしてました。

https://x.com/smarthr_dev/status/1971760739699642769

発表スライドはここにまとまっていて便利。

https://scrapbox.io/ruby-jp/Kaigi_on_Rails_2025

以下聴講したやつ。

Day1

SponsorLT

https://x.com/tmtms/status/1971397297243291711
https://x.com/tmtms/status/1971397574671335710
https://x.com/tmtms/status/1971398775014031807
https://x.com/tmtms/status/1971399064249040951
https://x.com/tmtms/status/1971401362740244874

Keynote: dynamic!

https://speakerdeck.com/moro/dynamic

https://x.com/tmtms/status/1971402745774211394
https://x.com/tmtms/status/1971405482301735346
https://x.com/tmtms/status/1971405662421983715
https://x.com/tmtms/status/1971408807978012805

高度なUI/UXこそHotwireで作ろう

https://speakerdeck.com/naofumi/uxkosohotwiredezuo-rou-kaigi-on-rails-2025

https://x.com/tmtms/status/1971436114402742612

入門 FormObject

https://speakerdeck.com/expajp/an-introduction-to-formobject

https://x.com/tmtms/status/1971443378714968473
https://x.com/tmtms/status/1971444524707889622
https://x.com/tmtms/status/1971445012111184232
https://x.com/tmtms/status/1971446286521082079

もう並列実行は怖くない コネクション枯渇とデッドロック解決の実践的アプローチ

https://speakerdeck.com/katakyo/moubing-lie-shi-xing-habu-kunai-konekusiyonku-ke-jie-xiao-notamenoshi-jian-de-ahuroti

https://x.com/tmtms/status/1971451443044548630
https://x.com/tmtms/status/1971454173259702314

Web Componentsで実現する Hotwire とフロントエンドフレームワークの橋渡し

https://speakerdeck.com/da1chi/bridging-with-web-components

5年間のFintech × Rails実践に学ぶ - 基本に忠実な運用で築く高信頼性システム

https://speakerdeck.com/ohbarye/5-years-fintech-rails-retrospective

https://x.com/tmtms/status/1971476700673474613
https://x.com/tmtms/status/1971477743440363620

2分台で1500examples完走!爆速CIを支える環境構築術

https://speakerdeck.com/falcon8823/2fen-tai-de1500exampleswan-zou-bao-su-ciwozhi-eruhuan-jing-gou-zhu-shu-kaigi-on-rails-2025

https://x.com/tmtms/status/1971483605525528800
https://x.com/falcon_8823/status/1971490939333222470
https://x.com/tmtms/status/1971491262911164765
https://x.com/tmtms/status/1971484763975487871
https://x.com/tmtms/status/1971485107669340359
https://x.com/tmtms/status/1971485665666941113
https://x.com/tmtms/status/1971485924929438208

今改めてServiceクラスについて考える 〜あるRails開発者の10年〜

https://speakerdeck.com/joker1007/jin-gai-meteservicekurasunituitekao-eru-arurailskai-fa-zhe-no10nian

https://x.com/tmtms/status/1971502482305274148
https://x.com/tmtms/status/1971503433665695825

Day2

2重リクエスト完全攻略HANDBOOK

https://speakerdeck.com/shoheimitani/double-request-handbook

Range on Rails ― 「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ

https://x.com/tmtms/status/1971790553491882158
https://x.com/tmtms/status/1971791100651491653
https://x.com/tmtms/status/1971792488026501392

非同期処理実行基盤、Delayed脱出〜SolidQueue完全移行への旅路。

https://speakerdeck.com/srockstyle/fei-tong-qi-chu-li-shi-xing-ji-pan-delayedtuo-chu-solid-queuewan-quan-yi-xing-henolu-lu

https://x.com/tmtms/status/1971798186374348801

ドメイン指定Cookieとサービス間共有Redisで作る認証基盤サービス

https://slides.com/kokuyouwind/kaigi-on-rails-2025

"複雑なデータ処理 × 静的サイト" を両立させる、楽をするRails運用

https://speakerdeck.com/hogelog/a-low-effort-rails-workflow-that-combines-complex-data-processing-x-static-sites

rails g authenticationから学ぶRails8.0時代の認証

https://speakerdeck.com/willnet/rails-g-authenticationkaraxue-hurails8-dot-0shi-dai-noren-zheng

https://x.com/tmtms/status/1971841254154817767
https://x.com/tmtms/status/1971843175204769887
https://x.com/tmtms/status/1971844468661014772
https://x.com/tmtms/status/1971845075937513671

Keynote: Building and Deploying Interactive Rails Applications with Falcon

Closing

おわり

https://x.com/tmtms/status/1971910681982370087
https://x.com/tmtms/status/1971795533728829461
https://x.com/tmtms/status/1971922836525928868

Discussion