Tech Racho エンジニアの「?」を「!」に。
  • Ruby / Rails関連

週刊Railsウォッチ: RBS 3.3.0とSteep 1.6.0リリース、Ruby Conf Taiwan 2023ほか(20231116後編)

こんにちは、hachi8833です。


つっつきボイス:「下手に自力で解決すると泥沼、あるある」「最近はあまりやらないけど、Gitでちょっと複雑な操作をするときに壊れるかもしれないと思ったら、プロジェクトのディレクトリを丸ごと複製してから作業してた: Gitのチェックアウト状態や競合状態などの情報がすべてファイルとして保存されるのがGitのありがたい点なので」「自分もやってました」「特に、たまにしかやらないstashの前とか、大規模なrebaseをやる前なんかにやってた」「rebaseを途中でabortしようとしてうまくいかないときもたまにありますよね」「ディレクトリをコピーしておけば何とかなるというGitの安心感は大きい」「Macだったら最終手段でTimeMachineから取り出す手もありますし」

週刊Railsウォッチについて

  • 各記事冒頭には🔗でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ
  • 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄
  • お気づきの点がありましたら@hachi8833までメンションをいただければ確認・対応いたします🙏

TechRachoではRubyやRailsなどの最新情報記事を平日に公開しています。TechRacho記事をいち早くお読みになりたい方はTwitterにて@techrachoのフォローをお願いします。また、タグやカテゴリごとにRSSフィードを購読することもできます(例:週刊Railsウォッチタグ)

🔗Ruby

🔗 RBS 3.3.0とSteep 1.6.0がリリース


つっつきボイス:「ruby-jp Slackで知りました」「細かな改修がだいぶ進んでいるようですね」「ruby-jp Slack#typeチャンネルではRBSやSteepの機能改修についてものすごく盛んに議論されていますね」

🔗 Rubyの"Uselessシンタックスシュガーシリーズ": パターンマッチング(Ruby Weeklyより)


つっつきボイス:「zverokさんが最近始めたRubyの"Uselessシンタックスシュガーシリーズ"記事のパート1です」「パターンマッチングのユースケースは個人的にまだまだ開拓の余地がある気がしますね: 個人的にはLambdaと組み合わせたりしたDSL的な応用が今後も発見されていくんじゃないかな」

参考: “Useless Ruby sugar”: Pattern matching (Pt. 2)
参考: “Useless Ruby sugar”: Pattern matching (Pt. 3/3)


「ところで、zverokさんのUselessシンタックスシュガーシリーズ記事は翻訳を始めているところなんですが、以下のシリーズ開始宣言記事の冒頭で、zverokさんが最近ウクライナ軍のコンピューター関連の部門に移籍して記事を書く余裕が少し出てきたとのことです」

参考: That useless Ruby syntax sugar that emerged in new versions

Rubyの型アノテーションの現状についていくつか思うこと(翻訳)

🔗 Ruby gemのトレンド


同記事より


つっつきボイス:「記事でも言及されてはいますけど、この種のサーベイでカウントされるダウンロード数の大半はCI(GitHub ActionsやCircleCI等の自動ビルド環境)でダウンロードされたカウントになると思うので、トータルのダウンロード数はたしかに増えまくっていますけど、実際に多用されているgemの傾向がどこまでわかるんだろうかというのはいつも気になりますね」「そのあたり気にしてなかったかも😅」「ダウンロード数はおそらくrubygems.orgのAPIなどから取れると思いますけど、人間がダウンロードしたかどうかを判別するのが難しい」

参考: 継続的インテグレーション - Wikipedia

🔗 YJITのGCがデフォルトでオフに

参考: ガベージコレクション - Wikipedia


つっつきボイス:「k0kubunさんがYJITのGC(ガベージコレクション)をデフォルトでオフにしたそうです」「--yjit-code-gcオプションを渡して起動するとGCをオンにできるのね」「まだ詳しく見ていないけど、現時点ではYJITのGCをオンにすると効果がある場合もあるけど設定によっては必ずしもメリットがあるわけではないと判断されたようですね」

「ところでRailsでRuby 3.3以降を使うとデフォルトでYJITがオンになるんですって↓」

