RubyKaigiが物理で開催されたのでついでに紀伊半島の温泉地を回った

タイトルの通りです。Matzの宿題のRubyKaigiレポートブログパートは前半、後半はただの旅行記です。 よく考えたら今回の旅行は鉄道要素薄めなのでいい加減railway以外の旅行カテゴリが必要かもしれない。

RubyKaigi本体

気になったセッション

最終日は技術書典の原稿の詰めの作業しながらだったり、1日目は前日に飲みすぎて半分くらいダウンしてたりしたのでとりあえずいくつかピックアップを…

rubykaigi.org

rubykaigi.org

やっとJITとかコンパイルされた先のコードの話をされて多少気持ちがわかるようになってきたのが大きな成長だと思った。ある程度気持ちがわかるようになったきっかけとしてはここ数年RTA(speedrun)をたくさん見るようになり、特にスーパーファミコン以前のゲームにおけるバグありカテゴリのバグの解説を見たり読んだりする際にアセンブリの知識/概念が必要だったので、アセンブリやメモリの内容についてゲームの例で理解することで昔やった演習の記憶よりも実体験に近い理解を得ることができるようになった。WebAssemblyは昔のゲームみたいにArbitrary Code Execution(ACE; 任意コード実行)をされては困るのでスタックの保護やジャンプの保護がされているのは知っていて例外による大域脱出とかが難しいというのはなんとなく想像できていたが、「Asyncifyで解決できるよ」と言われて「えっそんなことやって大丈夫なの!?」と思ってしまった。…でこのへん気持ちはわかるとはいっても実際にやってしまうのは圧倒的な偉業であり、「普通なら何年かRubyKaigiで中間報告されながら進行しそうなのが一気に進んだ、そりゃあ初回からKeynoteに呼ばれるわけだ」という話を誰かがされていたのも非常に納得である。

rubykaigi.org

これだけは必ず聞く、と決めていたセッション…だったのだけど、Encrypted要素が1分程度で通り過ぎてしまった…。Pure Rubyで暗号処理を実装するのは学習目的を除いて行うべきでないのだけど、その上でどうやったら高速化が行えるか、というような内容なのかと思っていたが、どちらかというとバイナリパターンマッチがRubyにないのでその上でどうやって(encryptedかencryptedでないかは置いといて)バイナリ分析を行うプロトコルをミスなく実装するか、という話だった。今後encrypted部分に踏み込んでいくのに期待するとともに自分でもコード見て考えてみようと思った。

rubykaigi.org

そのうえで同様のプロトコル解析話。もしかしてmrubyがあればプロトコル解析がなんとかなるのか…?と思ったけどそういう話ではなく、バイナリの解析そのものはWiresharkがやってくれるけれど、その方法をどうやってWiresharkにmrubyのDSLで伝えるか、という話だと理解した。ただ愚直にWiresharkに理解させるだけでなくRubyistにとってそれなりに書きやすい・意味のあるDSLWiresharkに伝えられるように設計してる点がよいと思った。

なお幕間に好きなRFCの番号を聞いたのは私ですスミマセンでした。

物理開催について

IETFで本当に大事なのはWGミーティングではなくサイドミーティングや廊下、オンラインになってこれが死んだ」という話が標準化方面の方からされていたが、実際RubyKaigiも本当に大事なのは廊下でセッションのことや近況のことを話すことではなかったか?それをオンラインに慣れてしまった今改めて物理のカンファレンスに参加して実感した。

今回はオフィシャルでのパーティーやスポンサー主催のパーティーが行われないことになっていたが、この制約のため会合後の夕食は基本的に各人の人脈任せになってしまっていたのが若干難しかった。私はこれまでに何度か参加してた人と一緒に行動することで他の人と一緒に夕食に行くことができたが、会社からの参加が少なく(なお今までのRubyKaigiは同じ会社から出ていた人はおらず、今回もあと1人だけだった)かつ人脈がまだ限定的な人はこういうsocial eventに参加することが難しかったのではないか?もっともそれをどうやってフォローするかというと難しい問題で、そのためには公式に何かをorganizeする必要が出てきて、それができないのは感染症対策だから、ということなのだが…。

津駅近くのパブが「歓迎 RubyKaigi 2022」という張り紙を出していたのが衝撃的で、2日目に伺ったのだがRubyistでごった返していた。これは0日目に来た誰かが提案したという話だったが、これを見て寄ってきたRubyistもだいぶ多かっただろうし、これに乗っかってくれた店主の粋なはからいに感謝である。

