RubyKaigi2022で発表した。オンライン参加で、発表は録画だったので、発表したかどうかは奇妙な感じだけど、ともかくできるだけのことはやりきった。
僕にとって、RubyKaigiは2013が最初の参加だった。以来「いつかは発表を……。」と思ってはいたけど、ネタがなかったり、CFPを出したけどRejectだったりだった。
今回、"Rubyに関する国内最大級の国際会議"に初登壇できたのは万感の思いだ。本当に嬉しい。
一方、採用率(採用数 / CFP数)は実は2倍もない。つまり誰にでもチャンスはあって、やれる覚悟があるかどうかが重要なのだ。みんなも発表やってみよ。
KPI
"GitHubリポジトリのスター100個"を目標にしてたけど、結果としては30くらいだった。
https://github.com/ksss/orthoses
やはり何をするものか伝わらなかったり、どうやって使うか分からないから試せないなど、色々と足りないと思うので目標に向かってがんばっていきたい。
トークの反応
良かったのか悪かったのかはよくわからない。なにせ何人の人が会場の席に座ってたのか分からないし、何人がオンラインで観ていただけていたのかも分からない。
Twitterの反応はそこそこいただけたと思う。本当に嬉しかった。Twitterに書いていただいた感想は最後に乗せるが、良さげな反応をいただいて光栄だった。
トーク内容
技術的な詳細(TracePoint系やRBSのマージ系)はRubyKaigiっぽいと思いつつも省略した。実装はコード見て。
代わりにミドルウェアの仕組みや書き方を多めに解説し、エコシステムを作る目標によせた。発表は宣伝効果が高いはずなのでこれを狙った。
実は伝えたかったこと
エコシステムを作りたい
自分にしては大きな規模の構想なので、エコシステムを作って人を巻き込んでより大きなことをやってみたい。モデルとしてはfluentdだ。あんな感じでコミュニティで拡張gemを作ったり使ったりするようになったらいいなあ。
gem_rbs_collection問題
railsアプリケーションの型付けという目標を達成するためには、既存のrails gem用の型では不十分で、大きく直さなければならない。
また、gem_rbs_collectionのメンテナンスコストを下げることも目標の一つなので、orthosesでrails gem用の型を生成する運用を狙って導入PRも作ったが、反応がない。ちょっとやり方が唐突かつ差分が大きかったのが原因かと思うので、これを改善してなんとか導入に繋げたい。
オンライン参加
直近、家族の病気が続いているのもあって間違った選択だったとは思っていない。
思ってはいないけどインパーソンが羨ましい気持ちは十分にある。せっかく"発表者"という話しかけられやすい状況なのに交流ができない。ノベルティは何一つもらえないので、物で思い出が残らない。。。
伊勢海老カレーはいただけたのが救いだった。味も美味しかったけど、作るのも楽しかった。ESM様ありがとうございます。
録画配信
壇上発表ではなく録画配信は初めてだったけど、これはこれでメリットがあるように思った。 トーク以外に力が割ける。
視聴者様の理解に少しでもつながればと事前の予習記事を用意してスライドも当日朝に公開できた。 トーク中もTwitterを覗いてlikeをつけてまわった。質問ぽいのはリプライもした。自分のトークを観てくれて反応までしてくれているのは嬉しい。尊い。 「ちなみに」みたいな補足情報を投げれるのも録画配信のおかげだった。
体調を考慮しなくてもいいので確実に発表できるし、録音もちょっとずつ撮ってそれぞれをつなげるYouTuber方式ができた。
録画方法
録画はKeynoteとiMovieを使った。Keynoteには録画機能があるので、これで頭からスライドに合わせて声を撮り、かんだりしたらやり直しつつ少しずつ前に進む。完全に声優のアフレコ現場だ。 Keynoteの発表者ノートに話す"セリフ"を完全に書き出す。これが台本だ。 マスクをしてポップノイズを減らし、ゲーミングヘッドセットのマイクで録音する。ノイズを減らすためにクーラーの音が入らない締め切った部屋で撮った。汗だくになって二晩かかった。途中でスライドを足したりしたけど、時間にして6時間くらい。 Keynoteで録画ができたら、iMovieで編集作業。 編集作業は、間を調整したり、クーラーや洗濯機や風の音によるの背景ノイズを除去したり、音レベルを調整したり、咳払いをカットしたり。Keynoteである程度NGとかはなくなっているはずなので一晩で終われた。 最後にmp4動画とKeynoteファイルを提出。keynoteファイルには日本語での"セリフ"が入っているので翻訳しやすくなったはず。
英訳
本番中に英語の放送も気になって見てみたが、「自分の話したことが英訳される」という経験したことのない感動があった。英語版もYouTubeに上がったらいいなあ。
しゃべり
何年も子供に絵本を読み続けて身につけた技能として、「色々な声色で子供にも分かりやすく書いてある文字を読む」というスキルを身に着けていることに気が付き、これを活用したかった。
もっと堂々とした引き込まれるような分かりやすい発声を心がけたが、実力不足でボソボソとしてしまい怪しいセミナーみたいな謎の雰囲気が出たっぽい。
別セッション
自分の動画はイヤというほど観ているので裏番組のSyntax Treeのセッションも観ようと思ったけど、Twitterで思いの外反応をいただけてこちらの反応に忙しくて観れなかった。
スポンサー
僕の表現方法がまずくて、まるでorthosesプロジェクトにGitHub社とWantedly社がスポンサーとして付いているかのような表現になってしまった。 正しくは、2社とも個人のとしてGitHubスポンサーをいただいているだけで、orthosesプロジェクトとは関係ないです。なんなら個人スポンサーがついた理由も分からずにいる。
もしものときのために
もし通信障害が起きたときのためにYouTubeに動画をuploadしてた。こちらは使う機会がなくてよかった。配信チームに感謝。
Railsアプリケーション
やっぱりRailsアプリケーションの型生成例を出したほうがインパクトがあるとは思うので、これはなんとか提示したかったところ。手元では作れているけど、適当なRailsアプリケーションを探したりとかまでできなかった。そのうちやりたい。
雑談
ここで、 @takkanm さんと @_ksss_ さんと話してます〜 よかったらふらりと適当に遊びにきてくださいhttps://t.co/bIdelf5AaO https://t.co/rYCs71iurH
— taea🐶 (@ken_c_lo) 2022年9月10日
このまま誰とも話さずRubyKaigiを終えるのは辛かったので雑談に加わった。 めちゃ楽しかった。
トーク中のTwitterの反応
さいごにトーク中のTwitterの反応を掲載します。 無許可掲載すみません 🙏
@_ksss_ さん滋賀出身なのか!!一緒なので、親近感。
— しげる 🎧️ (@_4geru) 2022年9月10日
甲賀は「こうが」ではなく、「こうか」#rubykaigi #RubyKaigi2022 #rubykaigiB
トークが超穏やかだ… チュートリアル動画みたいな安心感#rubykaigi #rubykaigiB
— teaaa🍵 (@nifuchi222222) 2022年9月10日
伊賀に甲賀が来たらそれは戦争なのでは…? #rubykaigi
— はのにくちゃん (@hanoniku_chan) 2022年9月10日
ksssさんのこういう話し方、はじめて聞く感じのやつだ #rubykaigi #rubykaigib
— うなすけ (@yu_suke1994) 2022年9月10日
型がありふれた存在でありどこでも使えると "Happy Hacking" につながる! #rubykaigi #rubykaigiB
— ヨーシャ(Iosif Takakura)💙💛@土曜東ヘ38b (@huideyeren) 2022年9月10日
CallTracer がそもそも便利そう説あるな #rubykaigi #rubykaigiB
— 蜘蛛糸まな🕸️ / HolyGrail (@HolyGrail) 2022年9月10日
なるほど、rakeタスクとして用意しておけば、型生成したいライブラリのアップデートやデカい機能追加が入ってもrakeタスクの実行だけで型定義の更新ができるみたいな、そういう感じかな?(理解が間違ってたら申し訳ない) #rubykaigi #rubykaigiB
— 【¥243,822】にしこりさぶろ〜 (@subroh_0508) 2022年9月10日
これアプリケーションに対してもできるってことは、つまりアプリケーションが依存しているgemのメソッドに全部型定義つけてくれるってこと…???え、マジ??? #rubykaigi #rubykaigiB
— 【¥243,822】にしこりさぶろ〜 (@subroh_0508) 2022年9月10日
#rubykaigi #rubykaigiB Rubyのgemって感じがすごいする.欲しい物が最初からすべて用意されている
— 相生ゆら (@Little_Rubyist) 2022年9月10日
できること多すぎて頭の中が「ホンマか?????」だらけになってり😇 #rubykaigi #rubykaigiB
— 【¥243,822】にしこりさぶろ〜 (@subroh_0508) 2022年9月10日
話し方の効果もあってか、これがあれば型の何もかもが解決するように聞こえてきた。 #rubykaigi #rubykaigiB
— 蜘蛛糸まな🕸️ / HolyGrail (@HolyGrail) 2022年9月10日
すごすぎひん?w #rubykaigi #rubykaigiB
— 森塚 真年@エンペイ (@sanfrecce_osaka) 2022年9月10日
夢のような技術だ! #rubykaigi #rubykaigiB
— ヨーシャ(Iosif Takakura)💙💛@土曜東ヘ38b (@huideyeren) 2022年9月10日
これカンファレンス終わったらライブラリの実装直接覗きにいこう、機能盛りだくさんでめちゃめちゃすごいから30分のセッションじゃとても追いきれない #rubykaigi #rubykaigiB
— 【¥243,822】にしこりさぶろ〜 (@subroh_0508) 2022年9月10日
orthoses教に入信したくなってきた...壺買います #rubykaigi #rubykaigiB
— さいくろん (@xaicron) 2022年9月10日
YARD、typeprof、rolify?!!!ナンジャコリャー、型開発がすごく楽になるんじゃないかな!!!
— ヨーシャ(Iosif Takakura)💙💛@土曜東ヘ38b (@huideyeren) 2022年9月10日
Orthosesすげー!!!#rubykaigi #rubykaigiB
型を書いていくこと自体には肯定的なのだが、それをアプリケーションでやっていくのは少し悩んでして、その原因になっているメンテが辛そうというのが解消されたら一気に広まっていきそうな気はする。 #rubykaigi #rubykaigiB
— rhiroe (@buta_botti) 2022年9月10日
Orthosesエコシステムの機運があるな。Rackアーキテクチャの恩恵かぁ #rubykaigi
— Masafumi Koba 🇺🇦 (@ybiquitous) 2022年9月10日
DefinitelyTyped/DefinitelyTyped 的なリポジトリの運用ってマンパワーかなり必要だし、自動生成に振り切れるならそっちの方が現実的かもしれない…🤔 #rubykaigi
— Masafumi Koba 🇺🇦 (@ybiquitous) 2022年9月10日
とにかく壺を買いたくなるトークだった(そうだっけ?) #rubykaigi #rubykaigiB
— 蜘蛛糸まな🕸️ / HolyGrail (@HolyGrail) 2022年9月10日
地味に気づいた点だけど、事前録画だと登壇者がTwitterの質問や感想にリアルタイムで答えることができてめちゃめちゃ福利厚生みを感じてよい☺️☺️☺️ #rubykaigi #rubykaigiB
— 【¥243,822】にしこりさぶろ〜 (@subroh_0508) 2022年9月10日
orthoses、最初は実験的なgemかなーと思っていたがとんでもない範囲をカバーしている規模と視野のでかいコングロマリッドgemだった #rubykaigi
— teaaa🍵 (@nifuchi222222) 2022年9月10日
orthoses & orthoses-rails の機能便利すぎるだろ! #rubykaigiB
— ルニ@元イカのプログラマ (@lni_T) 2022年9月10日
HappyHackingを実現するためのorthoses教……つよい #rubykaigiB
— teaaa🍵 (@nifuchi222222) 2022年9月10日