【Ruby 3.0 Advent Calendar 2020】銀座Rails#26 で Ruby 3.0 の話をした【12日目】

Ruby 3.0 Advent Calendar 2020 12日目の記事になります。
昨日は『Win32APIが廃止された』です。
そういえば書いてなかったのでこの機会に書いておきます。

銀座Rails#26Ruby 3.0 の話をした

開催されたのは今年の10月でちょっと前になるんですが 銀座Rails#26Ruby 3.0 と Ruby 2.7.2 の話をしました。
元々この手の勉強会は自分が LT などをするときのみ参加するようにしてて実際、銀座Rails も今回が初参加でした。
登壇するきっかけとしてはちょうどそのころ Ruby 2.7.2 がリリースされて『非推奨の警告がデフォルトでは出なくなった』という変更が入りました。
この変更はかなり強い変更になるので『いろんなところで周知しておきたいなー』と思っていたところに Twitter で銀座Rails の登壇者を探しているツイートを見かけたので勢いで応募しました。
銀座Rails なんですが Ruby の話だけでええんかな…、と思っていましたがまあ勢いですね。
登壇時間は30分と過去一番長い登壇時間でした。
直前にあった Kaigi on Rails は20分だったのでそれよりも長いですね。
実際に話した内容は以下のスライドです。

これからの Ruby と今の Ruby について

内容については Ruby 3.0 と Ruby 2.7.2 の二部構成になっていて、前半は Ruby 3.0 で導入される型周りの話や Ractor、右代入、エンドレスメソッド定義などなど、新機能を中心として話しました。
後半は Ruby 2.7.2 の話で先程も書いたのですが 2.7.2 からは『非推奨な機能を使ったときの警告』がデフォルトでは出なくなります。
なので、そういう世界になるとどういう問題が起きるのか、どう対処していくべきなのか、みたいなエモい話をしました。
具体的にどういう内容だったのかはスライドを見てもらえればなんとなくわかると思います。
最初は『登壇時間を30分にしたのは長かったかなあ』と思っていたんですが実際に RBS や TypeProf、Ractor のデモなどを考慮するとむしろ全然時間が足りませんでした。
本当はライブコーディングなども行いたかったのですがライブコーディングやると無限に時間がなくなってしまうので、そっちはやらずにスライドに書いて説明するようにしました。
このあたりの時間配分はむずかしいですねえ…。

銀座Rails#28 でも登壇するぞい

今月の18日にまた 銀座Rails#28Ruby 3.0 の話をします。
今回は前回登壇したときから変更された機能やもうちょっとコアな話(非互換になった機能とか)をしようかと思っています(予定)。
特に前回登壇した時に話をした右代入や private def value(value) = value => @value といったコードがどういう挙動になるのか、みたいなのはかなり挙動が変わってしまったので、そのあたりを訂正する意味でももう一度どういう挙動になっているのか、を説明しようと思っています。
まだ、参加者枠に空きはあるので興味がある方は聞きに来てください。
ちなみにわたしの登壇のあとにまつもとさんがゲストスピーカーを行うので戦々恐々としています。
Ruby 3.0 が無事に出るのが楽しみですね!