参考: Enable YJIT by default if running Ruby 3.3+ by byroot · Pull Request #49947 · rails/rails -- マージ済み

以下はRubyの#8705で言及されていたDHHのツイートです↓。


「なお、YJITがらみで別のツイートも見つけました↓」「AWS Lambdaはコールドスタートする場合はYJITの恩恵があまり得られないけど、ホットスタートならYJITがよく効くはずですね」

参考: Operating Lambda: パフォーマンスの最適化 – Part 1 | Amazon Web Services ブログ

🔗 その他Ruby


つっつきボイス:「KaigiEffectという言葉は以前からちょくちょく見かけましたね」「Kaigi on Rails 2023がきっかけでまたバズったようです」


「Kaigi on Rails 2023で"Ruby Conf Taiwan 2023行こうよ"という機運が高まっているのを何度か見かけました」「Matzや大倉さんの他にも日本人の登壇者が何人もいますね」


「ところで台湾といえば5xRubyという会社がありますよね」「5xRuby、イベントでスポンサーもやってましたね」「広島のRubyKaigiのRubyカラオケでこちらの社長と廊下で話し込んだ覚えがあります(とても流暢な日本語でした)」「5xRubyは、台湾語だと"五倍紅寶石軟體開發"なんですね」「紅寶石(紅宝石)はRubygem、軟體(軟体)はソフトウェア、開發は開発か」

参考: 5xRuby Co., Ltd.

🔗クラウド/コンテナ/インフラ/Serverless

🔗 AWS SDK For RubyでRubyランタイム2.3と2.4のサポート終了のお知らせ(Ruby Weeklyより)


つっつきボイス:「これはRubyはRubyでもAWS SDKの方ですね」

「ところでAWS LambdaでサポートされるRubyランタイムがなかなかバージョンアップされないと思っていたけど、今ググると今年6月にRuby 3.2をサポートするようになってた↓」「これはありがたい🙏」「それと合わせてRuby 2.7ランタイムが12/7から非推奨化が開始されるとも書かれていますね」

参考: Ruby による Lambda 関数の構築 - AWS Lambda
参考: AWS LambdaでRuby3.2ランタイムが利用可能になりました | DevelopersIO

🔗CSS/HTML/フロントエンド/テスト/デザイン

🔗 blog.jxck.ioのブラウザキャッシュ解説記事

元記事: ブラウザでリロードしながらキャッシュの挙動を確認してる全ての開発者へ | blog.jxck.io


つっつきボイス:「Jxckさんの非常に詳しい解説記事ありがたい」「現在のようになった経緯も書かれていて助かります」「キャッシュヘッダー周りはいろいろ難しいんですけど、キャッシュの挙動にブラウザ側の処理も関係しているとか、学びがある👍」

🔗言語/ツール/OS/CPU

🔗 GitHub Copilot Chatが12月にGAに


つっつきボイス:「そうそう、GitHub Copilot ChatがJetBrains IDEでも使えるようになる🎉: これでVSCodeを立ち上げずに済む」「GitHub CopilotはこれまでもJetBrains IDEで動いているけど、Copilot Chatの方ははVS Codeしかサポートされていなかったんですよ」

「2つ目のツイートではGitHub.comでもCopilot Chatが使えるとある: これも助かる👍」

「とにかくCopilotはほんとありがたい」「めっちゃありがたいです」


「他には、少し前からGitHubで複数アカウントを切り替えられるようになってて、知り合いが喜んでいました」「今のところ業務では複数アカウントを切り替える機会はないけど、これもよさそう👍」


後編は以上です。

バックナンバー(2023年度第4四半期)

週刊Railsウォッチ: MariaDBのRETURNINGオプションをサポートほか(20231114前編)

ソースの表記されていない項目は独自ルート(TwitterやはてブやRSSやruby-jp SlackやRedditなど)です。

Ruby Weekly

RubyFlow

160928_1638_XvIP4h


CONTACT

TechRachoでは、パートナーシップをご検討いただける方からの
ご連絡をお待ちしております。ぜひお気軽にご意見・ご相談ください。