並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 42件

新着順 人気順

RUBYの検索結果1 - 40 件 / 42件

  • 技術コミュニティの活動を通して人生に整合性がとれた ─ 未経験30代がRubyのコア実装に挑むようになるまで - Findy Engineer Lab

    高校を卒業した後、コールセンターでの派遣業務や非正規の事務職といった経歴から、33歳でまったく異なるソフトウェア開発の世界に飛び込んだ塩井美咲(@coe401_)さん。短期間でプログラミングのスキルを学び職業プログラマーへの転身を果たしただけではなく、プログラミング言語Ruby自体の開発をテーマとする国際カンファレンスRubyKaigiでも4年続けて発表するほどになっています。 キャリアチェンジの経緯やプログラマーとしての歩みについて塩井さんに伺うと、むしろ技術コミュニティとの出会いと積極的な参加があったからこそ、エンジニアとして多くの成長があったことが分かります。その熱意のベースには、何のためにソフトウェア開発者を志すかという思いがありました。 ▲ 松本市で開催されたRubyKaigi 2023に登壇する塩井美咲さん ソケットライブラリの改善にRubyの開発助成で取り組む 世の中をよくす

      技術コミュニティの活動を通して人生に整合性がとれた ─ 未経験30代がRubyのコア実装に挑むようになるまで - Findy Engineer Lab
    • Rails の非同期処理を Sidekiq から Cloud Tasks にリプレイスして Cloud Run のコストが6分の1になった話

      成果 最終的に、Cloud Run のコストが$6/day前後から$1/day前後に! ちなみに、Cloud Tasks は1ヶ月あたり最初の100万回のオペレーションまで無料なので余裕で収まっています。 モチベーション 今回リプレイスを検討したシステムは軽量な非同期処理が大半で、もともと絶対に Sidekiq でないと困るということが少なかった Sidekiq は Redis をポーリングしてジョブを取得する方式なので、Cloud Run で実行するには min-instances を1以上にしなければいけない 何もジョブがない状態が続いてインスタンスが0になると起こしてくれる人がいないので... 絶対に Sidekiq でないと困らないなら Cloud Tasksにして、非同期処理がない時は寝ていても良いようにしたい => コストダウン! Pub/Sub との比較検討もしましたが今回は

        Rails の非同期処理を Sidekiq から Cloud Tasks にリプレイスして Cloud Run のコストが6分の1になった話
      • 危険なCookieのキャッシュとRailsの脆弱性CVE-2024-26144 | セキュリティブログ | 脆弱性診断(セキュリティ診断)のGMOサイバーセキュリティ byイエラエ

        高度診断部アプリケーションセキュリティ課の山崎です。 弊社エンジニアの名古屋と山崎がRuby on RailsのActive Storageの脆弱性CVE-2024-26144を報告しました。 本脆弱性はRailsの5.2.0から7.1.0のバージョンに影響するもので、お使いのRailsのバージョンが最新でない場合にはアップデートを推奨します。 本記事では本脆弱性の注意点と、関連してCookieのキャッシュに関する調査内容を紹介します。 TL;DR ・ Set-Cookieヘッダがキャッシュされると別人ログイン問題が発生する ・ RailsのActive StorageでSet-Cookieヘッダがキャッシュ可能な設定であった(CVE-2024-26144) ・ Nginx(+ Passenger), Apache(+ mod_cache)等のキャッシュ機構と合わせて利用すると実際に事故が

          危険なCookieのキャッシュとRailsの脆弱性CVE-2024-26144 | セキュリティブログ | 脆弱性診断(セキュリティ診断)のGMOサイバーセキュリティ byイエラエ
        • マルチプロダクト間データ連携への技術的挑戦 - SmartHR Tech Blog

          マルチプロダクト戦略の実現を目標として掲げ、急速にプロダクトを増やしているSmartHR。 そのような中、これまでプロダクトごとに分断されていたデータを相互に利用できるようにすることで、価値を高める試みが始まっています。この活動の中心となっているプロダクト連携ユニットに、現状と今後の展開を聞いてみました。 インタビューの様子。左:プロダクト連携ユニット 右:インタビュアー f440: それでは、プロダクト連携ユニットのインタビューを始めたいと思います。よろしくお願いいたします。 一同: よろしくお願いします。 f440: お時間を取っていただきありがとうございます。突然呼ばれてびっくりしていると思うんですけれども、個人的に一番興味あったのがプロダクト連携ユニットだったので、この度はインタビューしたいと思いまして。 最初に自己紹介から始めさせてください。まずは私から。現在プロダクト基盤開発部

            マルチプロダクト間データ連携への技術的挑戦 - SmartHR Tech Blog
          • Rails: HotwireとSPAを比較するなら実装コストの違いに注意(翻訳)|TechRacho by BPS株式会社

            概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: The popover drama 原文公開日: 2024/06/02 原著者: Jorge Manrubia 日本語タイトルは内容に即したものにしました。 インターネット接続が遅い環境でHEYカレンダーのポップオーバーの読み込みが遅くなる様子が以下でツイートされたことがきっかけで、ポップオーバーのドラマが幕を開けました。その後、無慈悲で辛辣な書き込みやプロの荒らしの出現など、最もSNSらしい形で議論がヒートアップしました。 If you want to know why an app *needs* JavaScript on the client and can’t just do it all on the server, just look at Hey or any other Hotwrite app pic.twit

              Rails: HotwireとSPAを比較するなら実装コストの違いに注意(翻訳)|TechRacho by BPS株式会社
            • 『家族アルバム みてね』はRuby 3.3で動いています

              こんにちは、みてねプロダクト開発部 プラットフォームグループ SREチームの kohbis です。 『家族アルバム みてね』(以下、みてね)では、ほとんどのサーバーサイドをRuby on Railsアプリケーションで展開しています。 そしてタイトルの通りですが、2024年6月時点でみてねのアプリケーションのすべてにおいてRuby 3.3.3へのアップグレードが完了したので、その結果について紹介したいと思います。 Ruby 3.3アップグレードの結果以下はみてねの主なAPIを提供しているアプリケーションのグラフ(平均)です。 Ruby 3.3リリースのタイミングで大幅にレスポンスタイムが改善していることがわかります🙌 Ruby 3.3へのアップグレードでおおよそ10%の速度改善を得られました。 グラフにはありませんがp95やp99も同様の割合、つまり速度としてはより大幅な速度改善にいたって

                『家族アルバム みてね』はRuby 3.3で動いています
              • 「まるで研ぎ澄まされた日本刀のような美しさ」 僕がそれでもJetBrains製のRuby on Rails IDEを使う理由

                ソニックガーデンの執行役員兼プログラマーである遠藤大介氏が、JetBrains製のRuby on Rails IDE「RubyMine」の魅力について語りました。全2回。前回の記事はこちら。 Viewにもブレークポイントが張れる 遠藤大介氏(以下、遠藤):これはたまに、驚かれるんだけど。ControllerやModelにブレークポイントが張れるのは、当たり前じゃん。そんなのができなかったら、とりあえずIDEとしてどうよっていう話だから。 なんだけど、RubyMineはぶっ飛んでいて、Viewにもブレークポイントを張れるの。 植木宏氏(以下、植木):Viewに? Viewにブレークポイント? 遠藤:「どういうこと?」って思うじゃん。 植木:(笑)。 遠藤:ERBファイルってあるじゃん。ERBファイルって、「ここまで来た時、どうなってんのかな? なんか表示おかしいんだけど」とか、たまに、ちょっ

                  「まるで研ぎ澄まされた日本刀のような美しさ」 僕がそれでもJetBrains製のRuby on Rails IDEを使う理由
                • Ruby 3.3(+YJIT)へのアップデートによるパフォーマンス変化の計測 - メドピア開発者ブログ

                  こんにちは。サーバーサイドエンジニアの @atolix_です。 今回はメドピアで本番運用をしているアプリケーションの1つであるやくばと for Clinicにて、Ruby 3.2からRuby 3.3にアップデートを行った際のパフォーマンスの変化を計測しました。 Ruby 3.3ではYJITの大幅な改善が含まれているので、これによるアプリケーションへの影響を確認していきます。 www.ruby-lang.org gihyo.jp 前提 本記事に記載されたデータは以下の条件で計測をしています。 Rails: 7.1.3.4 YJIT有効化時のオプションは特に付与していない状態(Dockerfileから環境変数を与えて有効化) 3.2.4(+YJIT)から3.3.1(+YJIT)へのアップデート 有効化前後の1週間を比較 パフォーマンスの変化 やくばと for Clinicではモノレポのアプリケ

                    Ruby 3.3(+YJIT)へのアップデートによるパフォーマンス変化の計測 - メドピア開発者ブログ
                  • 改行可能な ruby 要素と CSS ruby-align プロパティ  |  Blog  |  Chrome for Developers

                    HTML の <ruby> 要素は、特に東アジア言語のテキスト表示を改善するための強力なツールです。この要素を使用すると、親文字の上下左右に発音やその他の補足情報を表示できます。Chrome 128 以降では、Ruby 要素が改行可能になり、またruby-align CSS プロパティを使用してルビと親文字の揃え方を設定できるようになります。 <ruby> 要素は 2 つの主要な部分からなります。親文字(メインテキスト)とルビ(アノテーション テキスト)は、<rt> 要素でマークアップされています。ルビは、次の例に示すように、親文字の上または下に表示できます。 <ruby> 絵文字 <rt>emoji</rt> </ruby> 日本語の親文字にルビとして表示される英語の発音。 <ruby style="ruby-position: under;"> 강남대로 <rt>江南大路</rt> <

                      改行可能な ruby 要素と CSS ruby-align プロパティ  |  Blog  |  Chrome for Developers
                    • Steepのメモリ使用量を改善するつもりが、実行速度の改善をしていた - Money Forward Developers Blog

                      こんにちは。id:Pocke です。 私は最近、Steep のメモリ使用量の改善に取り組んでいます。その過程で(意図せず) Steep の実行速度の改善に成功しました。 その中で行った、メモリ使用量の調査や、結果として実行速度が改善されたことは自分にとって中々楽しい体験でした。この記事では実行速度の改善に至るまでの経緯を紹介します。 記事中のソフトウェアは、執筆時点で最新のものを使用しています。具体的なバージョンは以下の通りです。 Ruby: 3.3.4 MemoryProfiler: 1.0.2 Steep: 1.8.0.dev.1 TL;DR メモリ使用量の調査のために、memory_profiler gem を使った それだけだと不十分なので、Ruby にパッチを当てた上で計測をした 結果としてsteep checkの解析対象ファイル数が多い場合に速度が遅くなることが分かり、改善した

                        Steepのメモリ使用量を改善するつもりが、実行速度の改善をしていた - Money Forward Developers Blog
                      • Capybaraとreg-cliを使ってお手軽にビジュアルリグレッションテストを行える環境を整備しました📸 - メドピア開発者ブログ

                        こんにちは、MedPeerの開発を担当している森田です。 今回は私が開発に参画しているMedPeerに元々E2Eテストで利用していたCapybaraと、reg-cliを利用してビジュアルリグレッションテスト(以下VRT)を行える環境を整備したので、それについてご紹介させていただきます。 なぜ、VRTを導入するのか? VRTの要件と技術選定 実際に構築したVRT基盤の概要 VRT基盤の具体的な話 System Spec内でスクリーンショットを取得する reg-cliでスクリーンショットの差分をチェックする 分かりやすいコマンドでVRTを実行できるようにする CIで差分をチェックする OS間での利用フォントによる違いを吸収する おわりに 参考にさせて頂いた資料 なぜ、VRTを導入するのか? MedPeerでは元々System Specを活用したE2Eテストを利用してフロントエンドを含めて品質を

                          Capybaraとreg-cliを使ってお手軽にビジュアルリグレッションテストを行える環境を整備しました📸 - メドピア開発者ブログ
                        • Ruby methods are colorless

                          👋🏼 This is part of series on concurrency, parallelism and asynchronous programming in Ruby. It’s a deep dive, so it’s divided into 10 main parts: Your Ruby programs are always multi-threaded: Part 1 Your Ruby programs are always multi-threaded: Part 2 Consistent, request-local state Ruby methods are colorless Concurrent, colorless Ruby: Part 1, Threads Concurrent, colorless Ruby: Part 2, Fiber a

                            Ruby methods are colorless
                          • Ruby の CSV が nil を返さないようにする - tmtms のメモ

                            Ruby の CSV ライブラリはとても便利なんだけど、ひとつだけ問題があって、CSV をパースしたときに nil を返すことがある。 つぎのような CSV をパースすると2番目のカラムが nil になる。4番目のカラムは空文字になるのに! hoge,,fuga,"",piyo require 'csv' CSV.parse_line('hoge,,fuga,"",piyo') #=> ["hoge", nil, "fuga", "", "piyo"] なので CSV のパース結果は全部文字列だと思って使ってるとエラーになってびっくりする。 CSV.parse_line('hoge,,fuga').map(&:upcase) #=> undefined method 'upcase' for nil (NoMethodError) CSV を生成するときも nil と空文字で変わる: pu

                              Ruby の CSV が nil を返さないようにする - tmtms のメモ
                            • Ruby研究シリーズ1: メソッド定義構文はどう決定され、どう進化したか(翻訳)|TechRacho by BPS株式会社

                              概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: The design decisions and evolution of a method definition - Ruby case study 原文公開日: 2024/06/14 原著者: zverok 日本語タイトルは内容に即したものにしました。また、主にRuby以外のユーザーに向けたサイドストーリー的なパラグラフは囲みスタイルにしています。 本記事は、新シリーズ記事のパート1であり、おそらく書籍の一部として収録されることが見込まれています。Rubyプログラミング言語が設計されたときのさまざまな決定事項と、それらが時とともにどのように進化したか、より広い文脈ではどのように捉えられるかについて研究します。 今回はメソッド定義(method definitions)、つまりメソッド定義の一般的な形と、引数の指定方法を扱います

                                Ruby研究シリーズ1: メソッド定義構文はどう決定され、どう進化したか(翻訳)|TechRacho by BPS株式会社
                              • Ruby: 最近傍法による推奨アルゴリズムを実装する(翻訳)|TechRacho by BPS株式会社

                                概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: Implementing Nearest-Neighbour Recommendations in Ruby 原文公開日: 2023/08/28 原著者: Domhnall Murphy 日本語タイトルは内容に即したものにしました。 参考: 最近傍法 - Wikipedia Webのユーザーに関連度の高いコンテンツを自動的におすすめする機能は、Webの多くの機能を成功に導くうえで欠かせません。そのために多種多様な手法が利用されており、最大規模のWebサイトや企業では、非常に高度な技術を取り入れて推奨機能を最適化しています。本記事では、基本原理に基づいた効果的な推奨システムをRubyで構築する方法について解説します。 🔗 はじめに 以前の記事では、距離測定を導入してRubyで実装する方法を紹介しました。そのときに、それらの距離測

                                  Ruby: 最近傍法による推奨アルゴリズムを実装する(翻訳)|TechRacho by BPS株式会社
                                • HTML用ERBファイルのフォーマットを統一した話 - Sansan Tech Blog

                                  こんにちは。 名刺アプリ「Eight」でエンジニアをしている鳥山(@pvcresin)です。 最近、ミスタードーナツのミニオンコラボの商品を食べたのですが、 どれも美味しくて見た目もかわいいので最高でした。 特にポン・デ・リングベースのものは、表面のキャンディが口の中でパチパチと弾けて楽しいのでオススメです。 さて今回は、RailsのViewで使う、HTML用ERBファイルのフォーマットを統一した話をします。 ERBとは ERB(eRuby、embedded Ruby)はテキストにRubyのコードを埋め込むための仕様です。 Railsでは特にViewの部分のHTML生成によく利用されます(拡張子は.erb)。 ERBでは、以下のような記法でRubyのコードを埋め込めます。 <ul> <% @features.each do |f| %> <li><%= f %></li> <% end %

                                    HTML用ERBファイルのフォーマットを統一した話 - Sansan Tech Blog
                                  • 自作Rubyスクリプトをrubygems、docker imageとして配布、利用するために

                                    問題意識Ruby で書いた自作のツールを手軽に持ち運んで使いたい。そのために rubygems で配布したい(Ruby 環境を持っている場合向け)Docker image で配布したい(Ruby 環境を持っていない場合向け)以上二つを同時に満たしたい。 この辺はまぁずっと持ってる課題意識ではあるし、もう一つのアプローチとしては Wasm もある Wasmで少しだけ手軽にRubyとRubyスクリプトを持ち運ぶ (2024-05-25) | あーありがち が、今回はあちこちのクラウドでそのまま runtime として扱いやすい Docker の方の話を扱う。 rubygemsを作る部分は割愛bundle gem して雛形を作って、頑張ってコードを書くべし。 docker build時に注意の必要なこと「持ち込んだもの」は消せないどういうことかというと、ポイントは以下。 COPY で *.gem

                                    • 「もうやめて!レビュワーのライフは0よ!」と言いたくなるRSpecの書き方

                                      RSpecのレビュー大変問題 RSpecって本当に色々な書き方ができますよね。 mockを盛り盛りに書く人、DRYを追求したspecを書く人、itを細かく分ける人 etc... 個人的に、specの書き方は開発チーム内で良しとされているならその書き方で良いと思います。 ただ、新しくチームに入った人や、自分のように普段は違うチームで開発している人が見ると、理解しづらい、レビューしづらい、テストコードを追加、削除しづらい書き方ってあるよな〜と思ったので、まとめてみました。

                                        「もうやめて!レビュワーのライフは0よ!」と言いたくなるRSpecの書き方
                                      • RubyのJava実装「JRuby」、大口スポンサーのRed Hatが離脱で新たなスポンサーや寄付を募集。有償サポートも開始

                                        RubyのJava実装「JRuby」、大口スポンサーのRed Hatが離脱で新たなスポンサーや寄付を募集。有償サポートも開始 Ruby言語のJavaによる実装である「JRuby」の開発者が、新たなスポンサーや寄付などを募集していることを明らかにしました。 これは長年にわたってJRubyの大口スポンサーであったRed Hatから、支援の停止の通知を受けたことがきっかけとなっています。 There’s big news in the JRuby world: tomorrow is JRuby’s Independence Day! Developer @headius has committed to fighting for JRuby users and he needs your help. Read his post to the JRuby Blog and follow your

                                          RubyのJava実装「JRuby」、大口スポンサーのRed Hatが離脱で新たなスポンサーや寄付を募集。有償サポートも開始
                                        • Datadog Continuous Profiler を用いて、ボトルネックが Ruby の GVL であることを発見した

                                          Datadog Continuous Profiler を用いて、ボトルネックが Ruby の GVL であることを発見した こんにちは、terandard です。 弊社では Datadog を用いてアプリケーションやサーバーの監視を行っています。 以前からリクエストがスパイクした際にアプリケーション全体が遅延する問題があったので、Datadog Continuous Profiler を使用して調査したことについて紹介します。 背景 リクエストがスパイクするとアプリケーション全体が遅延する問題がありました。 リクエスト全体のリクエスト数とレイテンシー 特に処理に時間がかかっていたリクエストについて Datadog APM で状況を確認すると、下図のように空白期間があったり mysql2 や faraday の実行時間が長いことがわかりました。 例1: 謎の空白期間がある 例2: mysq

                                            Datadog Continuous Profiler を用いて、ボトルネックが Ruby の GVL であることを発見した
                                          • Rubyのパフォーマンスプロファイリングの改善 / Enhancing performance profiling for Ruby

                                            Ruby Association Activity Report https://www.ruby.or.jp/ja/news/20240520_2 https://osyoyu.com/blog/2024/07/18/213247

                                              Rubyのパフォーマンスプロファイリングの改善 / Enhancing performance profiling for Ruby
                                            • Ruby: 機械学習などで使われる距離測定アルゴリズムをRubyで実装する(翻訳)|TechRacho by BPS株式会社

                                              概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: Common Distance Metrics Implemented in Ruby 原文公開日: 2023/07/22 原著者: Domhnall Murphy 日本語タイトルは内容に即したものにしました。 metricsの訳語は原則として「測定」としています。 機械学習や人工知能の分野は、基本的に2点間の距離(distance)を測定する機能に依存しています。本記事では、よく用いられる測定方法のいくつかを紹介し、それらの解釈について説明するとともにRubyで実装する方法を示します。 🔗 はじめに 機械学習がらみのタスクの多くは、エンティティを「特徴(features)のセット」という観点で記述することから始まります。 たとえばテキストベースの学習タスクであれば、おそらく語(word)ごとの出現頻度が特徴となるでしょうし、

                                                Ruby: 機械学習などで使われる距離測定アルゴリズムをRubyで実装する(翻訳)|TechRacho by BPS株式会社
                                              • Namespace on read

                                                Ruby Association Grant Project "Namespace on read" Report at Ruby Association Activity Report 2024

                                                  Namespace on read
                                                • Ruby は String をメモリ上でどのように扱っているのか? | IIJ Engineers Blog

                                                  電子メール、ネットワーク機器集中管理、異常検知、分散処理、クラウド基盤などのシステム開発に従事。古代Rubyist。 先日、 Ruby (CRuby) が String をメモリ上でどのように扱っているのか気になって調べていました。そこで String の構造体やメモリの扱いとその変遷が興味深いと思ったので、ちょっとまとめてみました。 Ruby のオブジェクトのデータ構造 まず前提知識として、そもそも Ruby が C の世界でオブジェクトをどのようなデータ構造で持っているかをざっくりおさらいします。 VALUE 型 Ruby の内部ではオブジェクトを VALUE 型という型の変数で取り扱っています。 // include/ruby/internal/value.h typedef unsigned long VALUE; 宣言の通り VALUE 型の実体は unsigned long で

                                                    Ruby は String をメモリ上でどのように扱っているのか? | IIJ Engineers Blog
                                                  • Ruby 3.3.2 (+YJIT) アップデートによるパフォーマンス改善レポート - inSmartBank

                                                    はじめに こんにちは!株式会社スマートバンクでサーバサイドエンジニアをしている @nagasawa です。 2024年6月より弊社では Ruby 3.3.2 を本番アプリケーションで稼働させ始めたため、バージョンアップ前と比較してどの程度パフォーマンスに変化が現れたのかをご紹介いたします。 また、今回を機に YJIT Metrics の可視化と YJIT の遅延起動にも取り組んだため、その手法や効果についてもこの記事内でシェアできればと考えています。 前提 下図のシステムアーキテクチャ図の通り、弊社では Ruby と Rails で開発されたいくつかのシステムを稼働させています。 この記事では core-api と呼ばれている私達が開発してる「家計簿プリカ B/43」の機能のほぼ全てを提供しているシステムのパフォーマンス変化をご報告いたします。 バージョンアップ前 バージョンアップ後 Ru

                                                      Ruby 3.3.2 (+YJIT) アップデートによるパフォーマンス改善レポート - inSmartBank
                                                    • Introduction of Happy Eyeballs Version 2 (RFC8305) to the Socket library

                                                      Ruby Association Activity Report 「socketライブラリへのHappy Eyeballs Version 2 (RFC8305)の導入」報告資料 参考資料:HEv2の状態を洗い出すために作成した疑似コード https://gist.github.com/shi…

                                                        Introduction of Happy Eyeballs Version 2 (RFC8305) to the Socket library
                                                      • Ruby言語の進化を追いかけて意外な構文機能を発見した話(翻訳)|TechRacho by BPS株式会社

                                                        概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Vignettes on language evolution: discovering an old syntax feature history 原文公開日: 2024/07/01 原著者: zverok 日本語タイトルは内容に即したものにしました。 私がこれまでまったく気づいていなかった、ある構文機能がRubyに存在します。 Rubyの進化をテーマにした前回記事を書きつつ(かつ今後出版する書籍の形式を構想しつつ)、私はRuby言語の歴史をどこまでも深く掘り下げ始めています。同時に他の言語についても調べ、あるソリューションが業界で広まったのがいつだったのか、逆にある手法が流行らなくなったのはいつだったのかを理解しようとしています。 Rubyについては、NEWSやChangelogファイルに目を通したり、変更された時期を独自に構

                                                          Ruby言語の進化を追いかけて意外な構文機能を発見した話(翻訳)|TechRacho by BPS株式会社
                                                        • Techouse社内勉強会の内容を紹介します(1) データベース<ACID編> - Techouse Developers Blog

                                                          Techouseの「エンジニア基礎勉強会」とは Techouse では「基礎勉強会」と称して2週間に1回、わたしが OS・ネットワーク・データベース・ハードウェア・セキュリティ・システムアーキテクチャなどをお話する勉強会を開催しています。 講師は私ひとり、資料を準備するのも私ひとり、動画を収録して YouTube Live で社内向けに配信する作業も私ひとりでやってます。 参加は任意ですが、社内のメンバー (社員・インターン生・業務委託でご参画いただいている方) の多くの方が参加してくれています。先日の RubyKaigi 2024 に参加してくれたメンバーもほとんどがこの勉強会に参加し、基礎的な知識をもった上でセッションへ臨んでくれました。 開催履歴 これまでの開催履歴はこんな具合です。 見ていただくとわかる通り、ほんとうに基礎的な内容を1個ずつやっているということがわかるかと思います。

                                                            Techouse社内勉強会の内容を紹介します(1) データベース<ACID編> - Techouse Developers Blog
                                                          • Rails 7.2 - Slidev

                                                            • Finding Memory Leaks in the Ruby Ecosystem

                                                              This blog post is adapted from a talk that Adam Hess and I gave at RubyKaigi 2024. Until recently, Ruby lacked a mechanism for detecting native-level memory leaks from within Ruby and native gems. This was because, when Ruby terminates, it does not free the objects that are still alive or the memory used by Ruby’s virtual machine. This is because the system will reclaim all the memory used anyway,

                                                                Finding Memory Leaks in the Ruby Ecosystem
                                                              • 「Ruby 3.3.4」がリリース ~今後は2カ月おきにマイナーアップデートを提供/

                                                                  「Ruby 3.3.4」がリリース ~今後は2カ月おきにマイナーアップデートを提供/
                                                                • noteはRailsガイドに協賛します|noteエンジニアチームの技術記事

                                                                  note株式会社は、Railsガイドに協賛をします。 2014年のサービス開始から今までRailsで開発をしてきまいた。これまですばやくリリースをし、サービス拡大を持続できているのも、Railsのレールの上を走ってこられたからです。エンジニアが開発にすぐに着手できるスピード感は、他のフレームワークにはない強みだと考えています。 Railsで開発を続けている企業にとって心強いのがRailsガイドの存在です。定期的に迅速に改善されていく日本語ドキュメントがあるのも、Railsが愛される理由の一つでしょう。 そんなRailsガイドに少しでも恩返しできるように、協賛という形で支援をしたいと思っております。 ▲Railsガイドを運営するYassLab 株式会社さんにも記事にしていただきました Railsガイドの概要RailsガイドはRuby on Railsに特化した1,600ページ超えの大型リファ

                                                                    noteはRailsガイドに協賛します|noteエンジニアチームの技術記事
                                                                  • Mastering Ruby Code Navigation: Major Ruby LSP Enhancements in the First Half of 2024

                                                                    In the first half of 2024, Ruby LSP has seen significant enhancements, particularly in the area of code navigation, thanks to the advancement of its indexer. In this post, we’ll dive into the major code navigation enhancements that have been made to Ruby LSP. We’ll also touch on some experimental features that are on the horizon. NOTE While the Ruby LSP server (ruby-lsp gem) can be integrated with

                                                                      Mastering Ruby Code Navigation: Major Ruby LSP Enhancements in the First Half of 2024
                                                                    • Ruby: IRBとRailsコンソールで強化された機能: 2024年上半期(翻訳)|TechRacho by BPS株式会社

                                                                      🔗 1: ヘルプコマンドとヘルプメッセージの改善 🔗 全般的な改善点 ヘルプ機能の良さは、使い勝手を左右する大事な決め手です。IRBのheopコマンドが今回大幅に強化されました。 変更前の振る舞い RubyのAPIドキュメントを探索するには、別途riコンソールを開く必要がありました。 最新の振る舞い ユーザーからの要望を反映して、riコンソールを開かなくてもIRB自身でヘルプメッセージを表示できるようになりました。 APIドキュメント IRBでshow_docを実行することでAPIドキュメントを検索できるようになりました。 🔗 コマンドを指定して詳細なヘルプを表示 新しいhelp コマンド名機能を用いてツールの利用法を詳しく表示できるようになり、機能を探しやすくなりました。 🔗 実行例 irb(main):001> help edit Usage: edit [FILE or co

                                                                        Ruby: IRBとRailsコンソールで強化された機能: 2024年上半期(翻訳)|TechRacho by BPS株式会社
                                                                      • Rubyのバージョンを最新版にアップグレードした話 - YOUTRUST Tech Blog

                                                                        こんにちは、YOUTRUST Webエンジニアの寺井(YOUTRUST/X)です。 今回、YOUTRUSTで使っているRubyのバージョンを 3.2.4 から 3.3.4 (執筆当時の最新版)にアップグレードしたので、その過程を記事にしたいと思います。 1. 非互換な変更点の確認 まずは、Ruby 3.2 から Ruby 3.3 への変更点を調べました。 Ruby 3.3.0 リリース プロと読み解くRuby 3.3 NEWS サンプルコードでわかる!Ruby 3.3の主な新機能と変更点 主に上記の記事を参考にして、互換性に関する変更点について、YOUTRUSTのプロダクションコードで影響がないかを確認していきました。 1.1 it という名前のメソッド呼び出しが行われていないこと Ruby 3.4 ではデフォルトのブロックパラメータにitが導入される予定のため、Ruby 3.3 でitと

                                                                          Rubyのバージョンを最新版にアップグレードした話 - YOUTRUST Tech Blog
                                                                        • How it became like this? Ruby Range class

                                                                          Understanding the core class design and usage via its evolution Years ago, my studies into the Ruby Evolution started with the persuasion that mastering the programming language to express one’s intentions clearly and efficiently may grow significantly by understanding how it evolved and what intentions were put behind its various elements. Moving back through the history of a change of some eleme

                                                                            How it became like this? Ruby Range class
                                                                          • Mid-Year Review: IRB and Rails Console Enhancements in the First Half of 2024

                                                                            As a core part of the Ruby ecosystem, IRB (Interactive Ruby) is an invaluable tool for developers. With its rapid pace of changes and improvements, staying up-to-date with the latest features can significantly enhance your development workflow. In this post, we’ll cover the significant updates to IRB from the first half of 2024 (between v1.11.0 and v1.14.0), as well as enhancements in the Rails Co

                                                                              Mid-Year Review: IRB and Rails Console Enhancements in the First Half of 2024
                                                                            • dRubyによる分散プログラミングを体験💻 - @m_seki の

                                                                              dRuby25周年だった! LPサイズ。美麗で開封できない... RECORD / 江口寿史、初のジャケットアートワーク集。LPサイズのイラスト全29点、本人による全作品解説、吉田拓郎の寄稿文、銀杏BOYZ・峯田和伸とのスペシャル対談を収録した超豪華画集! 片桐さんからのギフトで、25年前の今日、dRubyをメーリングリストに投稿したことを思い出した。いただいたバージョンは緑のシールになってる(amazonの写真は茶色)。何種類あるんだろうか。 dRubyのプロキシー的なもの 最近、dRubyを使う機会が多い。イントラネットのRWikiをホストしているマシンのリプレイスのために、旧マシンのRWikiを稼働させながら新マシンに移行する実験をしてる。 旧マシンのRWikiのDRbObjectを操作(RMI)すると、自動的に新マシンを操作するようにしたいなーと思ってプロキシを書いてみた。 ORG

                                                                                dRubyによる分散プログラミングを体験💻 - @m_seki の
                                                                              • Rails + Ruby 3.3.0でYJITを使ってみる - BitArts Blog

                                                                                Rubyインストール時にRust環境が必要 Ruby 3.3.0では簡単にYJITが選択できるようになっているのですが、前提条件としてRubyビルド時にRustコンパイラがインストールされている必要があります。Rustが入っていない場合、YJITが使えないRubyがビルドされてしまうので注意しましょう。 これはrbenvでRubyをインストールする場合も例外ではありません。Macの場合は次のような手順で事前にRust環境をインストールしておきます。 $ brew install rustup-init $ rustup-init $ exec $SHELL -l $ rbenv install 3.3.0 rubyを--yjitオプション付きで実行するとYJITが有効になります。バージョン情報を確認すると「+YJIT」と表示されて、YJITが有効になっていることが確認できます。 % rub

                                                                                  Rails + Ruby 3.3.0でYJITを使ってみる - BitArts Blog
                                                                                • 自分用の blog コマンドを作った - おんがえしの blog

                                                                                  Ruby と thor を使って書いた。Runa を使って blog コマンドとして登録してある。 github.com 使い方 # 新規記事作成 $ blog new タイトル # VSCode で開く $ blog edit # blogsync push $ blog push # blogsync pull $ blog pull # 開く $ blog open # 管理画面を開く $ blog manage

                                                                                    自分用の blog コマンドを作った - おんがえしの blog