Kaigi on Rails 2024 に参加しました!
はじめに
こんにちは、エンジニアのベーやんです。2024年10月25日から26日に東京で開催された Kaigi on Rails 2024 に参加してきましたので、参加レポートをお届けします。
2日間にわたって開催された Kaigi on Rails では、約40件のセッションが行われました。
どのセッションもとても学びがあり興味深かったのですが、その中で特に印象に残ったセッションをいくつかピックアップします。
ちなみに、NE株式会社は今回初めてスポンサーとして協賛しました。
セッション
Railsの仕組みを理解してモデルを上手に育てる - モデルを見つける、モデルを分割する良いタイミング -
メンテナンスしやすいコードを実現するために、モデルをどのように育てていくかについてのお話でした。
Service 層ではなくイベント型のモデルに注目し、必要なタイミングでモデルを分割することで責務を分けることができ、メンテナンスしやすいモデルを育てていくことができるとのことでした。
よく「Service 層は入れない方が良い」という話を耳にしていましたが、その理由について「私が考える最強の Service 問題」以外にも Rails の特徴を踏まえて説明がされていました。
Rails は層分割を減らした設計にして密結合にするメリットを受けているので、新たに層を追加するのは Rails way から外れることになり、Rails の長所を消してしまうかもしれないとのことでした。
私自身、Service 層の導入にあたって Rails の特徴まで踏まえて考えることができていなかったので、改めて Rails を知ることが大事だと感じました。
Sidekiq vs Solid Queue
バックグラウンドワーカーとして高いシェアを持つ Sidekiq と Rails 8 から標準になる Solid Queue について、その歴史を交えて比較されていました。
Solid Queue って実際どうなの?と疑問に思っていたので、誕生した背景や実績を知ることができたのはよかったです。
弊社の Rails を利用しているサービスにおいて、どのバックグラウンドワーカーを採用するか検討していた最中なのでとてもタイムリーな話題でした。
バックグラウンドワーカー選定の指針を示されていたので、メリットデメリットを見ながら決めることができそうです。
WHOLENESS, REPAIRING, AND TO HAVE FUN: 全体性、修復、そして楽しむこと
アーキテクチャは現実世界の問題を1つずつ解いていった結果、「そうなる」ものと言われていました。この考え方にはとても共感でき、手段と目的を見失わずに適切なアプローチが取れるようシステム全体を学び、Rails を学ぶ必要があると感じました。
また、変化を意識した設計においては、シンプルに作り、選択肢を増やすのではなく狭めないことが大事で、そのためのアプローチが標準の道具、標準の方法で、必要十分に作るということでした。そして、それは Rails を使いこなすことだと言われていました。
この基調講演を通じて、もっと Rails を理解したいと思いましたし、Rails way に乗って進むことが、最短で成果を出し、遠くまで進む秘訣なのだと改めて認識しました。
講演後には、これからも楽しみながら開発をしていきたいと前向きな気持ちになりました!
まとめ
初めてカンファレンスに参加しましたが、学びがあり何よりとても楽しかったです!
セッションを聴講しながら、一緒に参加したメンバーと「うちでも試してみたいね」と話し合い、日々の開発に対するモチベーションがすごく高まりました。
また、様々なブースや懇親会などで、他のエンジニアたちとも交流を深めることができ、たくさんの刺激を受けました。
来年もまた参加したいと思います!
そして来年はプロポーザル出してみるぞ〜〜 💪💪
NE株式会社のエンジニアを中心に更新していくPublicationです。 NEでは、「コマースに熱狂を。」をパーパスに掲げ、ECやその周辺領域の事業に取り組んでいます。 Homepage: ne-inc.jp/
Discussion