Kaigi on Rails に参加

10月3日、オンライン開催された Kaigi on Rails STAY HOME edition に参加した。Kaigi on Rails は今回が第1回目。ツールは YouTube Liveで、参加者は 200人強だった。SpatialChat でのパブリックビューイングもあった。

コンセプト

Kaigi on Railsのコアコンセプトは 「初学者から上級者までが楽しめるWeb系の技術カンファレンス」 です。
Kaigi on Railsは技術カンファレンスへの参加の敷居を下げることを意図して企画されています。また、名前の通りRailsを話題の中心に据えるカンファレンスではありますが、広くWebに関すること全般(例えばフロントエンドやプロトコルなど)についてもカバーすることで参加者の知見を深め、また明日からの仕事に役立てていただければと考えています。
About - Kaigi on Rails

当日になってこのコンセプトを知ったのだが、とてもいいなと思ったので紹介。

所感

各発表について(一部)

Ruby Kaigi でも日本語で発表されていた Aaron さん。今回は View がレンダリングされるまでの流れを、コードを交えながらの説明。とても分かりやすかった。それから、Ruby についてのブログを読みたくて日本語を勉強し始めたという話があった。発表できるほどマスターしていてすごい。自分も今まで何度も挫折してきた英語の勉強を、プログラミングを始めてからは続けられているので、逃げないで頑張ろうと思った。

Railsパフォーマンス・チューニング入門」では、少し前に耳にしたAPMツールの話や、「重いクエリ三銃士」の話が勉強になった。N+1 以外にも注意すべきところがあり、やっぱりSQLの勉強も大事だなと思った。

Railsワンマン運転の手引き」は、アプリケーションが公開できる仕組みを、電車に例えていてとても分かりやすかった。その後にDNSなどの話もあったので、先にイメージができてよかった。

「継承とメタプログラミング満載なアプリケーションコードでもアクションとフィルタに悩まないためのGemを作った話」では、Gem自体の話もだが、Gemを作ることに対する考え方が勉強になった。技術があるからGemを作るのではなく、Gemを作ることで技術がついてくる。世の中にはたくさんお手本コードがあるので、とにかくコードを読んで、書くことが大事だとわかった。自分の課題を自分のコードで解決できたら気持ちよさそう。

「コードレビュー100本ノックで学んだRailsリファクタリング」は、今年エンジニアになった方のお話ということで、全部が明日役に立ちそうだった。特にコミットの粒度については、最近試行錯誤しているところだったのでよかった。

「育てるSinatra」は、自分も Rails の前に Sinatra をやったので面白かった。Sinatra でも工夫すればいろいろなことができるのだと知った。

「新ミドルウェアActionDispatch::HostAuthorizationと学ぶDNSのしくみ」は、最初難しそうな話だと思ったが、図や説明がとても分かりやすかった。DNSバインディングという攻撃を知らなかったので、勉強できてよかった。紹介されていた本をほしい物リストに登録した。

Rubyで書かれたソースコードを読む技術」と「ActiveRecordの歩み方」では、コードの読み方やメソッドの定義場所の調べ方などが勉強になった。ソースコード読みたいので読もう。デバッグなどのやり方もちゃんと勉強していきたい。

「ひみつきちを作りたい 〜「こどもれっどまいん」テーマ作りでの学び」は、Twitter で見かけたことがあったので詳しいお話が聞けてよかった。恥ずかしながら RedMine のことを名前ぐらいしか知らなかった。

「TDD with git. Long live engineering.」では、「コードレビュー100本ノックで学んだRailsリファクタリング」で聞いた話と合わせて、コミットについてよくわかった。自分で作業するときは作業の区切りでこまめにコミットすればいいが、pushするとチームのコードになるため、あとから変更理由を追跡しやすい単位でまとめておいた方がいい。fixup は知らなかったので、勉強したい。

最後はRuby Kaigi のチーフオーガナイザーもされている松田さんによる「基調講演」。Rails 歴は13年とのこと。自分も使ったことのあるGem、kaminari の作者でもある。OSS やりたいなら「パッチを書く」以外にやることはない。

まとめ

実際参加してみて、コンセプト通りのイベントになっていたと思う。初学者向けのテーマも多く、面白かった。YouTube のチャットや Twitter もにぎわっていた。SpatialChat には参加できなかったが、懇親会も盛り上がっていたようだった。

10時から18時まで全部見るのは長いかな?と思っていたが、ほぼ全部見ていた。

今年は新型コロナウイルスの影響で大変な中、このようなイベントを開催していただいてありがたい。来年もやるとのことだったので、楽しみ。来年はもっと内容がわかるようになっているはずなので、もっと楽しめるはず。

いろいろメモを取りながら聞いていたが、実際のスライドの方が分かりやすそうなので探してみた。見つけられた範囲で張っておく。

順次動画も公開される予定とのこと。

スライド

Viewがレンダリングされるまでの技術とその理解

Railsパフォーマンス・チューニング入門

FactoryBot the Right Way

Rails 6.1's ActiveModel#errors Changes [EN]

Railsワンマン運転の手引き

継承とメタプログラミング満載なアプリケーションコードでもアクションとフィルタに悩まないためのGemを作った話

Action Mailbox in Action

コードレビュー100本ノックで学んだRailsリファクタリング

育てるSinatra

ミドルウェアActionDispatch::HostAuthorizationと学ぶDNSのしくみ

Rubyで書かれたソースコードを読む技術

ActiveRecordの歩み方

Ruby 3.0におけるドキュメンテーションと端末制御の未来

ひみつきちを作りたい 〜「こどもれっどまいん」テーマ作りでの学び

快適なリモートワークを実現するために〜RailsでSSOを実現する3パターン

TDD with git. Long live engineering.

Sidekiq to Kafka 〜ストリームベースのmicroservices〜

基調講演