並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 72件

新着順 人気順

willnetの検索結果1 - 40 件 / 72件

  • APIに利用制限をかけるとしたらどういうやりかたがあるのか - おもしろwebサービス開発日記

    この記事はSmartHR Advent Calendar 2020 11日目の記事です。 僕のお手伝いしているSmartHRでは、毎週バックエンドエンジニアが集まり、技術的なトピックについて共有、相談しあうミーティングを開催しています。そのミーティングでは僕がTipsなどを共有するコーナーが常設されています*1。 このエントリでは、そのコーナーで共有した内容をひとつ紹介します。 APIに制限をかける方法について APIを外部に提供するとき、一定の制限をかけてユーザがAPIを乱用するのを防ぐことはよくあることではないでしょうか。素直に考えると「1時間に5000回までAPIを実行できる」のようなやり方を思いつきますね。GitHubのAPIもそのやり方ですし、SmartHRのAPIも同様です。 じゃあそれでいいのでは。となるかもしれませんが少し待ってください。いろんなクライアントがAPIを大量に

      APIに利用制限をかけるとしたらどういうやりかたがあるのか - おもしろwebサービス開発日記
    • Active Recordともっと仲良くなって自然に優しいコードを書くぞ - SmartHR Tech Blog

      こんにちは。SmartHRでRails顧問業をしています @willnetです。最近は主にリファクタリングをしています。 SmartHRのバックエンドは基本的にRubyで書かれています。しかし入社してくるバックエンドエンジニアは必ずしもRubyやRailsを長年使ってきた人だけではなく、前職では他言語を使っていてRuby(Rails)はほとんど使ったことがないという人もいます。 webアプリケーションを作る、という点ではどの言語でも抑えるべき点は同じですが、RubyやRailsに特化した考え方や書き方もありますよね。SmartHRではそれを効率よく習得してもらうために読書会を開催したり、社内のドキュメントツールに知見を書いて共有したりしています。 僕も社内のドキュメントツールにActive Recordの付き合い方ついて書いたところ、評判が良く「テックブログにしたら?」と言われたので今回一

        Active Recordともっと仲良くなって自然に優しいコードを書くぞ - SmartHR Tech Blog
      • HotwireからDHHが考えるこれからのRailsとJSの付き合い方を知る

        「iCARE Dev Meetup #18」�で発表した資料です https://icare.connpass.com/event/201662/

          HotwireからDHHが考えるこれからのRailsとJSの付き合い方を知る
        • Rails6.1で新しく入る機能について

          技術顧問が語る最新Ruby on Rails/Vue.js iCARE Dev Meetup #12 で話すスライドです https://icare.connpass.com/event/183716/

            Rails6.1で新しく入る機能について
          • Sidekiq vs Solid Queue

            kaigi on rails 2024の発表資料です https://kaigionrails.org/2024/talks/willnet/

              Sidekiq vs Solid Queue
            • N予備校開発でのRSpecの書き方指針 - ドワンゴ教育サービス開発者ブログ

              はじめに テストコード一般の考え方 壊れにくいテストを書く 実装した通りに動作することではなく、仕様通りに動作することをテストする テストコードはシンプルにわかりやすく書く 失敗の原因がわかりやすくなるように意識する RSpecの書き方 テストケース名をitの引数で明記する letよりもlet!を使う 通常の変数と同じ方針に基づいてlet!を利用する subjectを使わない 不要なcontextでのネストを避ける matcherを適切に使い分ける factoryのデフォルト値に依存しないテストを書く 参考にしたブログ記事等 付録:RuboCop設定 We are hiring! サムネイル画像 はじめに テストコードを書く習慣も、近年ではかなり一般的なものになってきました。 ドワンゴ教育事業のバックエンドチームでも自発的にテストコードを書く文化は根付いており、実際に計測はしていませんが、

                N予備校開発でのRSpecの書き方指針 - ドワンゴ教育サービス開発者ブログ
              • 我々はConcernsとどう向き合うか - おもしろwebサービス開発日記

                この文章は先日開催された大阪Ruby会議02での登壇内容Concerns about Concernsをブログエントリにしたものです。書いている内容は登壇内容とだいたい同じですが完全一致ではなく、構成を変更したり喋っていない情報を足したりしてます*1。 大阪Ruby会議02に出席していない方でもスライドを読めば大体の内容を把握できると思いますが、これだと細かいニュアンスは伝えられない(し、この手の話はその細かいニュアンスが大事だったりする)のでちゃんとブログエントリにしておこうと思ったのでした。 意見がある人はこちらのスレに書いてもらえると嬉しいです(\( ⁰⊖⁰)/) Concernsとはなにか Concernsという概念は、Rails 4.0から導入されました。具体的にはrails newしたときに生成されるファイルたちの中に app/models/concerns app/contr

                  我々はConcernsとどう向き合うか - おもしろwebサービス開発日記
                • クライアント側のJavaScriptを最小限にするHotwire

                  iCARE Developer Meetupは、月次で開催している株式会社iCAREが主催するエンジニア向けのLT勉強会です。18回目の今回は、Ruby on Railsをテーマに行いました。株式会社iCAREの技術顧問である前島真一氏がHotwireについて話しました。全2回。前半はHotwireのアーキテクチャとTurbolinksについて。 HotwireはWebアプリケーションを作るための新しいアプローチ 前島真一氏:Hotwireについて話します。前島です。ハンドルネームはwillnetや、netwillnetです。iCAREさんをはじめとして、いろいろな会社で技術顧問をしています。空いた時間を使って、「savanna.io」というお仕事情報SNSを開発しています。savanna.ioは、これから話すHotwireを利用して作っています。 Hotwireがどんなものかを簡単に説明

                    クライアント側のJavaScriptを最小限にするHotwire
                  • Railsクイズ、何問解けるかな? - SmartHR Tech Blog

                    こんにちは。SmartHRでRails顧問業をしています @willnetです。最近は主にリファクタリングをしています。 SmartHRでは毎週「Rubyist@SmartHR(仮)」という名の定例ミーティング*1が行われています。このミーティングはバックエンドエンジニアが集まり、チームをまたいだ情報共有や相談をすることを目的としています。その中では僕がTipsなどを共有する「willnetさんのありがたいお言葉」というコーナーが常設されています。 「willnetさんのありがたいお言葉」のコーナーではRailsの最新動向に関する話をすることが多いのですが、最近はRailsの各種機能がどのように動くのかをクイズ形式にして共有しています。これがなかなか好評なので今回テックブログにしてみた次第です。みんな全問正解できるかな? ちなみにこんな感じでやってます まず問題と回答の選択肢を見せてからs

                      Railsクイズ、何問解けるかな? - SmartHR Tech Blog
                    • Exceptional Rails

                      kaigi on rails 2023での発表内容です https://kaigionrails.org/2023/talks/willnet/

                        Exceptional Rails
                      • パーフェクト Ruby on Railsの改訂2版を書きました - おもしろwebサービス開発日記

                        ここ数年、色んな人に「パーフェクト Ruby on Railsの改訂版まだですか」と言われて申し訳ない気持ちでいっぱいでした。が、ついに改訂版が発売されることになりました!もちろん最新のRailsである6.0に対応しています。 発売日は7月25日ですが、先行して発売している書店もあるそうです。 パーフェクトRuby on Rails 【増補改訂版】:書籍案内|技術評論社 ブログで振り返ると、第1版を書いたのは6年前だったようです。6年前といえばRailsは4.1がリリースされた頃で、フロントエンドはCoffeeScriptを書いてSprocketsでコンパイル、デプロイはCapistranoを使うのが主流だったような気がします。6年でだいぶRailsによる開発の進め方が変わりましたね。このあたりはもちろん第2版で更新されて、WebpackerやDockerに置き換わっています。 改訂2版の

                          パーフェクト Ruby on Railsの改訂2版を書きました - おもしろwebサービス開発日記
                        • wkhtmltopdfの次どうするか問題 - おもしろwebサービス開発日記

                          wkhtmltopdfというライブラリは、HTMLからPDFを生成してくれるライブラリです。Rubyからだとwicked_pdfや pdfkit 経由で使われることが多いです。 さてそんなwkhtmltopdfですが、GitHubリポジトリ を見るとわかるようにアーカイブされてしまっています。公式ページ に経緯が書いてありますが、要約するとwkhtmltopdfが依存しているQtWebkitのメンテが止まったのが原因でメンテが続けられなくなったということのようです。 wkhtmltopdfが参照しているQtWebkitはかなり古いものなので、モダンなブラウザでの描画と差分が出たり、脆弱性を付かれたりする可能性がありそう。なのでなにか別のやり方に乗り換えたい。 選択肢を考えてみる 乗り換え先は具体的に何がいいの、というと僕も自信を持ってこれだ!という解を持っていないのですが、headless

                            wkhtmltopdfの次どうするか問題 - おもしろwebサービス開発日記
                          • Railsの設定をアップグレードしていく技術 - おもしろwebサービス開発日記

                            このエントリは SmartHR Advent Calendar 2023の21日目の記事です。 Railsのバージョンを上げる作業は、単に新しいバージョンのgemをインストールするだけでは終わりません。Railsの新しいバージョンに沿った設定項目を確認し、適宜適用していく必要があります。もちろん必ずしもすべての設定を最新にしなければならないわけではありませんが、Railsの新しい設定というのは基本的にそうすることにメリットがあるから作られているわけで、特別な理由がなければ最新の状態にしておきたいものです。 みなさんのRailsアプリケーションのconfig/application.rb には次のような設定があるはずです。 config.load_defaults 6.1 このコードサンプルは引数が6.1なので、Rails6.1デフォルトの設定を適用していることを示しています。これを7.0に

                              Railsの設定をアップグレードしていく技術 - おもしろwebサービス開発日記
                            • Rubyのメタプログラミング問題集をブラッシュアップした話 - SmartHR Tech Blog

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

                                Rubyのメタプログラミング問題集をブラッシュアップした話 - SmartHR Tech Blog
                              • 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
                                • Rails 7.0.5以降におけるcreate_associationメソッドの挙動変更についてまとめ - おもしろwebサービス開発日記

                                  この件、関連するPRやIssueが複数あってコメントも分散しており、人に説明するのがややこしいのでブログとしてまとめたものになります。間違いや意見などあったらコメントください! 追記(2023/08/02) 7-0-stableブランチに今回の変更をrevertするコミットが入りました。挙動が変わって困った人が出たので一度元に戻して仕切り直しにする方針のようです。 [7-0-stable] Revert singular association breaking changes by zzak · Pull Request #48809 · rails/rails 7.0.7がいつリリースされるかはわかりませんが、今の状態でリリースされたら7.0.4の振る舞いに戻ることになります。7.0.5以降の変更で困っている人は一旦7-0-stableを指すようにすると良いかもしれません。 概要 Ra

                                    Rails 7.0.5以降におけるcreate_associationメソッドの挙動変更についてまとめ - おもしろwebサービス開発日記
                                  • Rails未経験でRailsエンジニアとして入社して感じたメドピアのエンジニア文化 - メドピア開発者ブログ

                                    2020年6月付けで入社したフィッツプラス システム開発部の讃岐と申します。 DietPlus Proというアプリや、特定保健指導の進捗管理用のWebアプリケーションを開発するサーバーサイドエンジニアとして働いています。 特定保健指導については、以前に福本さんが使用している技術も含め書いてくださったのでそちらをご覧下さい。 tech.medpeer.co.jp エンジニアとしてのキャリアはメドピアで2社目となります。Railsは未経験でしたがRailsエンジニアとしての採用でした。 そんなわけでメドピアでRailsエンジニアとしてのキャリアが始まったわけですが、開発環境については芝田さんが他の記事で紹介してくれているので、今回はメドピアのエンジニア文化を紹介していきたいと思います。 1. 新しいことを学ぶ機会が多い 2. 技術者支援の制度がちゃんと使用されている 3. 技術顧問がwilln

                                      Rails未経験でRailsエンジニアとして入社して感じたメドピアのエンジニア文化 - メドピア開発者ブログ
                                    • 中途で入社したての私からみたメドピア開発環境のいいところ - メドピア開発者ブログ

                                      2020年1月付けで入社した社長室 エンジニアの芝田と申します。 社長室ではkakariという、かかりつけ薬局化を支援するサービスをやっており、そちらでサーバーサイドエンジニアとして働いています。 エンジニアとしてのキャリアはメドピアで2社目で、まだまだ勉強中の身です。 今回はメドピアでの開発を始めて、開発環境のいいところや実装のtipsを一部ご紹介したいと思います。 開発環境のいいところ CIでRSpecやRubocopをはじめとする複数のLint👮が通っていないと原則マージできない Rubyは自由な記法ができるメリットの反面で、記法のばらつきが比較的出がちです。そこは、Lintによってある程度カバーすることが可能です。 また、ClassLength・LineLength・AbcSize等によって、ファイルの肥大・コードの複雑度合いを知ることができます。 kakariではClassLe

                                        中途で入社したての私からみたメドピア開発環境のいいところ - メドピア開発者ブログ
                                      • プログラミングの楽しさを思い出した Kaigi on Rails 2024

                                        ごきげんよう🙋‍♀️ツクリンクEMのあっきー(@kuronekopunk)です。 Kaigi on Rails 2024にSilver Sponsorとして協賛、参加してきました。 今回は、同僚のエンジニアめばしいさん(@aiuhehe)がオーガナイザーとして参加を含めツクリンクからは4名での参加となりました。 去年はチケットを買い忘れたメンバーが多発し2名の参加だったので成長を感じます(?) Day1 基調講演 Rails Way, or the highway Rails Wayに乗っていこう、そして外れないように拡張していこうというお話。 Rails Wayにも隙間がありそれをどう埋めていくのかというところで、フレームを歪ませてしまうと怪獣 on Railsになってしまうという話が面白かったです。 Rails8.0で強化された機能なども紹介していて、Solid infrastruc

                                          プログラミングの楽しさを思い出した Kaigi on Rails 2024
                                        • 失敗したテストのログだけを出力するぞ - おもしろwebサービス開発日記

                                          表題の通りのことができるgem、CiLoggerが便利ですよという話です。 私達は大量のテストをCI上で実行しています。テスト結果を見れば失敗理由が自明なものもありますが、E2Eテストなどでよく起きる「たまに失敗するテスト」の調査はログやスクリーンショットなど、可能な限りの情報を集めないと根本原因がつかめないことが多いです。 そんなときに、特に考えずRailsデフォルトの設定(config.log_level #=> :debug)のままにしておくと、膨大なログの中から該当するテストに関連する行を探し当てる作業が必要になります。これは事前の準備なしではほぼ不可能です。 事前の準備として簡単に思いつく方法は、テスト前後で「どのテストが開始/終了したか」をログに出力することです。 config.around do |example| Rails.logger.debug("start exam

                                            失敗したテストのログだけを出力するぞ - おもしろwebサービス開発日記
                                          • メドピアで開催している社内読書会と社内読書分科会について - メドピア開発者ブログ

                                            こんにちは。メドピアのお手伝いをしています @willnetです。花粉が厳しい季節みなさんいかがお過ごしでしょうか。僕は毎年レーザー治療したいな、と思っているのですが気づくともう春になっています。次回こそは…。 さて、メドピアでは毎週水曜日の11時から12時の間に社内読書会を開催しています。これは社内でなるべく多くの人が仕事上で使える知見を獲得することを目的としています。進め方は 予習不要 音読する キリのいいところで止めて感想を話す という形です。詳しい内容は以前個人のブログで書いたので興味のある人は読んでみてください。 しかし読書会を定期開催するようになってから4年がすぎ、また社内のエンジニアがどんどん増えてくると「読書会をもっと改善したいな」と思うことが増えてきました。 すでに読んでしまった本は題材として扱いづらい 例えばメタプログラミングRuby 第2版は良い本なので、当然この本を

                                              メドピアで開催している社内読書会と社内読書分科会について - メドピア開発者ブログ
                                            • メドピア株式会社で働いてます

                                              TL;DR株式会社Gunosy → メドピア株式会社※以下ダラダラと書いた雑文。興味ある人だけ読んで。 試用期間が終わってとりあえずはやっていけそうな感じなので、いわゆる在職エントリってやつを書いてみます。 Why 在職エントリ?ある程度様々な経験も積んでシニアレベルのエンジニアとして会社側の期待値も高い中での入社となり、試用期間中は黙ってひたすら期待された成果を出せるように一生懸命働いてました。 また前職はイヤだったから辞めたとかではないので、転職してお互い「あ、なんか違う」となるのがちょっと心配でした(平たくいうと「ビビってた」ということになりますw)。 試用期間を終えてとりあえずはやっていけそうな感じになったので、報告がてら本エントリを書くことにします。 あとはキラキラ希望に満ち溢れた退職エントリや転職エントリ書ける歳でもなくなってきたなーという感じもある。 前職でやってたこと前職は

                                                メドピア株式会社で働いてます
                                              • 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サービス開発日記チラシの裏
                                                • Sidekiq と Solid Queue の機能比較 - Kaigi on Rails day2 Sidekiq vs Solid Queue によせて - Techouse Developers Blog

                                                  Kaigi on Rails 2024 に参加しました こんにちは、クラウドハウス採用でエンジニアインターンをしている Higashiji です。 10 月の 25・26 日、Ruby on Rails についてのカンファレンス、 Kaigi on Rails 2024 が開催されました。 弊社からは新卒エンジニアの @izumitomo が「デプロイを任されたので、教わった通りにデプロイしたら障害になった件 ~俺のやらかしを越えてゆけ~ 」というセッションで登壇しました。 スライドがアップロードされているので、興味を持っていただけた方はぜひご覧になってください。 私はこれまでカンファレンスに参加したことがなかったのですが、カンファレンス参加費補助制度を使って初めて参加させていただきました。 本記事では、Shinichi Maeshima (@willnet) さんによるセッション Sid

                                                    Sidekiq と Solid Queue の機能比較 - Kaigi on Rails day2 Sidekiq vs Solid Queue によせて - Techouse Developers Blog
                                                  • 「Forkwell Open Sesame! |SaaS企業のリードエンジニア同士でお悩み相談会」に登壇しました! - ANDPAD Tech Blog

                                                    アンドパッドのRailsエンジニアの @KanechikaAyumu です! 10/27にForkwell主催の「Forkwell Open Sesame! |SaaS企業のリードエンジニア同士でお悩み相談会」に登壇しました! forkwell.connpass.com SaaS企業3社(株式会社LegalForce、株式会社アンドパッド、メドピア株式会社)とファシリテーターのwillnetさんと困りごとを持ち寄り、企業同士ならではの開発課題をお互いに質問し合いました。 私は「継続的Gemアップデートどうしていますか?」という質問に対して 「Rails 継続的Gemアップデートの 仕組みを」というタイトルで発表しました。 発表した内容について 創業時から開発を続けてきたRailsアプリが5年程経ち、徐々に大きくなり(コードの行数は30万行程度)、Gemのバージョンが古いなど、色々と課題を抱

                                                      「Forkwell Open Sesame! |SaaS企業のリードエンジニア同士でお悩み相談会」に登壇しました! - ANDPAD Tech Blog
                                                    • 『medpeer.jp 開発を加速させるエンジニアリング施策』をKaigi on Rails 2021で話しました - メドピア開発者ブログ

                                                      こんにちは、DCP事業部エンジニアの榎本です。普段の業務ではMedPeer Channelの開発を担当しています。 メドピアはKaigi on Rails 2021にRubyスポンサーとして参加し、そのスポンサーLT枠にて 『medpeer.jp 開発を加速させるエンジニアリング施策』という発表をしてきました。 今日はその内容を補足するとともに改めて本テックブログでも紹介したいと思います。 medpeer.jp の rails stats medpeer.jp (医師専用コミュニティサイト「MedPeer」のことです)自体は2007年にローンチしたサービスで、サービスの歴史としては10年以上(もうすぐ15年!)続くサービスです*1。 サービスイン当時の開発言語はPHPでしたが、2016年に medpeer.jp のRails化が開始されました。Rails化をスタートさせてから既に5年が経過

                                                        『medpeer.jp 開発を加速させるエンジニアリング施策』をKaigi on Rails 2021で話しました - メドピア開発者ブログ
                                                      • Active Recordで関連先を保存するときに気をつけること - おもしろwebサービス開発日記

                                                        先日、仕事でRails(Active Record)の難しい仕様に遭遇したので共有するためにエントリをしたためました。似たようなケースに遭遇した人の手助けになれば幸いです(\( ⁰⊖⁰)/) 対応Railsバージョンと設定 Rails6.1以上 config.active_record.has_many_inversing = true(Rails6.1のデフォルト設定)である 問題1 まず次のコードを読んでみてください。 class User < ApplicationRecord has_many :posts end class Post < ApplicationRecord belongs_to :user, inverse_of: :posts # (1) before_update { puts 'before_update' } end user = User.new po

                                                          Active Recordで関連先を保存するときに気をつけること - おもしろwebサービス開発日記
                                                        • Railsアプリケーションのテストが失敗したときにどうしたらいいのか - おもしろwebサービス開発日記

                                                          本エントリはiCARE Advent Calendar 2020の25日目です。 僕はiCARE社内で技術顧問としていろんなことをやっていますが、そのうちの一つとしてRailsアプリケーションのテスト改善があります。具体的には「たまに失敗するテスト」で難しいものがあったときに調査して解決をしています。この「たまに失敗するテスト」はiCAREに限らず、ほとんどの会社が苦しめられているのではないでしょうか。僕のお手伝いしている他の会社でも同様なので、複数社の社内ドキュメントツールに「こういうふうに調査するといいですよ」という文章を書いています。しかしこれらはどれも社内wikiどまりで、現時点で公開されている文章が存在していません。 そこで今回この場を借り「失敗したテストがあったときにどうしたらいいのか」の決定版を書いて、今後は「これ読んでおいてください」で済ませたいなと思っています。 前提 R

                                                            Railsアプリケーションのテストが失敗したときにどうしたらいいのか - おもしろwebサービス開発日記
                                                          • TurbolinksからTurboへの移行 - おもしろwebサービス開発日記

                                                            弊社サービスである savanna.io はずっとTurbolinksとStimulusで開発してきたのですが、この度 Hotwireがリリースされた*1のでTurbolinks部分をTurboに置き換えてみました。その際のやったことやハマったことのメモを残しておきます。メモ書きなので雑なのはご容赦ください。 前提 webpackerを使ってます。assets pipeline派や素のwebpackを利用している人は適宜読み替えてください TurbolinksのアンインストールとTurboのインストール turbo-railsをGemfileに追加してbundle install ./bin/rails turbo:installをする で問題なくいけるのであればそれで。turbo:installが失敗したらturbo-rails/turbo_with_webpacker.rb と同等のこ

                                                              TurbolinksからTurboへの移行 - おもしろwebサービス開発日記
                                                            • Kaigi on Rails2023で例外について発表してきました - おもしろwebサービス開発日記

                                                              Kaigi on Rails初のオフライン開催であるKaigi on Rails 2023で登壇する機会をいただけました。 例外は遅い 資料と動画は こちら から辿れます。 ちょっと間が空いてしまいましたが、以下登壇に関連してつらつら思いついたことを書いています。 なんでこの題材で話をしたんですか これまでのKaigi on Railsの発表内容から 明日の業務から使えるRailsの知見 Railsアプリケーション開発の実例 に関連したキャッチーなテーマが採択されやすんだろうな〜、とあたりをつけていました。僕は前者のネタはたくさんストックがある*1ので、その中で みんな興味がありそう 既存の書籍や記事ではあまり取り上げられていない題材 として、例外がよさそうだとなったのでした。発表でも言及した destroyじゃなくてdestroy!を使いましょう rescue_fromだけでエラーハンド

                                                                Kaigi on Rails2023で例外について発表してきました - おもしろwebサービス開発日記
                                                              • RubyKaigi 2024 に登壇した - koicの日記

                                                                発表について RuboCop から見た Ruby パーサーの世界の今後 廊下会議し損ねた気になり点 今後の 362 日 登壇以外に得られた会話など 今回のRubyKaigiでの気づき RubyKaigi 2024 に登壇した。 rubykaigi.org 当日の発表スライドは以下です。 発表について 今回は、RubyKaigi 2023 の帰り道に Justin Searls とばったり松本駅で遭遇してからの、362 日の Rubyist 活動をストーリーにしたものでした。 もともとは、LSP の話を中心にして Prism の話は少し出るくらいという『RuboCop Evolution with LSP』というプロポーザルを出して通過したところ、Rails/OSSパッチ会で松田さんから「Lrama の話が3本あって、Prism の話がないんですよ。」という感じでタイトルに Prism を入

                                                                  RubyKaigi 2024 に登壇した - koicの日記
                                                                • Rails edgeでCIを回し始めました 〜見つけたエラー編〜 - Timee Product Team Blog

                                                                  こんにちは、マッチング領域でバックエンドエンジニアをしているぽこひで ( @pokohide ) です。 前回はRails edgeでCIを回し始めた話を紹介しました。 tech.timee.co.jp 今回は、実際に弊社でCIをRails edgeで回し始めた事で見つけたエラーの例を紹介していきます。記事公開時点(2023年7月)のバージョンは下記の通りです。 $ ruby -v ruby 3.2.2 (2023-03-30 revision e51014f9c0) +YJIT [aarch64-linux] $ rails -v Rails 7.0.6 ActiveRecord::DangerousAttributeError object_id is defined by Active Record このエラーに関する参考記事はこちらです。 euglena1215.hatenablo

                                                                    Rails edgeでCIを回し始めました 〜見つけたエラー編〜 - Timee Product Team Blog
                                                                  • committee×OpenAPI×RailsでスキーマファーストなAPI開発 | GiFT(ギフト)株式会社

                                                                    committee×OpenAPI×RailsでスキーマファーストなAPI開発2019.12.01 committeeというgemとOpenAPIのスキーマを使ってRailsでスキーマファーストなAPI開発を試してみました。 弊社でWebアプリケーションを制作する場合、フロントエンドとバックエンドは別々に開発することが多いです。 フロントはほぼNuxt.jsですが、APIは誰が主導するかや求められるスピード感などでプロジェクトごとに変わってきます。 私が主導するプロジェクトである程度スピード感も求められる場合は主にRuby On Railsで開発をしています。(以下Railsで開発するという前提で話を進めます) 前提課題感フロントエンドとバックエンドのプロジェクトが別々かどうかはあまり問題ではありませんが、APIの実装を担当する人とフロントエンドでAPIの組み込みを担当する人が異なる場合は

                                                                      committee×OpenAPI×RailsでスキーマファーストなAPI開発 | GiFT(ギフト)株式会社
                                                                    • iCARE Dev MeetupでHotwireについて話した - おもしろwebサービス開発日記

                                                                      僕がお手伝いしているiCAREさん主催のミートアップ、iCARE Dev Meetupで、最近発表されたBasecamp社製jsフレームワークであるHotwireについて話しました。 【iCARE Dev Meetup #18】技術顧問が語る、Ruby on Rails実践開発 - connpass 動画も公開されているので気になる方は探してみてください*1。 所感 弊社サービスであるsavanna.ioはHotwireを使って作っています。Hotwireはつい最近発表されましたが、その前身となるフレームワークであるturbolinksとStimulusの組み合わせで数年間開発していました。 なので「サーバサイドはHTMLを返し、jsは最小限」というスタイルが少人数で開発するチームにとてもマッチすることは身を持って体験しています。Vue.jsやReactを採用していたら機能を開発するスピー

                                                                        iCARE Dev MeetupでHotwireについて話した - おもしろwebサービス開発日記
                                                                      • まるでフロントエンドの“Rails” Hotwireを使ってJavaScriptの量を最低限に

                                                                        iCARE Developer Meetupは、月次で開催している株式会社iCAREが主催するエンジニア向けのLT勉強会です。18回目の今回は、Ruby on Railsをテーマに行いました。株式会社iCAREの技術顧問willnet 氏がHotwireについて話しました。後半はTurbo Streams、Turbo Frames、Stimulusについて。前半はこちらから。 HTMLをいい感じに解釈してくれるTurbo Streams 前島真一氏:Turbo Streamsとは何かと言うと、下の図のようなHTML片をサーバーサイドからTurbo StreamsのContent-Typeで返してあげると、TurboがこのHTMLの内容を見て、いい感じに解釈して処理をしてくれるというものです。 いい感じに解釈するというのはどういうことかこのturbo-streamタグを使って説明しますね。t

                                                                          まるでフロントエンドの“Rails” Hotwireを使ってJavaScriptの量を最低限に
                                                                        • Rails6でbyebugを利用してデバッグするときに気をつけたいこと - SmartHR Tech Blog

                                                                          SmartHRでRails顧問業をしていますwillnetです。最近はよくテストコードの治安維持活動をしています。 SmartHRでは複数のRailsアプリケーションが稼働していますが、その大半はRails6で動いています。先日、そのうちの一つのアプリケーションで「定義しているはずの定数がなぜか読み込めない」という奇妙な現象に遭遇したので原因を調査しました。 調査の結果、これはRails6を利用しているひとであればそれなりにハマる可能性がありそうだ、と感じたので今回ブログエントリにして周知しておこうと思った次第です。 定義しているはずの定数がなぜか読み込めない、とは binding.pry時にA::Bのようにネームスペース配下の定数を参照したときNameError: uninitialized constant A::Bのようになることがある class Aもclass A::Bもアプリケ

                                                                            Rails6でbyebugを利用してデバッグするときに気をつけたいこと - SmartHR Tech Blog
                                                                          • The Complete Guide to Rails Performance読書会をしました - メドピア開発者ブログ

                                                                            こんにちは。メドピアのお手伝いをしています@willnetです。最近車を買いました。これまでペーパードライバーだったので自信を持って運転できるように運転の練習を頑張っています。 今日は社内読書分科会で読んだThe Complete Guide to Rails Performanceという本の話を書きたいと思います。社内読書分科会って何?という人はこちらのエントリを参考にしてください。 tech.medpeer.co.jp The Complete Guide to Rails Performanceとは タイトルの通り、Railsアプリケーションのパフォーマンスを向上させるための知識やテクニックについて書かれている書籍です。書いている人は Nate Berkopecさんで、パフォーマンスに関するコンサルやワークショップをしているようです。パフォーマンスに関するメールマガジン*1の発行もし

                                                                              The Complete Guide to Rails Performance読書会をしました - メドピア開発者ブログ
                                                                            • タイムライン振り返りをリモート開催した話 - SmartHR Tech Blog

                                                                              こんにちは! 二人しかいないアジャイル推進室のメンバーの一人、エンジニアの森住(@t_morizumi)です。 アジャイル推進室とはなにか、については @kissy による以下のブログをご参照ください。 tech.smarthr.jp (当初はアジャイル推進室(仮)でしたが、「もう(仮)いらないんじゃね?」との声を受けて現在は(仮)が外れています) 今回は表題の通り、アジャイル推進室としてリモートでのタイムライン振り返り実施をお手伝いしたので、そのときの事前準備 → 実施 → 事後について書いていきます。 一ヶ月ほど前に出た「コロナの時代の付箋ワークショップ」という CTO の芹澤によるブログで、タイムライン振り返りについて軽く触れられているのですが、今回はより踏み込んだ内容となっています。 tech.smarthr.jp 経緯 上記の芹澤によるブログに、大型機能開発がひと段落したタイミン

                                                                                タイムライン振り返りをリモート開催した話 - SmartHR Tech Blog
                                                                              • 「Rails 6.1で新しく入る機能について」iCARE Dev Meetup #12 の登壇内容 https://icare.connpass.com/event/183716/

                                                                                rails_6_1_new_features.md Rails 6.1で新しく入る機能について @willnet 最近のRailsリリース日 6.0.0 (2019/08/06) 5.2.0 (2018/04/09) 5.1.0 (2017/04/27) 5.0.0 (2016/06/30) だいたい1年くらいでマイナー、メジャーバージョンが上がる RailsConf(毎年だいたい4末くらいに開催)がターゲットになっていそう ではそろそろ6.1.0でるの?というとまだっぽい雰囲気を感じる https://github.com/rails/rails/pulls?q=is%3Aopen+is%3Apr+milestone%3A6.1.0 一応6.1.beta1用のブログエントリの準備用PRはある(けどいまアクティブではない) Add post about 6.1.beta1 release

                                                                                  「Rails 6.1で新しく入る機能について」iCARE Dev Meetup #12 の登壇内容 https://icare.connpass.com/event/183716/
                                                                                • 週刊Railsウォッチ(20210607前編)ActiveRecord::Relationのone?とmany?が高速化、RubyKaigi Takeout 2021登壇者募集開始ほか|TechRacho by BPS株式会社

                                                                                  こんにちは、hachi8833です。RubyKaigi Takeout 2021の登壇者募集が始まりましたね。 CFP for RubyKaigi Takeout 2021 (the online version of RubyKaigi) is now OPEN! https://t.co/VeJ1Tv5iyr #rubykaigi — RubyKaigi (@rubykaigi) June 2, 2021 週刊Railsウォッチについて 各記事冒頭には🔗でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 お気づきの点がありましたら@hachi8833までメンションをいただければ確認・対応いたします🙇 TechRachoではRubyやRailsな

                                                                                    週刊Railsウォッチ(20210607前編)ActiveRecord::Relationのone?とmany?が高速化、RubyKaigi Takeout 2021登壇者募集開始ほか|TechRacho by BPS株式会社