新規の人と話すという点では自作キーボードを持っていったのはすごくよかった。今年も例によってキーボードKaigiが突発的に開かれて、気になった人が自分の作ったキーボードについて聞いてくれて話すことができたりした。みんなもキーボードを作ってRubyKaigiに持ってこよう。


ここからただの旅行記です。

旅程

9/7

9/11

9/12

9/13 (Tue)

温泉むすめパネル

これが今回わざわざこんな限界旅程した主な理由です。

ちなみに温泉むすめがまだ存在していない温泉地で今回通ったところには湯の峰温泉がありますが、こちらは純粋によさそうだったので再訪してみたいです。多分熊野本宮大社とセットですが、あえて再訪するんだったら熊野古道トレッキングとかになるのかな…?(フラグを立てない)

その他記録

路線バスのきっぷです。繰り返します、路線バスのきっぷです。 バスハイク168は2日間有効なので途中1泊挟むみたいなこともできますし今回みたいに途中下車しながら進むこともできます。

日本最長の路線バスである八木新宮線がどういう路線かは白鷺ゆっきー先生の文章が非常によく解説しているのでそちらに任せることにします。ただしゆっきーさんが乗ったのは逆向きの新宮から八木方面。

note.com

上野地での休憩時に日本最長の生活用吊橋というやつを渡ってきました。20分しか休憩がないので前の人が渡るのに手間取ると下手すると遅れそうになるのが怖い。

十津川村役場で下車、湯泉地温泉公衆浴場滝の湯にて入浴。こちらが十津川飛香ちゃんのパネルのあるところです。メシの場所は途中の道の駅の蕎麦屋もありますが滝の湯でもメシは食えます。滝の湯はかなり温度が高めの硫黄泉。十津川温泉全域的に源泉かけ流しをウリにしているとはいえこれはほとんど温度調整されてないのでは…?

そりゃあ山越えて申告しに行くよりも家でe-Taxしましょうってなるくらいの場所だわ。

3度目のトイレ休憩は十津川温泉。泊まるならこっちのほうが宿は多い?

ggでーす

勝浦といえばまぐろ…なんですが、20時を過ぎてやっている店が少なく(もしかしたら当日のお祭りの影響もあったかもしれない)危うくメシ難民になるところでした。

翌日はホテル浦島さんの日帰り入浴からスタート。忘帰洞と玄武洞という洞窟温泉がものすごくいい体験だった。海が間近で波打ってるのを見ながら入れる露天風呂はまさに絶品。

八木新宮線もすごかったけど龍神バス龍神線もなかなかのもの。いきなり奇絶峡という景勝地を脇目に通過するし、紀伊山地の急峻な山をぬって奥に入っていくとよくこんなところにバスが通ってるなという気持ちになってきます。この区間は1日4〜5往復、全線通しは4往復で終バスは紀伊田辺駅1500です。この移動が間に合うかがだいぶ肝を冷やしました…。

龍神温泉元湯前で下車、入浴後宿の季楽里龍神まで徒歩。バスとはいえかなり困難な道のりを通ってきたかいがあったというくらい温泉も風景も満足度が高かった。まさに𝒓𝒆𝒂𝒍 𝒆𝒎𝒐𝒕𝒊𝒐𝒏𝒂𝒍 𝑱𝑨𝑷𝑨𝑵... 弱アルカリ性の温泉は道後温泉で入り慣れてはいますがこちらはそれよりもつるつるするタイプのお湯でした。いろんなものが取れそう。

翌日は白浜まで降りてまずはとれとれ市場で昼食。海鮮丼に並んだのですがその隣のお造りコーナーは空いていて、どっちかというとこちらをメインにしたほうがよかったと思いました。下の刺し身小鉢が400円、ひらめのお造りが750円です。…え?400円!?!?

公衆浴場がCOVID対策のため町民限定とのことだったので白浜館さんの日帰り入浴で入浴。

白浜はなんというかポケモンリーグクリア後のエンドコンテンツみたいな感じの場所ですね(多分ルビサファ世代を想定して言ってる)。海水浴客を想定した張り紙が多く掲示されていました。当然今回はそんな用意はしてないので特に海で泳ぐことはせず…。