はいどうもー!Ruby on RailsエンジニアYOです。
先日RubyKaigi Takeout 2021に参加したので、個人的に面白いセッション、感想も含めてメモりたいです。
個人向けのメモ程度の内容ですので、イベント自体に興味ある方は公式のYoutubeアーカイプ~~待ちましょうね。~~見てね:
コロナの状況がまだ落ち着いていないので、今年のRubyKaigiもTakeout形式での主催になります。サイトはこちらです:
https://rubykaigi.org/2021-takeout
(個人的に)面白かったセッション
イベントのタイムスケジュールとセッション表:
以下一日目のセッション
TypeProf for IDE: Enrich Dev-Experience without Annotations(by Yusuke Endoh)
Ruby向けの型推測ツール(?)を作ったので、そのメリットとまだバグってるところの共有です。Rubyは静的型言語じゃないので、型はきっちり決めていなくて、渡された値によって型が決まります。
methodのautocompleteや、間違った関数を渡すときにもIDE上で警告を出せます。
感想:そういうツールを作るときの考え方は自分全く考えたことなかったので(考える必要もなかった)、その中身の話をしてくれて大変勉強になりました。あと世の中はどんどんVSCodeなので、そろそろIDEも切り替えたい。
RuboCop in 2021: Stable and Beyond(by Koichi ITO)
RuboCop 1.0 & それ以降のバージョンの話。
--parallel
optionで並行実行ができます!
自動修正がもっとよくなったとか、-A
optionで全部修正もできます(危険ですが。。。)
感想:Rubyやってる人ならほぼ全員が使ってるRuboCop、大変便利なツールを作ってくれてありがとうございます!書き方の指摘などで、勉強になることも何回かありました!
Ruby Archaeology(by Nick Schwaderer)
Ruby考古学の授業を受けた感じです。
昔のRubyの書き方や、歴史を、今もよく使われてるツールのcommit日付が古いコードからピックアップして解説した感じです。
感想:良い意味での変人感が溢れてるスピーカーです。wあと色々お土産くれます(ruby version 1.8のvagrantbox?)。
vagrantbox: https://app.vagrantup.com/schwad/boxes/ruby_archaeologist
以下二日目のセッション
Ractor’s speed is not light-speed(by Satoshi "moris" Tagomori)
Ruby Actorからとって、Ractorと呼ぶらしいです。
RubyのParallel処理のために開発された新機能(?)らしいです。
自分はRactorの存在を今日まで知らなかったので、もうちょい勉強すべきです(土下座)
まだ大規模アプリケーションで検証していないので、本当に速くなるかどうかがまだ不明です。
感想:ある意味で今まで知らなかったことを知ることになったので、これからは少しずつアンテナを張って情報収集したいです!
Ruby Committers vs the World
いわばRuby Commitersたちと対話できるセッション!
というものの、中の人が話しつつ、チャット欄を見てみんなの質問や疑問に答える感じのセッションです。
金曜日の午後でもあるため、ほぼ飲み会感が出てます。w
感想:あぁー我々は巨人の肩の上に立ってるのだなぁーと感じさせました。そしてその巨人達を見る機会ができてよかったです。
以下三日目のセッション
Do regex dream of Turing Completeness?(by Daniel Magliola)
「Game of LifeをRubyのregexだけで、実装できないか?」と、すごくチャレンジングなハックをやっている人です。
化け物みたいなでかいregexを生成して一発で置換させる方法です。
Turingマシーンの話も出てました。
感想:これもマニアックなセッションです。でもやってる試みがとっても面白いで、聞いてて楽しいセッションです。
資料&slide: https://github.com/dmagliola/regex_game_of_life
Dive into Encoding(by Mari Imaizumi)
Rubyの文字エンコードを理解するために、IROHAエンコードを作った話です。
Rubyの文字エンコードをどうやって作られたのか、どうやって新しいエンコードを作るのか知ることができます。
Rubyのカーソルがかわいい。
感想:普段何も考えずに使ってる文字エンコードの中身がしれて、少し成長しました。最近は日本語の文字化けは結構出なくなったので、だいぶ楽な世の中になったなぁー
slide: https://speakerdeck.com/ima1zumi/dive-into-encoding
Matz Keynote(by Yukihiro "Matz" Matsumoto)
我らRubyの生みの親、Matzさんからのキーノートです。
Matzさんのキーノートは過去に数回も聞きましたが、2.5 -> 2.7 -> 3.0 -> 3.1で、rubyのバージョンアップの話です。
2.7 -> 3.0 までは聞きましたが、それ以降は暫くブリなので、raptorやパフォーマンス向上なども結構進めたので、いい話です。
3日間のセッションの振り返り&総括もしていました。
Rubyを速くすると賞金がもらえるシステムも考案中みたいで、Rubyがどんどん速くなることを押したいです!みんなも支援できればお願いします!(Rubyふるさと納税で盛り上がった!)
感想:Ruby 3.0も去年12月25日にリリースされて(クリスマスの日に毎年りりーするらしい)、そろそろ新しいバージョンも使って行かないとどんどん置いていかれちゃいそうです。
全体の感想
コロナで世の中がリモートワークの流れになりました。通勤時間が減って、個人の自由時間が増えたが、孤独との戦いや、精神的なストレスの対処をしてそろそろ一年半過ぎました。エンジニアとしてもニューノーマルに慣れてきた(と思う)ので、また昔見たいに、いろんな処の勉強会に参加して、新しい技術をどんどん触っていきたいです!
そんな考えを改めたイベントでした!
とりあえずasakusa.rbを調べて、次の勉強会から参加したいです!