Ruby
Masato Ohba(@ohbarye)さんによる「On-the-fly Suggestions of Rewriting Method Deprecations」についてご紹介します。このセッションでは、開発者なら誰もが経験する「メソッド非推奨化」に伴うコード修正を、もっと楽にするためのツールとその仕組みが提…
今日は、ジョブハウスで使用している Ruby on Rails の ViewComponent を用いて UI コンポーネントを実装する際に利用しているライブラリを紹介します。 ViewComponent(UI コンポーネント)× Lookbook(プレビュー)× rspec-snapshot(スナップショットテス…
先日、新機能の開発を進める中で、ファイルへの書き込みを扱うコードを書く機会がありました。 その際、Ruby でファイル書きこみを行う際のバッファリングの仕組みと、それを制御する IO#flushとIO#fsyncというメソッドに改めて注目することになりました。 …
みなさんはRBS::Inlineをご存知でしょうか。 RBS(Rubyに型システムを導入するインターフェース言語)をコメントから生成出来るようにしたものです。 先日参加したRubykaigi 2024 follow upというイベントでRBS::Inlineを知り、これはいいものだと早速私は会社…
Ruby on Rails の Active Storage は お手軽に画像ファイルなどをクラウドストレージに保管できる便利なライブラリです。しかし正しく利用するにはクラウドストレージの仕様やWeb標準への理解が必要不可欠です。今日はそんなActive Storageを使って、Amazon …
本日は、異なる Amazon ECS Service のコンテナイメージの整合性を確認するために Sidekiq Middleware を使用した話を書きます。クラウドハウス労務は、企業の人事労務業務を支援するクラウドサービスです。企業に属する従業員の情報を集めるため扱うデータ…
先日、自身の参画しているプロジェクトの Ruby のバージョンが 3.3.5 に更新されました。これに伴い、手元の開発環境にも Ruby 3.3.5 を install しようと思いました。 開発環境では Ruby のバージョン管理マネージャとしてrbenvを利用しております。
本記事では、個人的に印象に残った@ohbarye様のDay2での発表「Data Migration on Rails」についてのまとめと、それに関連して、紹介があったmaintenance_tasks gemを試してみた内容を共有していきます。本セッションは、未だRails Wayが確立されていないと思…
本記事では、1日目の@kokuyouwindさんによるセッション、Let's use LLMs from Ruby 〜 Refine RBS types using LLM 〜について紹介させていただきます。@kokuyouwindさんは、LLM(大規模言語モデル)を使ってRBS(型構造)を推測するRBS Gooseというプロジェクト…
今回は、RubyKaigi 2024 1日目のセッション「Ractor Enhancements, 2024」を聴講したので、その内容をブログにまとめさせていただきます。 Ractor は Ruby 3.0 で導入された並列(parallel)プログラミングを行うための機能です。Actor モデル((Actor モデルは…
本記事では、Rubykaigi 2024 2日目のSamuel Williams(@ioquatix) さんによるセッション、「Leveraging Falcon and Rails for Real-Time Interactivity」について紹介させていただきます。 2日目のキーノートはリアルタイム通信についての歴史とRubyでの試み…
先週に行われたRubyKaigi 2024の2日目、3日目のレポートになります!1日目についてもまとめ記事を公開しておりますので、ぜひご確認ください!RubyがこれからもFun to code、A Programmers' Best Friendであり続けるために、様々な観点から技術的挑戦がされ…
本記事では、3日目のTakashi Kokubun(@k0kubun)さんによるセッション、YJIT Makes Rails 1.7x Fasterについて紹介させていただきます。YJITは「Yet Another Ruby JIT」の略で、Shopifyで開発され、Ruby 3.1から導入されたJITコンパイラです。
本記事では、2日目のMaxime Chevalier-Boisvert(@maximecb)さんによるセッション、Breaking the Ruby Performance Barrierについて紹介させていただきます。YJITはRubyのパフォーマンスを改善するため開発されているプロジェクトです。このプロジェクトの開…
本記事ではRubyKaigi 2024の1日目のMasato Ohba(@ohbarye)さんによるセッション _Unlocking Potential of Property Based Testing with Ractor_ について紹介させていただきます。このセッションでは「Property based testing が Ractor の良いユースケース…
本記事では、1日目のMatt Valentine-Houseさん(@eightbitraptor)によるセッション、Stringの割り当てに関するバグと解決の話について紹介させていただきます。まず、Stringのメモリ割り当ての説明ですが、Stringは文字列の長さによって割り当てが違うという…
本記事では、Rubykaigi 2024 3日目のJunichi Kobayashi(@junk0612) さんによるセッション、「From LALR to IELR: A Lrama's Next Step」について紹介させていただきます。junk0612さんは永和システムマネジメントのRailsエンジニアの方で、Lramaのコントリビ…
本記事では、3日目の最後のセッションである Yukihiro "Matz" Matsumoto(@yukihiro_matz)さんによる Matz Keynoteについて紹介させていただきます。発表者は Rubyist であれば誰もが知っている Ruby 生みの親 Matz ことまつもとゆきひろさんになります。テー…
本記事では RubyKaigi 2024 2日目に発表された遠藤さん(@mametter)のセッション「Good first issues of TypeProf」をまとめさせていただきました。セッションの内容としては、 mametter さんが Typeprof の開発を手伝ってみたいという方のために、開発の仕方…
本記事では、Rubykaigi 2024 1日目のYuichiro Kaneko(@spikeolaf)さんによるセッション、「The Grand Strategy of Ruby Parser」について紹介させていただきます。Rubyのパーサは、Rubyのスクリプトを受け取りAST (抽象構文木) に変換するプログラムです。CR…
本記事では、RubyKaigi 2024の1日目のSatoshi Tagomori(@tagomoris)さんによるセッション『Namespace, What and Why』について紹介させていただきます。本セッションはNamespaceという、Rubyのコードを隔離された別々の空間に分ける開発中の機能がテーマです…
本記事では、RubyKaigi 2024 1日目のHiroshi SHIBATA(@hsbt)さんによるセッション、Long journey of Ruby standard libraryについて紹介させていただきます。スピーカーのhsbtさんはRubyGemsやbundlerなどのメンテナンスに関わるRubyコミッターです。今回のR…
今回わたしたちは新卒入社のエンジニアメンバーを含め総勢17人のメンバーでRubyKaigi 2024に参加しています!当ブログではメンバーに、参加したセッションのまとめ記事や感想を書いてもらっています。その多くは今年の4月に新社会人として入社したばかりです…
今回Techouseは、RubyKaigi 2024のプラチナスポンサーとしてブースを出展しております! 必ず当たるガラポンくじをご用意しておりますので、ぜひお立ち寄りください! 執筆記事 弊社の開発ブログでは、1日目のセッションについての記事を公開しております! …
本記事では、RubyKaigi 2024 1日目のJohn Hawthornさんによるセッション、Vernier: A next generation profiler for CRuby について紹介させていただきます。Vernierは、Rubyのパフォーマンスプロファイリングを行うためツールです。従来のプロファイラーで…
本記事では、RubyKaigi 2024 1日目のTomoya IshidaさんによるKeynote、Writing Weird Codeについて紹介させていただきます。本セッションでは文字通りWeired(奇妙)なコードを通じて、 Ruby 言語の特徴やプログラミングの面白さについて紹介しています。
RubyKaigi 2024 1日目のセッション「The depths of profiling Ruby」を聴講したので、その内容をブログにまとめさせていただきます。プロファイラはコードのパフォーマンスを調べるためのツール全般を指します。プロファイラには、コードの中で最も遅いとこ…
本日は私の携わっているプロダクトであるクラウドハウス労務で利用されている分散プログラミングの技術について紹介します。分散プログラミングについて紹介する前に、私が開発しているクラウドハウス労務について、なぜ分散プログラミングが必要かの説明も…