並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 97件

新着順 人気順

rubocopの検索結果1 - 40 件 / 97件

  • 2023年・新しく入ったメンバーの提案で開発チームが良くなったこと5選

    このブログは、 IVRy 紅白Advent Calendar 2023の白組・17日目の記事です。 白組16日目は PdM佐瀬さん「IVRyなら上流からUX/UIデザイン業務が実践できます!」でした。明日はIVRyのVPoE近藤さんの「IVRyにおける開発生産性へのアプローチ~SPACEフレームワークの視点から~」についての記事が出ます。乞うご期待。 この記事について タイトル通り、2023年に提案されて改善した事を発表するのですが、裏返すと「そんなこともできてなかったのか」と見える内容もあるかもしれません。ネガティブに受け取られる可能性もあるかもしれませんが、IVRyのオープンな社風や、常に改善と変革に前向きな姿勢をアピールするためにも、この記事を執筆することにしました。 なお、課題を発見・解決しながら会社を大きくしていきたいエンジニアの皆さんは、ぜひブログ一番下のIVRyの採用情報から

      2023年・新しく入ったメンバーの提案で開発チームが良くなったこと5選
    • Ruby/Rails の勉強に何読んだらいいかと聞かれたとき - id:onk のはてなブログ

      「次の職場が Ruby なんだけど」と読み書きそろばんを聞かれたのと、大阪Ruby会議03、大江戸Ruby会議10、Kaigi on Rails 2023 と Ruby/Rails 関係のイベントに続けて参加して、作者の皆さまと会ったので。 「読める」になるために 言語仕様は何らかの本 1 冊の冒頭の方を読めば雰囲気は掴めるだろう。 Ginza Rails27 igaiga - Speaker Deck 著書や技術顧問、健康診断レポート でお馴染みの @igaiga555 さんの作った表で、難易度別にまとまっている。 たのしいRuby か、プロを目指す人のためのRuby入門 が定番かなぁ。 できることを知る るりま (Ruby リファレンスマニュアル) の Enumerable、String Rails Guides の Active Support Core Extensions 日本語

        Ruby/Rails の勉強に何読んだらいいかと聞かれたとき - id:onk のはてなブログ
      • 個人的Rails開発環境構築2024

        新規でRailsプロジェクトを始める時の個人的な環境構築についてまとめる。前提とする条件等は下記。 規模: ~中規模 開発者数: 個人 利用シーン: PoC作成・スタートアップ立ち上げ・並の業務アプリ開発等 基本戦略 利用シーン的に「思い立ったらすぐアプリの開発ができる」という感じの運用がしたい。極力セットアップで悩みたくないから必要なミドルウェアなどは全部Dockerでインストールできるようにして立ち上げれば終わり、の環境を作る。その環境の中で色々とコマンドを叩いたり、rails newやrails gなどでRailsアプリを作成していく。 この辺のRailsの初期セットアップの手間を出来るだけ省きたいのでtemplateとなるリポジトリを作成し、そこからcloneしてくるだけでOKにする。 フロントエンドはReactなどを使わずをRails標準のerbとHotwireを軸に開発する。開

          個人的Rails開発環境構築2024
        • アウトドア般若心経が楽しめるWebアプリをリリースしました - Roll With IT

          はじめに サービス URL GitHub リポジトリ 対象読者 自己紹介 アウトドア般若心経とは ポケモンGO の般若心経バージョン サービス開発のきっかけ サービスの概要 使い方 1. Google アカウントでログイン 2. 般若心経の全文を一覧で管理 3. 写経した写真を取り込む 4. 取り込んだ写真をトリミング 5. 写真の登録 6. 保存した内容の確認 7. メモの登録 8. 全体地図の確認 9. マイページ 技術スタック 技術選定の理由 アーキテクチャ ディレクトリ構成 開発方針とこだわり Getting Real UI / UX レスポンシブデザイン パフォーマンス ロゴ 機能面 コスト面 プロモーション オリジナルグッズ製作 アカウントを開設 ドッグフーディング 旅ログ 開発中に苦労したこと Google ログイン認証 外部ストレージサービスの設定 E2E テスト E2E

            アウトドア般若心経が楽しめるWebアプリをリリースしました - Roll With IT
          • RailsアプリのCI高速化

            参加しているプロジェクトで、RailsアプリのCIの高速化を行った。 まだ進行中の部分も幾つかあるが、結果から言うと、元々8分前後だったテストが3分半程度に短縮された。行った作業を幾つかの観点に分け、どのように高速化を行ったか、どの程度高速化されたか等を記述する。 プロセス数とマシン性能の調整 元々は2コア1プロセス4マシンで8分程度掛かっていたが、8コア8プロセス1マシンに変更することで5分程度に短縮された。 このプロジェクトではCIにGitHub Actionsを利用している。GitHub Actionsではデフォルトで2コアのマシンが利用されるが、Large runnerを利用して8コアに変更した。費用は変わらない。 また同時に、8プロセスで並列実行するためにparallel_testsを導入した。このプロジェクトではMySQLとElasticsearchを利用しており、またファイル

            • Rubyパーサーを一新するprism(旧YARP)プロジェクトの全容と将来(翻訳)|TechRacho by BPS株式会社

              概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Rewriting the Ruby parser | Rails at Scale 原文公開日: 2023/06/12 原著者: Kevin Newton サイト: Rails at Scale | The Ruby and Rails Infrastructure team at Shopify exists to help ensure that Ruby and Rails are 100-year tools that will continue to merit being our toolchain of choice. 日本語タイトルは内容に即したものにしました。 なお、本記事では「パーサー」(parser: 構文解析器)はカタカナで、lexer(字句解析器)は英ママで表記します。 参考: 構文解析 - Wikip

                Rubyパーサーを一新するprism(旧YARP)プロジェクトの全容と将来(翻訳)|TechRacho by BPS株式会社
              • Ruby のメソッド定義時に仮引数があるとき、それをカッコでくくらないのは私だけなの? - STORES Product Blog

                テクノロジー部門で Ruby インタプリタの開発をしている笹田です。RubyKaigi 2024 楽しみですね。 さて、Ruby のメソッドを定義するとき、仮引数がある場合、カッコを省略することができます。 def foo(x, y) end def bar x, y end bar の定義の方法ですね。私は好んでこの書き方をしてたんですが、同僚の遠藤さんに「そんな書き方をしているのは今時笹田だけだ」と言われてショックを受けたので、ちょっと調べてみました。 ちなみに、カッコがないと使えないメソッド定義の方法があるので、その時には涙を呑んでカッコをつけます。 def foo(kw:) # 必須キーワード引数 end def bar(&) # 無名ブロック引数 end 補足1:Ruby では「メソッド呼び出し時にカッコをつけるかどうか」にいろいろな論争がありますが、ここでは「メソッドを定義する

                  Ruby のメソッド定義時に仮引数があるとき、それをカッコでくくらないのは私だけなの? - STORES Product Blog
                • プログラミング言語 Ruby30 周年記念イベント レポート

                  プログラミング言語 Ruby30 周年記念イベント 2023 年 2 月 25 日、Ruby 誕生 30 年を記念したイベントが開催されました。 2020 年から流行した新型コロナウィルス感染症の影響で、一時期のイベントはすべてオンラインでの開催が主流となっていました。 本イベントも当初はオンライン形式で予定されていましたが、当日は松江オープンソースラボをメイン会場としてオフラインとオンラインのハイブリッドで開催されました。 開催日 2023-02-25 (土) 13:40 - 17:30 開催場所 松江オープンソースラボ / YouTube 配信 主催 一般財団法人 Ruby アソシエーション / 一般社団法人 日本 Ruby の会 公式ページ プログラミング言語 Ruby30 周年記念イベント 進行 :前田修吾 公式ハッシュタグ #ruby30th 動画 アーカイブ動画 オープニング

                  • 導入1ヵ月で、35,000行分のコーディング時間を削減 定量面・定性面から評価する「GitHub Copilot」

                    「GitHub Copilotで開発生産性はどのように変わるのか」というタイトルで登壇したのは、GMOペパボ株式会社の黒瀧悠太氏。株式会社タイミー社が主催した「GitHub Copilotで拓く開発生産性」で、「GitHub Copilot 」を開発に導入したことで起こった変化について発表しました。 登壇者の自己紹介 黒瀧悠太氏:よろしくお願いします。GMOペパボの黒瀧です。今日は「GitHub Copilotで開発生産性はどのように変わるのか」というタイトルで発表します。 私は、今GMOペパボ株式会社の「SUZURI」というサービスの技術責任者、シニアエンジニアリングリードというのをやっていて、GMOインターネットグループとしては「デベロッパーエキスパート」専門分野のエキスパートとして活動しています。 SNSアカウントは「@kurotaky」というのでやっています。趣味はドラムを叩くこと

                      導入1ヵ月で、35,000行分のコーディング時間を削減 定量面・定性面から評価する「GitHub Copilot」
                    • 「Rubyは落ちるか、伸びるかの岐路に立っている」 まつもとゆきひろ氏が語る、30年後に向けた生存戦略

                      プログラミング言語「Ruby」の国内最大のビジネスカンファレンス「RubyWorld Conference」。Rubyの先進的な利用事例や最新の技術動向、開発者教育の状況などの情報を発信することで、「Rubyのエコシステム(生態系)」を知ることができる場として開催します。ここで登壇したのは、Rubyアソシエーション 理事長のまつもとゆきひろ氏。プログラミング言語の過去、歴史から学ぶ教訓について発表しました。全4回。4回目は、Rubyコミュニティが生存するために必要なことについて。前回はこちら。 Rubyコミュニティが生存するためには何が必要か まつもとゆきひろ氏(以下、まつもと):さて、これらの教訓をもとに、Rubyの未来はどうなるかについて考えてみましょう。 教訓をもう1回まとめておきますね。アイデアだけでは、価値がない。単純さは、いつもいいこととは限らない。仕様が大きいことは、いつもい

                        「Rubyは落ちるか、伸びるかの岐路に立っている」 まつもとゆきひろ氏が語る、30年後に向けた生存戦略
                      • 「エンジニアDB」というサービスを開発しました!【Next.js / Rails / AWS / Terraform / Docker / GitHub Actions】 - Qiita

                        3.インフラ(全体構成)について ここから技術的なことについて話していきます。 まず大前提として、プロジェクトの全体構成は、Happiness Chain の卒業課題の条件に基づいて決めれらていました。これらの条件には以下が含まれます Rails APIモード / Reactで完全SPAのポートフォリオを作る。 本番環境と開発環境にDockerを使う。 本番環境にはECS Fargateを使う。 GitHub Actionsを使ってAWSに自動デプロイする。 Terraformでインフラをコード化する。 なので、これに倣って実装しています。 アーキテクチャの全体像 フロントエンドはVercelにデプロイして、バックエンドはAWSのECSにデプロイしています。 ブランチ運用は、GitHub flowを採用しています。 プルリク時にテストが走り、mainブランチにマージされるとデプロイされる感

                          「エンジニアDB」というサービスを開発しました!【Next.js / Rails / AWS / Terraform / Docker / GitHub Actions】 - Qiita
                        • ActiveRecord::Base.transaction(joinable: false)を使ってはいけない - SmartHR Tech Blog

                          注意喚起の記事になります。タイトルが結論です。 既にこの問題に言及している記事はいくつかあるのですが*1、私は気付かずに踏んでしまったので、タイトルで「おっと、うちは大丈夫かな」と思ってもらえるようにこの記事を書いています。 joinableとは何か 問題として挙げているjoinableオプションですが、これはネストしたトランザクションの挙動に影響を与えます。少しややこしいので、サンプルコードを見せながら説明します。 # frozen_string_literal: true require "bundler/inline" gemfile(true) do source "https://rubygems.org" git_source(:github) { |repo| "https://github.com/#{repo}.git" } gem "activerecord", "7.

                            ActiveRecord::Base.transaction(joinable: false)を使ってはいけない - SmartHR Tech Blog
                          • Prism:エラートレラントな、まったく新しいRubyパーサ | gihyo.jp

                            Ruby 3.3リリース! 新機能解説 Prism⁠⁠:エラートレラントな⁠⁠、まったく新しいRubyパーサ Prismは、Ruby 3.3.0にバンドルされた新しいライブラリで、プログラミング言語Rubyの新しいパーサであるPrismパーサのバインディングです。Prismはエラートレラント、移植性、メンテナンス性、高速性、効率性を考慮して設計されています。この記事では、Prismの歴史、設計、API、そして今後の課題について取り上げます。 使用方法 Rubyバインディングを通してPrismパーサを使うにはrequire "prism"をして、Prismモジュールのparseメソッド、または他のparse_*系のメソッドを呼んでください。次に例を示します。 require "prism" Prism.parse("1 + 2") parseメソッドは、パース結果のオブジェクトを返します。こ

                              Prism:エラートレラントな、まったく新しいRubyパーサ | gihyo.jp
                            • 仕事でソースコードのコメントを英語で書くべきか - あなたとあなたの話がしたい

                              今年の1月から新規立ち上げの開発部署でチームリーダーをやっていて、色々と「俺の考えた最強の開発手法」的なものを試しているのだけれど、その一環で、日本語でなく英語でコミットメッセージやソースコードのコメントを書くという開発ルールを導入してみた。 その結果、メリットよりもデメリットが大きいことが判明して、チームとして英語で書くのをやめにしたので、その振り返りを書きたい。 英語でコメントを書くメリット Web開発の世界でグローバルな共通語として機能している 日本語入力に切り替える必要がないので、タイピング効率が良い 文法的に日本語よりもロジカルに書きやすい GitHub CopilotやChatGPTのような生成AIのツールとの相性が良い RuboCopのRSpec/ContextWordingのように、英語利用を前提としたルールを提供しているLinterがある 当初このような点をメリットとして

                                仕事でソースコードのコメントを英語で書くべきか - あなたとあなたの話がしたい
                              • お財布に優しいCI改善小ネタ集 - メドピア開発者ブログ

                                こんにちは。サーバーサイドエンジニアの三村(@t_mimura)です。 主に保険薬局と患者さまを繋ぐ「かかりつけ薬局」化支援アプリ kakariのサーバーサイド開発(Ruby on Rails)を担当しています。 今回はRailsシステムのCI時間をコスト追加なしで半減した話をします。 目次 前提 対象プロジェクト CIの状況 改善結果 改善内容 前提知識: CIのキャッシュ機能 webpack buildのキャッシュを活用 RuboCopのキャッシュを活用 ESLintのキャッシュを活用 Jestのキャッシュを活用 RSpec Jobをテスト特性ごとに分割 CircleCIのリソースクラスと並列数の最適化 採用しなかった・見送った改善候補 HAML-Lint, Fasterer, Brakemanのキャッシュを活用 Stylelintのキャッシュを活用 bootsnapを活用 Jestの

                                  お財布に優しいCI改善小ネタ集 - メドピア開発者ブログ
                                • AWS Security Hubコントロールの有効無効をコード管理するのは予想のN倍大変だった話 - ANDPAD Tech Blog

                                  こんにちは。SREチームの吉澤です。2023年3月にアンドパッドに入社し、最近は主にセキュリティ関係の改善に取り組んでいます。 SREの経験としては、アンドパッドへの入社前からSREとして働いており、雑誌に寄稿したり、個人ブログを書いたり、SREの勉強会に運営スタッフとして長年参加したりしてきました。9/29(金)開催のSRE NEXT 2023にも、運営スタッフとして参加しています。SRE NEXT 2023には、アンドパッドもブロンズスポンサーとして参加しています! そこで今回は、SRE NEXT 2023のCFPに応募したネタ(今回、競争率すごく高かったんですよね……)を育てて、1つ記事を書いてみました。CFP落選供養スペシャルです。 背景 AWS Security Hubとは アンドパッドでのSecurity Hubの活用 目的 実現方法 課題 Security Hubのコントロー

                                    AWS Security Hubコントロールの有効無効をコード管理するのは予想のN倍大変だった話 - ANDPAD Tech Blog
                                  • RuboCopにLSPを標準搭載した - koicの日記

                                    タイトルのとおり。RuboCop 1.53 で LSP (言語サーバー) を標準搭載しました。 最初に3行まとめを書いておきます。 RuboCop を使っているけれど LSP を使っていない場合は、高速なリアルタイム性で開発体験が変わると思います。速い! VS Code ユーザーを使っている方は、後述する vscode-rubocop という VS Code 拡張をインストールすれば OK です。 Emacs や Vi などのユーザーは、LSP クライアントの設定で rubocop --lsp を起動するように LSP 設定してください (VS Code では不要) 。 公式の使い方としては以下のドキュメントを更新していくことになるものの、実装者が自分なのでこちらに軽く書き記します。 docs.rubocop.org rubocop --lsp コマンドは直接ユーザーが手動実行するものでは

                                      RuboCopにLSPを標準搭載した - koicの日記
                                    • コードレビューが怖かった私の、レビューへの向き合い方が変わった話

                                      コードレビューが怖かった私の、レビューへの向き合い方が変わった話 ソニックガーデンジムに参加してコードに対する向き合い方が変わった話 登川氏の自己紹介 登川仁至氏:じゃあ始めていきたいと思います。「ソニックガーデンジムに参加してコードに対する向き合い方が変わった話」という長めなタイトルなんですが、そのまんまの感じになります。 まず自己紹介から言っていきます。ソニックガーデンジム7期生。前期ですね。プログラマー歴も2、3年ぐらいですね。今はWebアプリケーション開発をしています。沖縄に住んでいて今日はすごく暑くて半袖でもぜんぜんいけました。すごく暖かいです。「白くま」が横なのは、あんまり気にしないでください(笑)。ちなみに名前は「ノボ」です。よろしくお願いします。 本セッションで話すこと 今回何を話すのかです。タイトルどおり、「ソニックガーデンジムに参加してコードに対する向き合い方が変わった

                                        コードレビューが怖かった私の、レビューへの向き合い方が変わった話
                                      • 独学で未経験のモダンな技術を学習してポートフォリオを作るまで【Rails / Next.js / AWS / Docker / GitHub Actions】 - Qiita

                                        独学で未経験のモダンな技術を学習してポートフォリオを作るまで【Rails / Next.js / AWS / Docker / GitHub Actions】RailsAWS初心者個人開発Next.js はじめに こんにちは!きいな(@keynyaan)と申します。 今回、モダンな技術を使って初めてポートフォリオを作ってみたので、開発背景や学習教材などを紹介します。 ポートフォリオを作るにあたって、色々な方の素晴らしいポートフォリオ作成記事が参考になったので、今度は私の記事が誰かのためになることを祈ってます。 自己紹介 大学卒業後、新卒でSIer企業に入社し、3年ほどJavaやJavaScriptなどを使って、バックエンドやフロントエンドのシステム開発を行っていました。 そんな私が自社開発企業に興味を持ち、退職を機に、2023年1月からポートフォリオ作成に向けて学習を始めました。 学習期間

                                          独学で未経験のモダンな技術を学習してポートフォリオを作るまで【Rails / Next.js / AWS / Docker / GitHub Actions】 - Qiita
                                        • Ruby フルタイムコミッタの仕事報告 2023年Q4 - ANDPAD Tech Blog

                                          こんにちは hsbt です。RubyConf Taiwan 2023 の登壇から帰国して後はバルダーズ・ゲート3をプレイして年を越すのみ...! とは行かず、Ruby 3.3.0 のリリースに向けて最後の準備作業をしている真っ最中です。 さて、今回はANDPAD Advent Calendar 2023の20日目として、今年1年私がプログラミング言語 Ruby の開発のために手を動かしてきた内容の中からテックブログやカンファレンスで発表していない内容をまとめてご紹介します。 default gems から bundled gems への変更の目的 私は数年前から Ruby に元々添付されていたライブラリ(標準添付ライブラリ)を default gems と呼ばれる gem としてもインストールやアップデートができる状態にし、そこからさらに bundled gems と呼ばれる Ruby 本

                                            Ruby フルタイムコミッタの仕事報告 2023年Q4 - ANDPAD Tech Blog
                                          • プロジェクト独自のコーディングルールを簡単に正規表現で定義できる `rubocop-grep` の活用 - ROUTE06 Tech Blog

                                            はじめに: 弊社のとあるEDI(電子商取引)関連のプロダクトでは、Ruby on Railsを利用してGraphQL APIを提供しています。 その開発活動の中で最近、コードの品質と整合性を維持するためのツールとして rubocop-grep を利用し始めました。 この記事ではその具体的な活用事例についてお話しします。 目次 rubocop-grepとは 最初のユースケースと、基本的な使い方の説明 複数のルールをディレクトリごとに設定するための工夫 ほかにどのようなユースケースがありそうか まとめ rubocop-grepとは rubocop-grep は、rubocop の拡張ツールです。 プロジェクト独自のコーディングルールを、正規表現を用いて簡単に定義することができます。 この手の問題は、今までもカスタムCopを書くことで解決することはできましたが、カスタムCopはASTの知識やRu

                                              プロジェクト独自のコーディングルールを簡単に正規表現で定義できる `rubocop-grep` の活用 - ROUTE06 Tech Blog
                                            • Rails: モジュール化強制ツール"Packwerk"の導入を振り返る(翻訳)|TechRacho by BPS株式会社

                                              概要 原著者Chris Salzbergさんの許諾を得て翻訳・公開いたします。 英語記事: A Packwerk Retrospective | Rails at Scale 原文公開日: 2024/01/26 原著者: Gannon McGibbon、Chris Salzberg 日本語タイトルは内容に即したものにしました。また、一部のパラグラフを分割しています。 CC BY-NC-SA 4.0 Deed | 表示 - 非営利 - 継承 4.0 国際 | Creative Commons Rails: モジュール化強制ツールPackwerkの導入を振り返る(翻訳) 2020年、ShopifyのチームはPackwerkという名前のRuby gemをリリースしました(関連記事)。Packwerkは、Railsアプリケーション内で境界を強制的に定めてモジュール化するツールです。Packwerk

                                                Rails: モジュール化強制ツール"Packwerk"の導入を振り返る(翻訳)|TechRacho by BPS株式会社
                                              • GemfileでのRubyバージョン指定を.ruby-versionから読む - koicの日記

                                                Gemfile での Ruby バージョンの指定を、値の直書きではなく .ruby-version からの読み込みに変更する設定です。 https://github.com/rubygems/rubygems/pull/6876 例えば、Rails アプリケーションなんかで Gemfile に .ruby-version と同じ 3.3.0 を指定しているようであれば、以下のように記述できます。 -ruby '3.3.0' +ruby file: '.ruby-version' asdf に類するものを使っているようであれば、ruby file: '.tool-versions' と記します。 https://github.com/rubygems/rubygems/pull/6898 この設定によって Ruby のアップデート時のバージョンの更新ポイントを減らすことができます。 なお、古

                                                  GemfileでのRubyバージョン指定を.ruby-versionから読む - koicの日記
                                                • Git履歴をgit resetとgit rebaseで管理する(翻訳)|TechRacho by BPS株式会社

                                                  概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: How I manage my git history | Binary Solo 原文公開日: 2023/05/26 原著者: Ayush 日本語タイトルは内容に即したものにしました。 Git Logo by Jason Long is licensed under the Creative Commons Attribution 3.0 Unported License. 私は全般的に、どちらかといえば規則にうるさい方ですが、自分のプロジェクトでgit履歴を管理するときはこの性格が役に立ちます。以前の私はGitHubの"squash & merge"方式をしばらく使っていましたが、その後Chris Mooreからいくつかのコツを教わりました。 私は"squash & merge"方式が好きになれません。どんなに巨大なプルリクエ

                                                    Git履歴をgit resetとgit rebaseで管理する(翻訳)|TechRacho by BPS株式会社
                                                  • Rails8.0.0マイルストーンの現状 - おもしろwebサービス開発日記チラシの裏

                                                    これはなに 8.0.0 Milestoneを見て気になったものをまとめています マイルストーンは先週くらいにできたのですがもうマージされているやつもたくさんあります DHHが年末年始にめっちゃ働いている 気になったものたち Ruby3.3以上のサポート DHHは最初3.3以上で、という気持ちだったんだけど流石にみんな大変やろ、という意見が出て結局リリース時(2024年の予定)にサポートされているRubyのバージョン、つまり3.1以上に落ち着いた PR: Bump the required Ruby version to 3.1.0 by byroot · Pull Request #50491 · rails/rails ↑のPRでは「メジャーバージョンアップ時にRubyのサポートを落とす」だとRails自体のメンテも大変だしアプリケーション開発者も大変なので、毎回マイナーバージョンアップ

                                                      Rails8.0.0マイルストーンの現状 - おもしろwebサービス開発日記チラシの裏
                                                    • Railsでモジュラモノリスを実現する3つの代表的パターン 5つの基準で見たそれぞれの評価

                                                      「【ハイブリッド開催】Rubyで追求するモジュラモノリスの可能性」は、バックエンドにRubyを採用している株式会社タイミー、hacomono社、ワンキャリア社が、Rubyにおけるモジュラモノリスの可能性や良い点、悪い点を共有する勉強会です。ここで株式会社タイミーの須貝氏が登壇。まずは、Railsでモジュラモノリスを実現する3つの代表的パターンと、各パターンの評価について話します。 須貝氏の自己紹介 須貝俊 氏:では、「RailsでModular Monolithを選択された御社に質問したいN個の疑問」というタイトルで発表をしたいと思います。 (スライドを示して)まずは自己紹介をしたいと思います。須貝と申します。タイミーには、2022年1月からジョインしています。スポットワークシステム領域というところで、チーム名がIronBank Squadという、企業さま向けの請求や、ワーカーさまへの給与

                                                        Railsでモジュラモノリスを実現する3つの代表的パターン 5つの基準で見たそれぞれの評価
                                                      • なぜ、アンドパッドは最新のRuby/Railsにこだわるのか?アップデートを止めないための体制と仕組み - what we use(技術スタックデータベース)

                                                        なぜ、アンドパッドは最新のRuby/Railsにこだわるのか?アップデートを止めないための体制と仕組み 株式会社アンドパッドの白土慧と申します。OSSなどではkei-sで活動しています。アンドパッドではリアーキテクティングチームに所属し、チームの立ち上げから携わっています。 リアーキテクティングチームの活動を簡単に紹介すると、アンドパッドにある大規模なRailsアプリケーションを、コードや構造も含めて、もっと拡張しやすくて、開発者が使いやすく、ミスの防止などもできるようにする活動をしています。今回のRuby/Railsのアップデートも取りまとめているほか、チームのスコープにはマイクロサービスやモジュラーモノリスなどへの移行の検討も含まれます。 アンドパッドでのRailsの役割アンドパッドにある大規模なRailsアプリケーションをもう少し掘り下げます。 このアプリケーションは「ANDPAD施

                                                          なぜ、アンドパッドは最新のRuby/Railsにこだわるのか?アップデートを止めないための体制と仕組み - what we use(技術スタックデータベース)
                                                        • cache を最適化して RuboCop の CI 実行時間を劇的に改善した話 - JMDC TECH BLOG

                                                          こんにちは、プロダクト開発部の八杉です。JMDC では主に web フロントエンドの実装や設計を中心に行っているほか、最近は Rails の GraphQL モジュールの設計や CI の最適化にも取り組んでいます。 本記事は JMDC Advent Calendar 2023 11日目の記事です。 qiita.com この記事では、 RuboCop を CI で実行した際に遭遇した cache にまつわる 3 つの問題とその対処について紹介します。 背景 今回お伝えするのは、私が開発に携わる Pep Up (ペップアップ) という web サービスの話です。 Pep Up は Ruby on Rails 製のアプリケーションで、コードフォーマッターに RuboCop を使用しています。8 年前の開発初期から使用していますが、違反のチェックを厳格に行っていなかったこともあり、ここ数年はフォー

                                                            cache を最適化して RuboCop の CI 実行時間を劇的に改善した話 - JMDC TECH BLOG
                                                          • 仕事、筋トレ、YouTube

                                                            最近記事を書いていなかったので、取り留めのない近況について。 仕事 相変わらず業務委託で様々なRailsアプリの開発現場に携わっている。 仕事内容は主に「全般的にこのRailsアプリいい感じにしてください」という話を受けて、以下のような仕事を進めることが多い。 RubyやRailsのバージョン変更 それ伴う様々な変更の調査と実装 その後の継続的なバージョン変更 自分が居なくなった後に手順をなぞれるように情報を整理 CIの改善 高速化、安定化 Flakyなテストとの戦い テストコードの根本的な改善 静的解析ツールの整理 開発者の教育 開発環境の改善 開発環境構築手順の整理 その組織向けのRailsやRSpecに関するガイドラインの策定 Docker環境との棲み分け方の整理等 その他ドキュメンテーション その他改善できそうなところの調査と実装 普段からたまにrubocopやrubocop-ra

                                                            • A decent VS Code + Ruby on Rails setup

                                                              Setting up VS Code for Ruby on Rails development can be tricky, so I wrote this article to help. Plus, I've turned the extensions in this article into a VS Code Extension Pack. Use it to install all the extensions from this article in 1-click, to get started quickly with VS Code + Ruby on Rails. Table of Contents Using VS Code as a Ruby on Rails editor shouldn't be so hard! It's tricky deciding wh

                                                                A decent VS Code + Ruby on Rails setup
                                                              • ライブラリのアップデートを自動化した仕組みの紹介 - Classi開発者ブログ

                                                                こんにちは!学習動画・Webテストの開発を行っています エンジニアの daichi (id:kudoa) です。 この記事では、最近チームで導入したライブラリアップデートを自動化した仕組みとその経緯について紹介します。 なぜ自動化しようと思ったか サービスを開発するだけではなく、日々の運用も必要です。 その運用業務の1つとして、ライブラリのアップデートがあります。 これはサービスを運用する上では大切なことではありますが、日々ライブラリアップデートのPRをさばき続けるのも大変です。 その時間をできるだけ減らし、その分空いた時間をユーザーへの価値提供や将来の投資に充てるために、今回の自動化の仕組みを作成しました。 この辺りの話は以前勉強会でLTしたことがありますので、興味があればご覧ください。 作ったもの 前置きは長くなりましたが、凝ったものを作ったわけではありません。 作成したものはライブラ

                                                                  ライブラリのアップデートを自動化した仕組みの紹介 - Classi開発者ブログ
                                                                • reviewdog x Custom FormatterでRuboCopの自動修正を提案させるようにしました - inSmartBank

                                                                  reviewdog/action-rubocopというOSSプロジェクトをご存知でしょうか。Rubyの静的解析ツールであるRuboCopをGitHub Actionsで実行し、指摘箇所にコメントを付けてくれる便利なCustom Actionです。 本記事では筆者がこのOSSを改良して実装したSuggestion featureという便利機能とその実装についてご紹介します。RuboCopをお使いの方、より良いRuboCop生活をお求めの方、静的解析が好きな方向けの記事となります。 なお、この記事は2023-06-21に行われたGotanda.rb#53@ギフティで"RuboCop Custom Formatter for Reviewdog Diagnostic Format"と題して筆者が行った発表をもとにしています。 前提となる知識 初めにreviewdog/action-rubocop

                                                                    reviewdog x Custom FormatterでRuboCopの自動修正を提案させるようにしました - inSmartBank
                                                                  • Mastodon: Ruby on Rails Open Source Web App

                                                                    The product https://joinmastodon.org Mastodon is a free, open-source social network server based on ActivityPub where users can follow friends and discover new ones. On Mastodon, users can publish anything they want: links, pictures, text, and video. All Mastodon servers are interoperable as a federated network. Open source The project is open source at https://github.com/mastodon/mastodon License

                                                                      Mastodon: Ruby on Rails Open Source Web App
                                                                    • LSP ルーターを作った - tmtms のメモ

                                                                      最近は Emacs の LSP クライアント機能である Eglot を使って Ruby を書いたり読んだりしてる。 ruby-mode では LSP サーバーはデフォルトで Solargraph が使われてる。 半年くらい前に rubocop に LSP サーバー機能が搭載されたらしいんで使ってみた。 (add-to-list 'eglot-server-programs '(ruby-mode . ("rubocop" "--lsp"))) rubocop の機能であるコードのチェックはちゃんと使えたんだけど、Solargraph で使えてたコードジャンプとかが使えなくなった。まあそれはそう。 Eglot はモードごとに LSP サーバーを指定することはできるけど、同じモードに複数の LSP サーバーを指定することはできなそう。Emacs Lisp はよくわからないんでちゃんと調べてない

                                                                        LSP ルーターを作った - tmtms のメモ
                                                                      • Prism in 2024

                                                                        In Ruby 3.3.0, a new standard library was added to CRuby called Prism. Prism is a parser for the Ruby language, exposed as both a C library (optionally usable by CRuby) and a Ruby library (usable as a Ruby gem). The Prism project represents many person-years worth of effort, and is the result of a collaboration between Shopify, CRuby core contributors, other Ruby implementation authors, and Ruby t

                                                                          Prism in 2024
                                                                        • rubocop-daemon 裏話: OSS の苦悩

                                                                          「Omotesando.rb #95」で発表した LT スライドです。 https://omotesandorb.connpass.com/event/311351/

                                                                            rubocop-daemon 裏話: OSS の苦悩
                                                                          • 越境が簡単なRailsでどのようにモジュラモノリスを実現するか 「境界分け」と「Active Recordの制限」に対する取り組み

                                                                            「【ハイブリッド開催】Rubyで追求するモジュラモノリスの可能性」は、バックエンドにRubyを採用している株式会社タイミー、hacomono社、ワンキャリア社が、Rubyにおけるモジュラモノリスの可能性や良い点、悪い点を共有する勉強会です。ここで株式会社hacomonoの志賀氏が登壇。続いて、モジュラモノリス実現のための取り組みについて話します。前回はこちらから。 モジュラモノリスを導入に向けて境界分けをどうするか 志賀誠氏:じゃあ今度は、モジュラモノリスの実現の方法について説明します。(スライドを示して)Railsでモジュラモノリスを導入するにあたって、パッと思いつくもので、このスライドにあるような問題があるかと思います。 1個は、やはりRailsはRubyなので、なんでも書けちゃうということがあると思います。もうやろうと思ったらいくらでも越境できちゃう境界区域とかがあると思います。 も

                                                                              越境が簡単なRailsでどのようにモジュラモノリスを実現するか 「境界分け」と「Active Recordの制限」に対する取り組み
                                                                            • RubyKaigi 2024に参加 & 登壇しました + Rubyアソシエーション開発助成の話 - shioimm || coe401_

                                                                              RubyKaigi 20024 RubyKaigi 2024おつかれさまでした! 沖縄から帰ってきてはや一週間余り、ようやく今年のRubyKaigiが終わったという現実を受け入れられるようになってきました。 海が綺麗でしたね ありがたいことに、わたしは今回もsocketライブラリのHappy Eyeballs Version 2(以下HEv2)対応を題材に登壇の機会をいただきました。 rubykaigi.org また今年は勤務先のエス・エム・エスがブースを獲得したので、初めてスポンサーとしてブースに立つこともできました。 この記事ではRubyKaigi 2024に至るまでと、それからRubyKaigi 2024会期中の出来事について振り返ってみたいと思います。 ※とんでもない長文ですがご容赦ください Happy Eyeballs Version 2 対応socketライブラリ開発日誌 上記

                                                                                RubyKaigi 2024に参加 & 登壇しました + Rubyアソシエーション開発助成の話 - shioimm || coe401_
                                                                              • キャッシュを利用してCircleCIのRuboCopを高速化する (35秒 -> 4秒)

                                                                                はじめに ローカル環境などでRuboCopを実行する際にはよしなにキャッシュが利用され、高速化が図られています。 一方で、CircleCI上ではそうはいきません。RuboCopのキャッシュディレクトリを設定し、設定したディレクトリをCircleCIの依存関係のキャッシュ[1]を用いて次回以降のジョブに使い回す必要があります。 そこで、以下をまとめました。 キャッシュの利用によってどの程度の改善が見込めるのか キャッシュの設定方法 キャッシュの有無による実行時間の比較 先にまとめを貼ります。 キャッシュの有無 RuboCop (秒) キャッシュのリストア (秒) 合計 (秒)

                                                                                  キャッシュを利用してCircleCIのRuboCopを高速化する (35秒 -> 4秒)
                                                                                • RubyKaigi 2024 - ruby-jp

                                                                                  これはなに RubyKaigi 2024に関する情報を有志でまとめている非公式ページです。 編集に興味がある方はruby-jpの#scrapboxチャンネルから参加できます。 概要 公式ページ: RubyKaigi 2024 日程: 2024-05-15〜2024-05-17 会場: NAHA CULTURAL ARTS THEATER NAHArt (那覇文化芸術劇場なはーと) (沖縄県那覇市) オフラインのみ 事前イベント 4/16(火) 19:00 - 22:00 第229回 Okinawa.rb Meetup @ SAKURA innobase Okinawa🌸(in-person) 4/23(火) 19:30 - 21:30 RubyKaigi 2024 タイムテーブル徹底解説(in-person) 4/25(木) 19:00 - 21:30 RubyKaigi 2024事前勉

                                                                                    RubyKaigi 2024 - ruby-jp