Studyplus Engineering Blog

スタディプラスの開発者が発信するブログ

Kaigi on Rails 2024に参加してきました!!

はじめに

こんにちは!技術カンファレンスが大好きなWebアプリケーショングループの羽鳥です。

10月のVue Fes Japan、Kaigi on Rails、そして来週にはFlutterKaigiとJSConf JPを控えており、充実したカンファレンスライフを送っております。

少し時間が経ってしまいましたが、弊社からも数名Kaigi on Rails 2024に参加してきましたので、その参加レポートです。

tech.studyplus.co.jp

羽鳥

印象に残ったセッション

Rackを理解しRailsアプリケーション開発の足腰を鍛えよう

hogelogさんによる2日間のRackのワークショップです。Rackアプリケーション、ミドルウェア、サーバーを手を動かして実装することで、Rackについての理解を深めるといった内容でした。

Railsを触っていると、しばしばRackという言葉を見かけますが、いまひとつ何なのかが分かっていませんでした。しかし、このワークショップを通してRackとは何かについて説明できるくらいに、完全に理解しました。ありがとうございます。hogelogさんのトークが面白かったのも印象的でした。

このワークショップの内容はGitHubに公開されていますので、興味がある方はぜひ。

Railsの仕組みを理解してモデルを上手に育てる - モデルを見つける、モデルを分割する良いタイミング -

speakerdeck.com

igaigaさんによるモデルに関するセッションです。私がRubyとRailsに入門する際に、igaigaさんの本を2, 3冊くらい読んだ覚えがあるので、是非聞きたいと思っていました。

モデリングのコツとして、イベント型のモデルを探すという行為を挙げられていました。例えば注文という行為を記録するOrderモデルなどですね。私はこのイベント型をしばしば見落としがちなので、意識しようと思いました。

今回のセッションのスライドは、ruby-jpのScrapboxにまとまっているので、興味がある方はこちらから見るのもよさそうです。

水口

感想

2日間、ずっとRailsに関する話題が語られているとても楽しい場でした。今年のKaigi on Railsにはプロポーザルを提出したのですが、残念ながら不採択となりました。

来年もカンファレンスを盛り上げる力になるためにプロポーザルを出したいと思っています!

印象に残ったセッション

Sidekiqで実現する 長時間非同期処理の中断と再開

speakerdeck.com

長時間非同期処理とSidekiqという課題に直面したことがあるので、課題感からユースケース別の実装パターンまでの課題解決の過程も素晴らしかったのですが、言語化しセッションの形に落とし込まれていたのも凄かったです。テスト実装方法も参考になりました。

そして、今年Sidekiqに導入されたIterationもとても気になっておりました。タイミングを見計らって検証し、導入できれば良いなと思っています。

github.com

Sidekiq vs Solid Queue

speakerdeck.com

こちらのセッションでは広く使われているSidekiqと、Rails 8.0のrails newからデフォルトで設定される新しいライブラリのSolid Queueを比較して、それぞれの特徴について知ることができました。

Solid Queueについては、2023年末の37signalsのブログを読んで気になっていた方も多いのではないでしょうか。

dev.37signals.com

特に良かったのがRubyのバックグラウンドワーカーの歴史が簡潔にまとまっていて、Delayed::JobとSidekiqくらいしか知らなかった私はとても勉強になりましたし、Sidekiq Pro, EnterpriseやSidekiq Wikiにも触れられていて「わかる」という気持ちでいっぱいでした。弊社はSidekiq Enterpriseを採用しており、ありがたく便利な機能を使わせていただいております。

おわりに

カンファレンスに参加すると、もっとその技術について知りたい、勉強したいという気持ちになれてよいですね! 来年のKaigi on Railsも参加したいです。そして、そのときはプロポーザルを出したいと思います。