Kaigi on Rails 2025に参加してきた
まず最初に、早押しボタンの話は別のブログでちゃんと書きます。こちらは私の参加記です。
参加してきました。例年は全部の時間にセッションの予定を詰め込んで丸二日間インプットの日だったんですが、今年はブース担当になったというのもありセッション半分ブース半分くらいの比重で参加していました。昼休みもほとんどブースに居たので、友達に挨拶する時間が減ってしまったのがやや心残りでした。
今年の心に浸みたセッション
Keynote: dynamic!
浸みますね。過去のKoRでも僕の心にくさびを打ってくれたmoroさんのキーノート。だいぶ最初の方からアジャイルの雰囲気を感じ取っていたけど、最終的にアジャイルの話をしていると答え合わせがあったので嬉しくなった。
生物は生きるために変化し続けなくてはいけなくて、システムやプログラムもまた同様であるという話と受け取った。最初から正解を選び取るのは極めて難しく、時間の経過と共に変化をせざるを得ない。そういった力学の中で、システムの強さは変更を入れやすい状態であり、変化をするための仕組み作りを怠ってはいけないという話。小さく丁寧に作り、フィードバックを得てより良く磨き上げていく。そのためには標準のパーツを使うことが大事で、必要以上に複雑なことをしない。日々ソフトウェアは変化していく。その場にとどまり続けるためには、全力で走り続けなければいけない。そのためのRailsとアジャイル。そんな話だった。
Web Componentsで実現する Hotwire とフロントエンドフレームワークの橋渡し
これめちゃくちゃ気になっていたんですよね。ViewにめっちゃJSゴリゴリ書いてある事は気になったけど、全体的に「そんなことできるんだ」という発見があって面白かった。とはいえ、わりとUJS的な世界観に戻ってきているな感もあったし、dataアトリビュートの量やべえなとも思った。銀の弾丸は無いんだね。
2分台で1500examples完走!爆速CIを支える環境構築術
これは直接聞いてないんだけど、スライドが面白くて好きでしたね。去年もTWOGATEさんの発表は面白いのが多くて、やはり物量をゴリゴリ捌くぞ系の話が好きみたいだ。今回は物量じゃ無くてテストの話だけど、まあ物量のあるテストを捌くぞと言う話なので同じようなモノだろう。
時間のかかるテストをいかに短縮するかの話も面白いし、物理ランナー用意するのも面白そうで好き。DHHもそう言っている。
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
これも当日聞いてないんですが、スライドが良かったので。これは直接聞いてみたかったなー。
「技術負債にならない・間違えない」権限管理の設計と実装
今年一番面白かった。権限管理の複雑さを4つのキーワードで言語化して、複雑性の一因は権限と役割のチェックを同じ場所で行っているからと説明していたのがとても腑に落ちた。また、クラスと権限を紐付けることで、CSやPdMがGitHub上の権限ファイルの配置を見た上で問い合わせ対応できるというのが素晴らしい副次的効果だと感じたし、その直感性の高さは開発の効率も良くすることが伝わってくるので素晴らしく感じた。
一方で、具体的な実装に関しては他のアイディアを取り入れてみたくなる印象を受けた。具体的に言うと、権限が複雑化していけばいくほど、リソースが増えていけばいくほど権限のファイル数が膨大に膨れ上がり、その増加数も単純な線形では無いことが気になった。また、ユーザーによるカスタム権限の入り込む余地がなく、より顧客が複雑な権限を求めてきたとき(もちろん開発側としては求めて欲しくは無いが)、終焉を迎えるように思えた。
登壇の冒頭で「このセッションは権限管理の議論に波風を起こすこと」と言っていたので、その目的を達する素晴らしいセッションだったと思うし、少なくとも自分の心には強い波風が立った。よく練られたセッションだった。エクセレント。このセッションのおかげで、既存の権限管理ライブラリの問題に興味が沸いたし、自作の権限管理ライブラリを作ることにも興味がわいた。実際、権限管理というのは現実世界でも非常に複雑な問題なので、無限の解決策とケースバイケースの最適解があり、ただ一つの正解はない。このセッションが議論を呼び起こし、複数の良い解決策がユーザーの手元にあるような世界になると良いなと思った。
全体の感想
今年は冒頭に書いたとおり、インプットの二日間というよりは色々試す二日間だったので、聞くセッションが減ってしまったのは少し心残り。聞けなかったスライドの中にも良い物が多く、やはりKoRはいいなぁと思った。
少し気になった点としては、会場の成約のせいか交流スペースの場所が遠すぎて行く気にならず、全然人と交流しなかったという点がある。パーティーではいろんな人と話せて楽しかったが、パーティーの場だけでは泣くもっといろんなところで交流したかったなと思った。ドリンクアップ系のイベントもまったくなかったしね(あっても行けなかったけど)。
ドリンクアップそのものが正義と思っているわけではないし、別の手段として事前事後の勉強会が非常に豊富なのでそれはそれで良いなと思う一方で、当日の熱い気持ちをどこかで話して発散する場所が欲しいなとも思った。
来年のKoRも楽しみにしています。