はいどうもー!最近バイク&カメラにドハマリしているYOです。
先日は三重県文化会館で行われたRubyKaigi 2022に参加しました!数年ぶりのリアルイベントなので、ワクワクする気持ちが押さられません!
初日の早朝に最寄り駅について、これが見えた:
「津(つ)きました!」
この駅名の表示は、遠くから見るときに「?」に見えるようにわざわざ漢字表記を小さく下側に配置したという。遊びココロがあって自分は好きです。
駅から無料シャトルバスも出ていて本当に用意周到です!バスに乗って揺られて5分ほど、三重文化会館に到着しました。
入り口の撮影スポットもあったので、記念写真もバッチリ取りました!
カメラもやり始めて荷物が重くなったので、そろそろintelのmacbook proをm2のmacbook airに変えたいです!
今回も三日間でセミナはAライン、Bラインで別れて行われました。以下は自分が参加した公演の中で、面白かったり、新しい知見が得られたりした内容をメモ程度で記録しました!
もちろん、各公演の配信はそのうちRubyKaigiの公式Youtubeチャンネルで配信される予定なので、気になる方はwatchしてくださいね!こちら: https://www.youtube.com/channel/UCBSg5zH-VFJ42BGQFk4VH2A
Day1
Ruby meets WebAssembly
最近はトレンドに追いついていないので、今日までにRubyがWebAssembly上で動けることも知らなかったです。最近数年はPCもスマホにもBrowserはなくてはならない存在になりました。そのBrowserさえあれば、いつでもRubyの実行環境でできるようになりましたのってすごいです!
かんたんなDemo: https://ruby-compute-runtime-demo.edgecompute.app/ (消えたらごめんよ)
↑refreshするたびに日付が変更するサンプルですが、これが全部htmlの中でrubyコードを書いてた!
感想:Ruby環境をセットアップしなくても、browserさえあれば実行できるので、だいぶ楽な世の中になってきました。どこまで実用性ができるのかはこれから期待ですね。
lunch time
三重といえば伊勢海老、松阪牛などの高級食材!事前に近くの店も色々調べたが、まさかランチに弁当が用意されてるとは、嬉しい!そしてその弁当がまさかの:
松阪牛!!!ちなみに読み方ですが、
「まつざかぎゅう」でも「まつざかうし」でも漢字の「松坂牛」は間違いで、
「 まつさか(松阪) 」+「ぎゅう」または「うし」です。
日本に来てから12年、ずっと まつざか 牛って読んでた! >///< はずい。。。
うまかった!(ペロリ)
Tools for providing rich user experience in debugger
Debug Gemの話。自分はずっとbyebugを使ってきたが、この公演を聞いて少し試してみたくなってきた。VS Codeとの相性も良くて、step in step out,通り過ぎたステップに戻って変数の値を確認する機能もあって、使いやすそうです。よくDebugする人は「Debug」を使うべきですね!(なに?ダジャレ?)
こちらです:https://github.com/ruby/debug
感想:今度使ってみよー
TRICK 2022
最初これなんだろうって思ったが、Rubyコードを世界一かっこよく、意味不明化して、誰が一番を競うプログラミング大会です!解説付きで各入賞候補のコードを見せてくれていますが、全くわからないです。wRuby界のいち変態たち(褒めごとば)がマジですごすぎます。
Day2
Matz Keynote
近年「Rubyは死んだ!」とか、「Rubyなんてマイナー言語でしょ?」とか言われますが、そんなの関係ない!メジャーじゃなくても、価値が作り出しているのは事実:shopifyなどRubyを使ってる企業の時価総額を見ればわかるだろう?
Rubyは小さなチームで、早くプロダクトを作り出せることに価値をおいてある。そして、バックエンドエンジニアのみでシングルページアプリケーション(SPA)もかんたんに作り出せるツールとしての価値を重視している。
なので、他の人はどんなことを言いようが関係ナッシング!
そして、もっとRubyのことを発信したり、一緒に改善をしたりして、どんどんRubyのことを世の中に広めてくれてほしいMatzさんの切望な願いが込めたKeynoteでした!
感想:Ruby愛を感じさせる公演でした!
ruby/debug - The best investment for your productivity
またまたdebug gemの公演ですが、実際のユースケースをデモしながら説明を受けました。
Step-debuggingや、Frame navigation, Breakpoint commandsなどを紹介しました。
感想:使ってみよ!(2回目)
あっ、Lunch Time 忘れてました!
二日目も松阪牛弁当は出ていましたが、初日で食べれなかった人の為&個人的に別の幕の内弁当も食べてみたかったので、今日はこちら:
RubyKaigi2022 のプリントも入ってて雰囲気出ます!中身はこんな感じ:
うまかった!(後ろに松阪牛のしゃぶ肉が映ってましたね。これも柔らかくてうまいんだ!
How fast really is Ruby 3.X?
去年のRubyKaigi Takeout 2021でも、Ruby 3系でrubyが3倍速くなる!って話題で持っちきりでしたが、実際どのぐらい早くなったのかを計測した話です。
現状、shopify(発表者の会社)社内でもproductionで Ruby 3.x系を使うところが少なくて、YJITを実際導入しているところも少ないらしい。
そして、Rubyが速くなったからと言っても、プロダクトはRuby on Railsで作ってるので、Ruby以外の部分で足を引っ張ってる(おい!言い方w)ところもあって、実際Rubyの速度がプロダクトの最終的なレスポンスがすべて決まるわけではない。
感想:確かに、Rubyが早くなったので、プロダクトも(一部)早くなったが、Active Record側で待たされても速くならないですよね。早くなった恩恵は素直に受けて、プロダクト全体のチューニングも必要です!
Day3
mruby on Super Mega Drive
こいつにmRubyを動かした話。実はプレゼントのスライドもデモもこいつで動かしていたツワモノです!
SGDK - Sega Genesis Development Kitを使った話や、実際動かすのに大変だった点とかを話した。またデモ画面が完全にゲーム画面で、一般の人が見たら「こいつ何遊んでるんだ」ってなっちゃいそうです。w
こんなんでした!
感想:自分はSNES世代なので、Mega Driveは触ったことないが、ゲーム機にrubyコードを実行させるとかすごいことを考えるなぁ。
The better RuboCop World to enjoy Ruby
RuboCopは素晴らしいのはみんなも知っている。が、たまに指摘された内容が結構癖あって、それに従うと逆にコードが読みづらくなることもある。
Rubyは基本自由な書き方を押しているが、RuboCopは逆に書き方の自由さを制限してしまう。Ruby初心者はRuboCopの指摘を全部受け入れることで、かえって読みづらいコードや、RuboCopの指摘対応に時間を使っちゃって、本当のValueを出せていないこともある。
ほとんどのエンジニアの解決方法は、自分のRuboCopルールを書くことです。
でも、もっと良い方法はあるはずです。例えば、指摘時に「Good」と「Bad」の書き方だけではなくて、「suggest」とか「enforcement」、「information」などのワードを使い分けて、もう少しグレイゾーンをもたせたほうが良いかと。
感想:まさにそのとおり。自分もRubyを長い間書いていますが、結構RuboCopの指摘をIgnoreしていますなぁ。
Lunch Time(など)
3日目も同じ内容の弁当が出ていましたが、今日はまた松阪牛弁当にしました!まぁ、同じものなので、Teatime時のものも少し紹介します!
3日目に出てきたカステラですが、RubyKaigiのプリント(?判?)が入っててとっても可愛いです!食べるのがちょっともったいないぐらい!
sponsor booth
今年はリアルイベントなので、スポンサーブースもちゃんとあります。各会社ももちろんこれをチャンスに、自社のサービスの紹介や、採用情報などをバンバン出しましたね。こんな感じです:
終わりに
たくさんの公演、スポンサーブス、数年ぶりにたくさんの人とリアルに会えるイベントに参加して、とっても濃い3日間でした。
主催側のクロージングで、RubyKaigiの主催動機の一つとして:
We want To Meat Meet People
公演を聞くのももちろんのこと、RubyKaigiは毎回日本の違う都道府県で主催する目的の一つとしては、その地方を盛り上げて、もっと色んな人(海外の人も含めて)をご当地のことを知ってもらうことです。
自分も今回のイベントを通して、三重県のことをたくさん知ることができました。津駅の駅名表示のことや、鰻が国民の消費量一位(でした)ことや、
松阪牛はもちろん、伊勢海老、牡蠣の旬や、三重県の観光スポットなどをたくさん知れました。
伊勢周りで有名な赤福ですが、夏季限定の赤福氷をいただきました!
RubyKaigiの開催をしてくれた方々に感謝の意を表したいです!
来年のRubyKaigiは5月11日-13日で松本市で決定したので、ぜひまた参加したいです!See you in Matsumoto-shi!