Kaigi on Rails に登壇してきました & 後日談

2020 年 10 月 3 日に開催された Kaigi on Rails に登壇してきました。
サイトデザインとてもかわいくて好きです😊
レールが Ruby のまわりをくるくる回ってるのとか、STAY HOME Edition ということで列車が駅舎に入っているのもとてもかわいい…。
各所にレール・電車のモチーフが散りばめられているのがとてもいいなあと思っています。

f:id:makicamel:20201007083957p:plain

CFP について

「初学者から上級者までが楽しめるWeb系の技術カンファレンス」をコアコンセプトとしていて、当初 CFP の推奨内容が「明日からのお仕事に役立つ内容」とあったので悩みました。
5 月に転職して以降セキュリティのチームになっていたのでその話も考えたのですが、「調べた内容をまとめる」系になってテンションがあがらない。。。

結果〆切ぎりぎりになって今回の登壇内容を思いつき、ガッと仕上げて提出したのでした。
TL でたくさんの方が複数応募している風景が見られて、「これは無理 😂」と思っていましたが望みも捨てきれず採択メールが来る前 1 週間くらいはずっとそわそわしていましたw

採択めちゃくちゃ嬉しかった。。。

登壇について

speakerdeck.com

325 個の ApplicationController とは地道に戦ってゆきたいと思います。

Gem を作ろう!という内容なのに当日「できませんでした!」はあまりにも格好悪いので頑張ってたんですが右も左もわからないことだらけで前週の 銀座 Rails 3 周年祭 の時も絶賛製作中でした1
のですが、その分「Gem を作ってみたいけど作り方わかんないし」「アイディアないし」という人に向けて、実感のこもったお話ができたのじゃないかなあ…と思っています。
(ご紹介しきれなかったんですが、作り始めのコードは TracePoint を使って集めたメソッドをファイルパスでフィルタするみたいな感じでほんとうにひどかった)
(この途中のコードを松田明さんにお見せしながら「これはひどいコードなんですけど」と言ったら「はい」と即答されて「なんとかせねば 🔥」と思ったりもしました)

ちなみに Callback は何回読んでも理解できなかったので紙に書き出して「これがああなって、これがこうきて…」みたいな感じでようやく理解できました。
後から複数の方から「あれは難しい」と聞いてそうか難しかったのかと思ったり、ふだんのお仕事で binding.pry を打っていていつも見るあの invoke_sequence が「キミのこと知ってる!!」ってなって顔なじみに会うみたいな気持ちになるという副作用もありました。これも楽しい。

どうにもこうにもわからなかったのでインターネットに聞いたりもしました。onk さんの発表でも紹介されてましたが、松田さんのこの資料はほんとうにすごい。

speakerdeck.com

ご協力頂いた方々について

前述の通り松田さんにご相談させて頂きました!あの「はい」のおかげでお尻に火がついたし Rails コードリーディングのきっかけになりました!ありがとうございます。
また Gem を公開する前から友人で同僚(つまり同じつらみを味わっている)の @neko314 さんに使ってもらって感想をもらっていました。
「めちゃくちゃいいと思います!!最高すぎる!」「これ普通に早く世の中に出したほうがいいと思います 🙌🙌」などと言ってもらってそれはもう大層モチベーションがあがりました。
「ぜひ使ってみてください」と言ったらすぐ使ってみてくれてこんな嬉しいフィードバックくれるの最高です。ありがとうございます。

Kaigi on Rails について

YouTube チャットで盛り上がれたり、 SpatialChat を使った廊下の再現や懇親会もあり、オフラインに近いような、「みんなと参加している」感がとてもあってとにかくすごく楽しかったの一言につきます。

また @toshimaru_e さんの FactoryBot the Right Way を受けて大量に不要なレコードを作ってしまっている factory をなんとかするぞと決意を決めたり、会社 Slack でも@kokuyouwind さんの Rails パフォーマンス・チューニング入門 が引用されていたり、@koic さんの登壇 を受けてスカッシュ & マージしてコミット粒度を模索する人がいたり、「明日からのお仕事に役立」っている感がとてもあります。
「明日から」だけでなくて まつださんのクロージングキーノート を聞いて Gem は有用じゃなくても車輪の再発明でもいいから作ってみようと楽しくなっちゃう人もいたりして、KaigiEffect をたくさん生むよいカンファレンスだったなあ…と感じています。

この状況下で多くの変更を余儀なくされてオンラインカンファレンスの知見もまだない中、運営とても大変だったと思います。運営のみなさまにとても感謝をしています。
第 1 回 Kaigi on Rails に登壇・参加できてほんとうに嬉しかったです。来年も楽しみにしております!

オンライン登壇で注意したいこと

そういえば発表する際に YouTube をつけっぱなしにしていたため自分の声がイヤホンから聞こえてくるという事態になり、時間もなかったので慌てて Mac の音声をミュートにしたのでした。
手元で時間を測ってはいましたが、3 分前、1 分前コールをガン無視するということになっていたと思います 🙏
その点はオンライン登壇される方は気をつけるとよいのかな、と思いました。

後日談

ということで後日談なのですが、リリースがあまりにぎりぎりで前日とかは準備の為会社を休んでいたので、実は発表時点ではお仕事のコードに ActionTracer をまだ bundle できていませんでした。
いざ PR を作ったところ、松田さん2からコメント3で「やっぱり TracePoint じゃなくても以下ぐらいで同じような挙動になってませんか?」とパッチが飛んできました。
github.com

ということで、最終的に ActionTracer から TracePoint はきれいさっぱり消え去ったのでした。ちゃんちゃん。


  1. リリースできたのは 9/30 (JST では 10/1)

  2. 松田さんはアンドパッド社の技術顧問をしてくださっています

  3. コメントで頂いたので、代わってコミットの形にしました