並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 2298件

新着順 人気順

rubyの検索結果241 - 280 件 / 2298件

  • Ruby公式「Pythonとの違い」から学ぶ、Pythonの「Rubyとの違い」

    はじめに 隔週で開催される社内勉強会で、Python の基本的な言語仕様を紹介するために Ruby 公式の「PythonからRubyへ」というドキュメントを用いた回が意外に盛り上がったので記事にします。 Ruby コミュニティのメンバーによって運営されている Ruby 公式サイトに掲載されているドキュメントで、Python 使いが Ruby と Python の言語仕様の違いを理解するのにぴったりな内容となっています。 今回、こちらのドキュメントの「Python との違い」の章を一部「Ruby との違い」に読み替えて、Ruby 使いに向けた Python との言語仕様の比較を行いたいと思います。 Rubyと違って、Pythonは… Pythonと違って、Rubyは… 引用: PythonからRubyへ 文字列は不変です。 文字列は可変です。 引用: PythonからRubyへ Python

      Ruby公式「Pythonとの違い」から学ぶ、Pythonの「Rubyとの違い」
    • MatzにrejectされたES6風HashリテラルをこっそりRubyで使う

      ES6風Hashリテラルとは ここで言う「ES6風Hashリテラル」というのは、ES6(ES2015)でobject property shorthandとして導入された省略記法です。 最近のJavaScriptを使っている人なら見慣れた記法ですね。Rubyでもこういう風に書けると便利そう、と思う人はもちろんいるわけで、この記法を取り入れるべく過去にもbugs.ruby-lang.orgで提案がありました。が、残念ながら今のところrejectされたままです。 Feature #11105 ES6-like hash literals https://bugs.ruby-lang.org/issues/11105 Feature #15236 add support for hash shorthand https://bugs.ruby-lang.org/issues/15236 似た記法

        MatzにrejectされたES6風HashリテラルをこっそりRubyで使う
      • 技術書典15で「AWSとRubyではじめるサーバーレス入門」という本を頒布します!(サークル名: yuuu け09) - .logbook

        11月に開催される技術書典15で「AWSとRubyではじめるサーバーレス入門」という本を頒布します。 techbookfest.org 技術書典15は以下日程で、オンライン・オフライン同時開催です! オンライン: 11月11日(土)〜26日(日) オフライン: 11月12日(日) 11時~17時 techbookfest.org 紹介する本はオンライン・オフライン(ブース: か05)どちらでも頒布いたしますので、興味を持たれた方はぜひご購入ください! 表紙 今回はタイトルの通り、Rubyを使ってAWS上にサーバーアプリケーションを構築する方法を解説しており、ツールとしてAWS SAMを使用しています。 AWS SAMは解説記事によくリスのキャラクターが用いられているので、表紙にもリスを描いてもらいました。 表紙・裏表紙 内容 前述の通り、いわゆる「サーバーレス」なアプリケーションをハンズオ

          技術書典15で「AWSとRubyではじめるサーバーレス入門」という本を頒布します!(サークル名: yuuu け09) - .logbook
        • 他の言語経験者がRubyを使い始めると驚くこと:新刊ピックアップ

          筆者は現在Rubyプログラマとして働いていますが,もともとはJavaやC#をメインで使っていました。今でこそRubyプログラミングを心の底から楽しめていますが,Rubyを始めた当初はそれまでやってきた言語との違いに戸惑ったものでした。これから新しいプログラミング言語としてRubyを学び始める人も,きっと当時の筆者と同じように驚いたり戸惑ったりすることでしょう。そこで,今回の寄稿記事では他の言語経験者がRubyを使い始めたときに「えっ」と驚くようなポイントをいろいろと挙げてみます。 メソッドの呼び出しの丸かっこが省略できる Rubyではメソッドを呼び出すときの丸かっこを省略できます。以下はsizeメソッドを丸かっこ付きで呼び出す場合と丸かっこなしで呼び出す場合です(ただし,状況によっては丸かっこを省略できないケースもあります⁠)⁠。

            他の言語経験者がRubyを使い始めると驚くこと:新刊ピックアップ
          • Ruby 2.7 と Rails 6.0 / Rails 5.2 への展望と懸念 - koicの日記

            Ruby 3.0 に向けた Ruby 2.7 と Rails の状況がめまぐるしく変わっているようなので、現在持っている知識のスナップショットを書き残しておきます。 Rails 6.0 系と Ruby 2.7 系 昨日、Matz によって今後リリースされる Ruby 2.7.2 でキーワード引数の分離への警告出力が Ruby 本体側で取りやめになるだろう旨の投稿が Rails の Discuss フォーラムにありました。 discuss.rubyonrails.org これにより以下の組み合わせでは、キーワード引数の分離への警告が出なくなる見通しが考えられます。 Rails 6.0.3 以上と Ruby 2.7 系 Rails 6.0.2.2 までの Rails 6 系であれば Ruby 2.7.2 以上 というか警告が抑制される場合の Ruby 2.7.2 はジョーカーなので、Rails

              Ruby 2.7 と Rails 6.0 / Rails 5.2 への展望と懸念 - koicの日記
            • Ruby cgi gemのHTTPヘッダインジェクション脆弱性CVE-2021-33621の概要と発見の経緯

              この記事はRuby Advent Calendar 2022の第20日の記事です。前日の記事は@ydahさんによる「RuboCopのバージョンを最新に保つ技術」でした。 2022年11月22日に、Ruby cgi gemのHTTPヘッダインジェクション脆弱性CVE-2021-33621が発表がされました。 CVE-2021-33621: HTTP response splitting in CGI RubyのCGIライブラリにHTTPレスポンス分割脆弱性があり、秘密情報が漏洩する - HackerOne CGI::Cookieクラスにおけるセキュリティ上好ましくない仕様および実装 - HackerOne 私はHackerOneを通じてこの脆弱性を報告しました。この記事では、当該脆弱性の概要と発見の経緯などについて報告します。 概要 脆弱性発見の経緯 影響を受けるアプリケーション 影響 対策

                Ruby cgi gemのHTTPヘッダインジェクション脆弱性CVE-2021-33621の概要と発見の経緯
              • Rubyのメタプログラミング問題集をブラッシュアップした話 - SmartHR Tech Blog

                こんにちは。SmartHRでRails顧問業をしているwillnet です。以前、SmartHRでのメタプログラミングRuby読書会と、その成果物というエントリを(kinoppydさんが)書いていました。今回のエントリはその続きの話です。 実際に手を動かすと身につく 上記エントリでは メタプログラミングRuby 第2版の読書会を、単に本を読むだけでなく、毎週新しい問題を作り参加者に解いてもらう、という流れで開催したことを紹介しました。 Rubyによるメタプログラミングは、普段の仕事ではなかなか使う機会がないテクニックも多く*1、一回本を通読しただけですべてを覚えるのは難しいと感じています。しかし、その読書会では実際に手を動かして解く問題を用意したため、通常の読書会よりも内容が身につく度合いが大きかったのではないか、と感じました。 いい問題があるのでもっと活用したいぞ せっかく作った問題を活

                  Rubyのメタプログラミング問題集をブラッシュアップした話 - SmartHR Tech Blog
                • Rubyの型システム勉強会を開催した

                  Leaner 開発チームの黒曜(@kokuyouwind)です。 週末のゾンビランドサガLIVEを楽しみに今週を生き抜いています。 Rubyの型システム勉強会 実施背景 先日のRubyKaigi Takeout 2021で機運が盛り上がったこともあり、社内で Ruby の型システムを活用していきたいよねという話が出てきました。 前回書いた記事 で RBS Collection を試したのも、実際の使用感を見てみたかったという部分があります。 一方で Ruby の型システムはシグニチャ定義を別ファイルにする必要があったり、検証用のツールが複数合ったりと独特で、そもそも全体像をつかめていないというメンバーも複数人いました。 このあたりは自分の興味分野で RubyKaigi のセッションを追いかけていたこともあり、社内で勉強会を開いて下地を固めよう、ということになりました。 勉強会で使用したアジ

                    Rubyの型システム勉強会を開催した
                  • モノリシックな Ruby on Rails サービスからの Webpacker の剥がし方 | 働くひとと組織の健康を創る iCARE

                    iCARE の提供しているサービス Carely では 2020年の 10月から半年ほどかけて Webpacker からの脱却を行いました。似たような記事はいくつかありますが、まったくの未着手から解説したものはないと思うので、記録をかねてまとめました。長めの記事になりますが同じことで困っている方の参考になれば幸いです はじめに - Carely の構成について もともとは Rails5 のスタンダードな構成だったものを、 Webpacker を導入して GraphQL + Vue2 の構成に移行。SPA ではなくエンドポイントごとにエントリーポイントがあるような構成になっています ルーティングなどは Rails に則りつつ、画面はほぼ Vue2 で構成されています。もちろん古い slim + sprockets の画面も残っているため coffee script のファイルも一部健在です

                      モノリシックな Ruby on Rails サービスからの Webpacker の剥がし方 | 働くひとと組織の健康を創る iCARE
                    • デザインパターンを Ruby で

                      複雑なオブジェクトを段階的に構築できます。 このパターンを使用すると、 同じ構築コードを使用して異なる型と表現のオブジェクトを生成することが可能です。

                      • テストを実行してRubyの型情報を集めるやつを作った - スペクトラム

                        イントロダクション 「テストを走らせて型情報を収集すればいいんじゃない?」そのアイデア自体は話題に上がることが多かったかと思われますが、観測範囲では前例がないように見えます。そこで、実際に作ってこそ見える世界があると思い動くものを実装してみました。 Orthoses::Trace github.com orthosesはRBSを生成するための機能を作るフレームワークで、この機能の一つとしてOrthoses::Traceというミドルウェアを実装しました。 例 例題として、rack-testというgemのRBSを生成したいとします。 その場合の生成コードをOrthoses::Traceを使って以下のように準備します。 https://github.com/ksss/orthoses/blob/db80d506c5fb02dadaa0ae303e0761ba0a543f6f/examples/r

                          テストを実行してRubyの型情報を集めるやつを作った - スペクトラム
                        • WebAssembly/WASIに対応した「Ruby 3.2 Preview 1」公開。WebブラウザでRubyが動く世界がやってくる

                          WebAssembly/WASIに対応した「Ruby 3.2 Preview 1」公開。WebブラウザでRubyが動く世界がやってくる これまでリリースされてきたLinux版やWindows版、Mac版などのRubyバイナリに加えて、WebAssembly/WASI版のRubyが登場することになります。 これにより、LinuxやWindowsなどの上で実行していたRubyのアプリケーションが、これからはWebブラウザなどWebAssembly/WASIに対応したプラットフォーム上でも実行できるようになることが期待されます。 CRubyをコンパイルしてWebAssembly/WASI対応に Ruby言語のリファレンス実装となっているインタプリタのソースコードはC言語で実装されているため、一般にこのソースコードまたはその実装を「CRuby」と呼びます。 このCRubyのソースコードをコンパイル

                            WebAssembly/WASIに対応した「Ruby 3.2 Preview 1」公開。WebブラウザでRubyが動く世界がやってくる
                          • 「RubyはRailsと一緒に“峡谷”を乗り越えた」 「キャズム理論」に沿った、Rubyが広まるまでの歩み

                            Qiita Conferenceは、ソフトウェア開発者が集まり、最新の技術や最先端の挑戦・ソフトウェアの未来についての考えや知見を共有し、つながる場を創出する、「Qiita」が開催するオンライン技術カンファレンスです。ここでプログラミング言語Rubyの生みの親であるまつもとゆきひろ氏が登壇。続いて、ソフトウェアにおける「キャズム理論」について話します。前回はこちらから。 知られないものは存在しないものと同じ まつもとゆきひろ氏(以下、まつもと):「良いものを作れば世に広まる」という話なんですが、ビジョンを用意しました、ビジョンに従って世に問うような、未来を予測して、彼らは自覚していないけれども「こんなものがあったら顧客は本当に喜ぶ。生活が便利になるし、これはすばらしいものだ」と思って、良いものを提供しました。それで十分かというとですね、残念ながら「良ければ広まる」ということも、残念ながらあ

                              「RubyはRailsと一緒に“峡谷”を乗り越えた」 「キャズム理論」に沿った、Rubyが広まるまでの歩み
                            • Ruby: GemfileとGemfile.lock究極ガイド(翻訳)|TechRacho by BPS株式会社

                              概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: The Ultimate Guide to Gemfile and Gemfile.lock | Saeloun Blog 原文公開日: 2022/08/16 原著者: Keshav Biswa サイト: Saeloun Blog Ruby on Railsの開発者なら、GemfileやGemfile.lockを知らない人はいないでしょう。この2つのファイルはRuby gemをインストールするのに欠かせませんが、仕組みを知らないままでは混乱する可能性もあります。本記事では、Gemfileとは何か、その中に何があるのか、および使い方について解説します。 最初に、デフォルトのRails 7アプリケーションを作成し、それからGemfileの各行を調べて意味を理解していきましょう。 新規作成したアプリのディレクトリには、Gemfileと

                                Ruby: GemfileとGemfile.lock究極ガイド(翻訳)|TechRacho by BPS株式会社
                              • Ruby3.1 静的解析の導入で開発体験を向上させる (RBS, TypeProf)|Offers Tech Blog

                                まえがき こんにちは、Offers を運営している株式会社 overflow CTO の 大谷旅人 です。 小ネタです。 弊社では Ruby/Rails をバックエンドの開発言語として採用しており、その柔軟性は開発の大きな助けとなっている面がありつつも、コードベース全体の規模増加や保守効率を考えて環境自体の見直しや、段階的な新環境への移行も行っています。 その中で、今回は Ruby での開発体験を向上させるために行っていた、静的型解析の導入に関してのお話です。 型安全性な環境(TypeScript,Rust,etc..)から Ruby に戻ってくるとやはりあっちは機構が勝手にチェックしてくれていいぞいいぞと思うわけで、 C#が dynamic 型で静的型言語なのに動的型付していたり, Python が type hints で型検査してたりを見ると、どうにかこうにか導入したいと日々思ってい

                                  Ruby3.1 静的解析の導入で開発体験を向上させる (RBS, TypeProf)|Offers Tech Blog
                                • ⚡️Ruby、オブジェクト指向、デザイン / Ruby, OOP, Design

                                  Omotesando.rb #56 https://omotesandorb.connpass.com/event/192551/

                                    ⚡️Ruby、オブジェクト指向、デザイン / Ruby, OOP, Design
                                  • Ruby World Conference 2019 rubyによる超大量データ配信

                                    社内スタートアップによる組織の成長に伴い発生する痛みとその解決策について45分拡大版 #devsumi #devsumiBItsuki Kuroda

                                      Ruby World Conference 2019 rubyによる超大量データ配信
                                    • まつもとゆきひろさんと、なかだのぶよしさんと、Rubyについてのお話 - ポッドキャスト | Heroku

                                      永野: 私は、SalesforceでHerokuを担当している永野智です。このエピソードは、Deeply Technicalがテーマとなります。今回はゲストとして、「Rubyのパパ」、Matzこと まつもとゆきひろ さん、そして「さすらいのパッチモンスター」なかだのぶよし さん。また、Herokuのサポートエンジニア 澤光映さんをゲストにお迎えしてお送りいたします。皆さんよろしくお願いします。 Matz, Nobu, 澤: よろしくお願いします。 永野: まずは、もう皆さん知ってると思うんですが、自己紹介から始めたいと思いますので、じゃまずMatzさんから自己紹介をお願いいたします。 Matz: はい、 まつもとゆきひろ と申します。Rubyを作った人ですね。「Rubyのパパ」って名乗ってますけれども。日本では、平仮名で まつもとゆきひろ で、海外では M, A, T, Zで Matzって

                                        まつもとゆきひろさんと、なかだのぶよしさんと、Rubyについてのお話 - ポッドキャスト | Heroku
                                      • SmartHRでのメタプログラミングRuby読書会と、その成果物 - SmartHR Tech Blog

                                        エンジニアのkinoppydです、お久しぶりです。 今日は社内メタプログラミングRuby 第2版読書会を開催した話と、その成果物に関して共有しようと思います。 SmartHR社内での勉強会 社内では、いくつかの勉強会や読書会が開催されています。業務で必要な知識をみんなで揃って学習する目的であったり、単に有志で集まって自分たちの力を底上げするためにやっていたり様々な形態のものがあります。例えば直近では、大規模スクラムを実践するために、大規模スクラム Large-Scale Scrum(LeSS) アジャイルとスクラムを大規模に実装する方法をテキストにスクラム勉強会をCTOのmasato_serizawaが開いていたり、フロントのコードを書くときのメンタルモデルを学ぶためにDan AbramovのJust JavaScriptを毎週翻訳して参加者で共有する会を、フロントエンジニアのnabeli

                                          SmartHRでのメタプログラミングRuby読書会と、その成果物 - SmartHR Tech Blog
                                        • Ruby 3.2+YJIT 本番運用カンパニーになりました #rubykaigi - Timee Product Team Blog

                                          こんにちは。2023年1月に株式会社タイミーに入社したバックエンドエンジニアの id:euglena1215 です。 RubyKaigi 2023 がとうとう明日に迫ってきました。楽しみですね。 タイミーは RubyKaigi で初めてブース出展を行います。至らぬ点もあるかと思いますが、RubyKaigi を一緒に盛り上げていければと思っています!どうぞよろしくお願いします。 productpr.timee.co.jp 今回はタイミーが本番運用している Rails アプリケーションに対して Ruby 3.2.2 へのアップデートと YJIT の有効化を行い、パフォーマンスが大きく改善したことを紹介します。 RubyKaigi で「Ruby 3.2+YJIT 本番運用カンパニーです」と言いたいので粛々と進めている— てっぺー (@euglena1215) 2023年4月19日 前提 タイミー

                                            Ruby 3.2+YJIT 本番運用カンパニーになりました #rubykaigi - Timee Product Team Blog
                                          • まつもとゆきひろと考えるデータ処理の未来 RubyからStreemへ〜Ruby開発者 まつもとゆきひろ(Matz)さん【データ×まつもとゆきひろ】|株式会社primeNumber

                                            まつもとゆきひろと考えるデータ処理の未来 RubyからStreemへ〜Ruby開発者 まつもとゆきひろ(Matz)さん【データ×まつもとゆきひろ】 ソフトウェア技術者のまつもとゆきひろ(Matz)さんが開発したRubyは、1995年のリリースから現在まで世界中のユーザーに愛され、開発に利用されてきたプログラミング言語です。一般財団法人Rubyアソシエーション運用のもと、オープンソースの言語として2012年にISO/IEC規格を取得。クックパッドやスタディプラス、huluなどのメジャーなサービスの開発に採用されてきました。実は、primeNumberのtrocco®もRubyで作られたサービス。『Ruby biz Grand prix 2022』では、ビジネスコネクション賞を受賞しました。取り組みを評価いただいた勢いで審査委員長の“Rubyのパパ”まつもとゆきひろさんに対談をお願いし、Rub

                                              まつもとゆきひろと考えるデータ処理の未来 RubyからStreemへ〜Ruby開発者 まつもとゆきひろ(Matz)さん【データ×まつもとゆきひろ】|株式会社primeNumber
                                            • Ruby 3.3 YJITのメモリ管理とRJIT 〜すべてが新しくなった2つのJITを使いこなす | gihyo.jp

                                              Ruby 3.3リリース! 新機能解説 Ruby 3.3 YJITのメモリ管理とRJIT 〜すべてが新しくなった2つのJITを使いこなす 2023年12月25日、Ruby 3.3.0がリリースされ、様々な新機能が加えられました。本連載では実際に携わった皆さんにその新しいRubyをご紹介いただきます。 RubyはJust-In-Time(JIT)コンパイラという機能を備えており、これを有効化すると実行時に機械語を生成して様々な最適化が行なわれ、実行が高速になります。Ruby 3.3にはYJITとRJITという2つのJITコンパイラがあり、デフォルトでは無効になっていますが、それぞれ--yjitと--rjitで有効化できます。 この回では、Ruby 3.3でYJITの性能特性が変化した点や、YJITに新たに追加された便利な機能、またRJITはどのように使うものであるかについて解説します。 YJ

                                                Ruby 3.3 YJITのメモリ管理とRJIT 〜すべてが新しくなった2つのJITを使いこなす | gihyo.jp
                                              • Ruby 3.1正式リリース。Shopify開発のJITコンパイラ「YJIT」をメインラインにマージ

                                                Ruby開発チームは、2021年12月25日にRuby 3.1.0の正式リリースを発表しました。 Rubyは毎年12月25日に新バージョンをリリースすることが恒例となっています。今回も一昨年のRuby 3.0に続いて新バージョンが登場しました。 Ruby 3.1でもっとも注目すべき新機能は、JITコンパイラの「YJIT」がメインラインにマージされたことでしょう。 大規模なRailsアプリでの性能向上を目指したYJIT RubyのJITコンパイラとしてはRuby 2.6から登場した「MJIT」がありますが、今回Ruby 3.1でマージされたYJITはMJITとは別のものです。 YJITは、ECサイト構築サービスで知られるShopifyが開発を進めてきたもので、Shopify自身が構築している大規模なRailsアプリケーションにおいて、より高い性能向上を目指して開発されてきました。 同社のブロ

                                                  Ruby 3.1正式リリース。Shopify開発のJITコンパイラ「YJIT」をメインラインにマージ
                                                • websocket-client-simpleをruby-jpに移管した - 橋本商会

                                                  で、1年ぐらい趣味と大学での研究を兼ねて色々開発した後、やっぱりこの分野はRubyよりNode.jsでやった方が良いなと思った

                                                    websocket-client-simpleをruby-jpに移管した - 橋本商会
                                                  • 「Rubyのしくみ」 第1章 字句解析と構文解析を読んで - Hit the books!!

                                                    「Rubyのしくみ Ruby Under a Microscope【委託】 - 達人出版会」という本の第1章を読んだので、内容と感想を書きます。 この本はいろいろな人がオススメされていたので、難しそうだなと思いつつ買いました。 🗿ではじまる行と🗿🗿🗿で囲まれた部分は自分で考えたことです。 はじめに 字句解析 times.rbの字句解析の流れ Ripperを使う 構文解析 LALR構文解析アルゴリズム 例1 例2 Rubyの文法規則 Ripperを使う その2 おわりに はじめに Rubyの構文はLispやSmalltalkといった高度な言語のアイデアを採用している。 🗿🗿🗿 Lispって? https://news.mynavi.jp/techplus/article/programinglanguageoftheworld-18/ Smalltalkって? https://

                                                      「Rubyのしくみ」 第1章 字句解析と構文解析を読んで - Hit the books!!
                                                    • Ruby: "今この時期に"プログラミング言語の進化に参加することについて(翻訳)|TechRacho by BPS株式会社

                                                      概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Participating in programming languages evolution during interesting times 原文公開日: 2023/02/08 原著者: zverok 日本語タイトルは内容に即したものにしました。写真はすべて元記事からの引用です。 前回の記事もご覧ください 毎年12月25日には、Rubyの新しいバージョンがリリースされます。2022年にはバージョン3.2に達しました。 私は2018年(Ruby 2.6)以来、毎年Rubyのリリース後にRubyChangesで網羅的なchangelogを公開しています。ここには、Ruby言語の主な変更点の説明に加えてコード例やリンクも盛り込まれています。 これは決して小さな作業ではなく、たいてい数週間もしくはそれ以上を要しています。また、新機能

                                                        Ruby: "今この時期に"プログラミング言語の進化に参加することについて(翻訳)|TechRacho by BPS株式会社
                                                      • Ruby 2.7.0 リリース

                                                        Posted by naruse on 25 Dec 2019 Ruby 2.7シリーズ最初の安定版である、Ruby 2.7.0がリリースされました。 Ruby 2.7には、多くの新しい機能やパフォーマンスの改善が含まれます。 その一部を以下に紹介します。 Pattern Matching [Experimental] 関数型言語で広く使われているパターンマッチという機能が実験的に導入されました。 渡されたオブジェクトの構造がパターンと一致するかどうかを調べ、一致した場合にその値を変数に代入するといったことができるようになります。 [Feature #14912] require "json" json = <<END { "name": "Alice", "age": 30, "children": [{ "name": "Bob", "age": 2 }] } END case JSO

                                                        • ピクシブとRuby 〜 Ruby 30周年に寄せて - pixiv inside

                                                          こんにちは、CTOの @harukasan です。2023/02/24をもってプログラミング言語Rubyが30周年を迎えたとのこと、大変おめでとうございます。 Rubyに支えられている企業の一社として感謝を示したいと思い、この記事を書くことにしました。 ピクシブとRuby ピクシブでは多くのサービスでRuby on Railsを利用しています。2012年にリリースされた国際版pixiv β(現在は提供終了)を皮切りに、pixivコミック、BOOTH、pixiv FACTORY、pixiv Sketch、Palcy、VRoid Hub、pixiv Adsと数々のプロダクトでRuby on Railsが採用されてきました。 2012年6月にリリースされたpixivコミックはRails 3.2でリリースされ10年以上にわたり同じコードベースで開発が続けられています。余談ですが、pixivコミック

                                                            ピクシブとRuby 〜 Ruby 30周年に寄せて - pixiv inside
                                                          • Ruby のコードリーディング会に参加して1年経ちました - ペパボテックブログ

                                                            EC 事業部の akatsuura (@UVB_76) です。最近は AFTER SIX LEAGUE という企業対抗戦の Apex Legends 部門に参加していて、毎月他の企業の参加者と競っています。 ペパボではお昼休みに OSS コードリーディング会という GitHub で公開されているライブラリのコードを読みすすめる会が開かれています。私はこの会が始まった 2019 年から参加し続けています。気がついたら 50 回近くの開催となっていたのでこの機会に進め方やわかったことをここで共有します。 尚、現在の参加者は Ruby on Rails で開発を行っている人たちがほとんどで、コードリーディングの対象も gem 形式で公開されている Ruby のライブラリが中心になっています。記事の中には Ruby 固有の話も出てきますが、他の言語でも読み方自体については同じようなことができるので

                                                              Ruby のコードリーディング会に参加して1年経ちました - ペパボテックブログ
                                                            • 『研鑽Rubyプログラミング』を読んだ

                                                              研鑽Rubyプログラミング 実践的なコードのための原則とトレードオフを読んだ。モチベーションとしては最近Rubyistの間でよく話題にされていたので気になったというミーハーな気持ちと、仕事でよく書くのはRuby(というかRailsでアプリ開発するのが多い)ので何か得られたらラッキーくらいな気持ち半々。 どんな本かについては他の著名なRubyistの方々が色々と書いておられるのでそちらを読む方が良いかもしれない。例えば「研鑽Rubyプログラミング」はライブラリ作者の知識・技術の幅と深さを拡大する1冊とかTechRachoの 『研鑽Rubyプログラミング』は英語版を買った人も買うべきとか。 またこの本を一言で表した文章としてあとがきから引用すると下記が端的。 Rubyコミュニティのリーダーをして「完璧超人か」と言わしめるような優れたプログラマーが、「読者が『すでにRubyをよく知っている』こと

                                                                『研鑽Rubyプログラミング』を読んだ
                                                              • Ruby の中にある解決できると嬉しい人が多分多いタフな問題 - HsbtDiary(2022-12-14)

                                                                ■ Ruby の中にある解決できると嬉しい人が多分多いタフな問題 Ruby 開発チーム(コアチーム)には壺と呼ばれる、「これができるととても嬉しい」というネタを放り込む hackmd のページがあります。issue などにして作ったところで誰かが進めるわけでもないし、project にしても epic すぎるが、いつかは何かやりたいという大きさのものを思いついたらすぐに入れています。 今回は Ruby Advent Calendar 2022 の14日目の記事として、この壺の中から熟成された夢をいくつか取り出してご紹介します。 ライブラリのRactor 対応 Ruby 3.0 の目玉として入った Ractor ですが、Ruby のライブラリが Ractor で動くかというとまだわからない、むしろ動かないだろう、というステータスです。RubyGems や Bundler でネットワークアクセ

                                                                • Rubyの“破壊的変更”を恐れるな! 毎日OSSに関わるRuboCopコミッターが教える傾向と対策

                                                                  Rubyはバージョンアップによって、やむなく旧バージョンとの互換性がなくなってしまうことがあります。それが破壊的変更です。静的コードアナライザーモジュールであるRuboCopのコミッターのkoic氏が、どんなときに破壊的変更が起きるのか、起きてしまったときは、どのように対応すればよいのか、その背景と対策を語ります。 Rubyの静的コードアナライザーモジュール「RoboCop」 koic氏:こんばんは。今回は「Breaking Change」というタイトルで発表します。Twitterは「@koic」というハンドルネームでやっています。永和システムマネジメントという会社から来ました。 (Rubyの静的コードアナライザーモジュールの)RuboCopは、今日も含めて何度か話に出ていると思うのですが、私はそこのコミッターをしていたり、RailsのActive RecordのOracleを使っている部

                                                                    Rubyの“破壊的変更”を恐れるな! 毎日OSSに関わるRuboCopコミッターが教える傾向と対策
                                                                  • Ruby on Rails: The Documentary

                                                                    Ruby on Rails has one of the most faithful communities online, it also has one of the most controversial, rabble-rousing creators out there, Danish programmer, David Heinemeier Hansson. Widely known as DHH, David tells us how Rails went from a crazy idea to one of the most talked-about full-stack frameworks over the course of 20 years. Get the whole spill by the people who had a front-row seat t

                                                                      Ruby on Rails: The Documentary
                                                                    • Why is building the Ruby environment hard?

                                                                      The Rubyists are facing the build error with missing libraries like openssl, libyaml and libffi issues when they install the new versions every year. Other people are facing issues of nokogiri, rmagick and others when they develop Rails application. Why we got these issues everyday? I describe the build failure case and their solution from the ruby-build maintainer's point of view. Finally, I intr

                                                                        Why is building the Ruby environment hard?
                                                                      • Alan Wu氏「YJITはRubyプロセス実行から終了まで全体のパフォーマンス向上を目指す」 ~RubyKaigi 2022 3日目キーノート | gihyo.jp

                                                                        CPUの世界では、内部の機構をフロントエンド(命令フェッチとデコード)とバックエンド(命令実行とメモリ)で分けることができます。つまりrailsbenchの実行においては、フロントエンドの処理がバックエンドの処理に対して間に合っておらず、全体としてCPUの性能を使い切れていないことになります。 また、RubyのプログラムとYJITが生成したコードの行き来(ジャンプ)が頻繁に行われていました。このジャンプが多いということは、それだけ実行のために参照するアドレスが多く、結果としてコードの実行パスが増えてしまいます。その結果、予測が失敗したパス(汚染されたパス)が大量に増えて、投機的実行の予測精度に影響を与えていました。 加えて初期のYJITでは、この汚染されたパスもコード生成に利用していたため、さらに問題を悪化させていました。 これらが原因となり、初期のYJITではrailsbenchのパフォ

                                                                          Alan Wu氏「YJITはRubyプロセス実行から終了まで全体のパフォーマンス向上を目指す」 ~RubyKaigi 2022 3日目キーノート | gihyo.jp
                                                                        • ruby.wasm で MySQL Parameters を作り直した - tmtms のメモ

                                                                          プライベートでは基本的に誰の役にも立たないプログラムを作ってるんだけど、たまにうっかり MySQL Parameters みたいな役に立つものを作ってしまう。 MySQL Parameters は5年くらい前に Vue.js の勉強のために作ってみたんだけど、結局そのまま Vue.js は触らず放置状態だった。MySQL の新しいバージョンが出るたびにデータは更新してたけど。 ruby.wasm で Ruby が WebAssembly 上で動くようになり、ブラウザ上で JavaScript の代わりに使えるようになったんで、MySQL Parameters を Ruby で作り直してみた。 ruby.wasm ruby.wasm のページに載ってるけど、これだけでブラウザ上で Ruby が動く。簡単。 <html> <script src="https://cdn.jsdelivr.ne

                                                                            ruby.wasm で MySQL Parameters を作り直した - tmtms のメモ
                                                                          • マイクロサービス・アーキテクチャと共存する Ruby on Rails のアーキテクチャ的拡張 - その事例と可能性 / Kaigi on Rails 2021

                                                                            Kaigi on Rails 2021 の発表資料です。 https://kaigionrails.org/2021/talks/Altech_2015/

                                                                              マイクロサービス・アーキテクチャと共存する Ruby on Rails のアーキテクチャ的拡張 - その事例と可能性 / Kaigi on Rails 2021
                                                                            • Ruby on Rails 6 エンジニア 養成読本という本を共著で執筆しました - すがブロ

                                                                              Ruby on Rails 6 エンジニア 養成読本 まずはじめに 10/26 発売 電子版は同日か少し遅れて発売予定 10/19追記 : 技術評論社の電子書籍サイトから購入可能になりました @netwillnet さんと共著です Rails 6.0対応の書籍としてはそれなりに早いタイミングでの出版だと思います 執筆しているときは最速で出したいという思いがありましたが、実際のところ最速なのかはわからないです😅 どのような本ですか? 目次はこんな感じです 巻頭特集 ようこそRuby on Railsの世界へ~ここが変わった! Rails 6の新機能~ - Action Textによるリッチテキスト機能の追加 - 複数の DB へ接続を行う機能の追加 - Action Mailboxによるメール受信機能の追加 特集1 Rails 6ではじめるRuby on Rails再入門 - 第1章 Ru

                                                                                Ruby on Rails 6 エンジニア 養成読本という本を共著で執筆しました - すがブロ
                                                                              • Ruby On BrowserとRuby WASM/WASIの雑感 - ブログのおんがえし

                                                                                Ruby WASM/WASI の発表にえらくテンションが上がったので、勢いで作ったものが窓の杜で紹介されてびっくりしました。(それだけ注目されているということですね) Ruby On Browserは51行しかないHTMLでまだまだ荒削りなのでもっとちゃんとしたものを試したい方は是非TryRuby playgroundのCRuby 3.2.0dev をお試しください。 Ruby On Browser自体もまだまだ発展させていくつもりですが、現状Ruby WASM/WASIを触ってみていいなあと思ったことです。 1. 簡単に自分好みのブラウザRubyが作れる Try Rubyのようにブラウザ上でプログラミング言語が試せること自体は現在はそこまで珍しくないですが、クライアントサイドだけで(しかもとても短いコードで)動かせるのは大変魅力的です。個人のPCやイントラネット上に好みのカスタマイズを加

                                                                                  Ruby On BrowserとRuby WASM/WASIの雑感 - ブログのおんがえし
                                                                                • 島根県が使ったドメイン、第三者が再取得で注意喚起 新型コロナやRuby関連事業など

                                                                                  島根県は1月15日、県が過去に使用したドメインが、運用停止後にオークションサイトで売買されるなどして第三者に再取得されていることが分かったと発表した。各ドメインにリンクを張っているサイトの管理者に対して、リンクの削除を依頼している。 再取得されていることが分かったのは、「島根県新型コロナ対策認証店認証制度」(shimane-ninsho.jp)、「スモウルビー・プログラミング甲子園開催事業」(smalruby-koshien.jp)、「しまねものづくり人材育成支援 Navi」(shimane-monodukuri.jp)の3ドメイン。 「スモウルビー」とは、島根県松江市を中心に活動する「NPO法人Rubyプログラミング少年団」が開発しているOSS。「スモウルビー・プログラミング甲子園」は、スモウルビーを使った小中学生向けプログラミング競技会として2016年から21年まで開催されていた。

                                                                                    島根県が使ったドメイン、第三者が再取得で注意喚起 新型コロナやRuby関連事業など