並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 782件

新着順 人気順

rspecとはの検索結果81 - 120 件 / 782件

  • 大事なのは「自分自身へのハードルをできるだけ下げること」 アウトプットの達人が贈る、良質な技術記事を量産する秘訣

    ITエンジニアにとって大事な「アウトプット」。大事だと思う一方、アウトプットの仕方がわからず、悩んでいる人も多いのではないのでしょうか。「Meets Professional #4」に登壇したのは、Qiitaでユーザーランキング1位(2023年1月現在)の伊藤淳一氏。良質な技術記事を量産する秘訣を語りました。全4回。2回目は、アウトプットをする上での工夫について。前回はこちら。 モチベーションや得意なことは人それぞれ 伊藤淳一氏:では後半にいきます。ここまで「世界を良くしたい」と話してきたわけですが、もしかすると一部の人は「なるほどな。さすが伊藤さんだわ」と思いつつ、「でもそんなことができるのは伊藤さんしかいないですよ」とか、「僕には真似ができないな、だって僕は〇〇だし」と、できない理由を考えるかもしれません。これはぜんぜん責める気はないですよ。当たり前だと思います。 モチベーションや得意

      大事なのは「自分自身へのハードルをできるだけ下げること」 アウトプットの達人が贈る、良質な技術記事を量産する秘訣 
    • SuikaというPure Rubyな形態素解析器を作成した - 洋食の日記

      はじめに Pure Rubyな形態素解析器Suikaを作成した。開発中でバッリバリにα版だが、思い切ってリリースすることにした。 suika | RubyGems.org | your community gem host 最も有名な形態素解析器であるMeCabもそうだが、形態素解析器は食べ物の名前がつくことが多い。「Rubyなので赤い食べ物が良いかな」と考えて、文字数とかわいらしさからSuika(スイカ)とした。 使い方 SuikaはPure Rubyで作られているため、MeCabをはじめ特別なライブラリを別途インストールする必要はない。 gem install suika バッリバリにα版なので、機能はないに等しく、オプションなしのMeCabコマンドと同様となる。 $ irb irb(main):001:0> require 'suika' => true irb(main):002:

        SuikaというPure Rubyな形態素解析器を作成した - 洋食の日記
      • GitHub Actions Self-hosted Runner の導入と安定運用に向けた軌跡 - スタディサプリ Product Team Blog

        こんにちは。SRE の @int128 です。 Quipper では GitHub Actions Self-hosted Runner を一部のジョブで導入しています。本稿ではその目的と具体例を紹介します。 背景と解決したい課題 Quipper では以下の CI サービスを用途に合わせて利用しています。 CircleCI(テストやデプロイなど) GitHub Actions(テストやデプロイなど) AWS CodeBuild(主に Terraform など AWS リソースにアクセスする場合) Google Cloud Build(主に Google Cloud のリソースにアクセスする場合) Jenkins(定期実行や手動実行に特化したジョブ) このうち GitHub Actions は以下の点が優れていると感じています。 monorepo 構成の場合にマイクロサービスごとに独立して

          GitHub Actions Self-hosted Runner の導入と安定運用に向けた軌跡 - スタディサプリ Product Team Blog
        • RSpecの作者が振り返る歴史(翻訳)|TechRacho by BPS株式会社

          概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: History of RSpec – Steven R. Baker 原文公開日: 2021/05/09 著者: Steven R. Baker 日本語タイトルは内容に即したものにしました。 私がTDD(テスト駆動開発)をチームで教え始めたのは2001年のことでした。当時のTDDはまだかなり新しい概念でしたので、テストを自動化したチームもほとんどなく、XP(エクストリームプログラミング)やTDDについて聞いたことがある人も皆無でした。テストを最初に書くことで設計を進めるという概念は当時まったく知られていなかったので、TDDを理解するのに皆とても苦労していました(20年経った今でも、この事実が完全に変わったとは言えません)。 思い返せば、あの当時は厳しい状況でした。最善を尽くしてTDDの概念を説明し、どうにかしてチームの関心を惹こう

            RSpecの作者が振り返る歴史(翻訳)|TechRacho by BPS株式会社
          • CircleCI上のRSpecによるテスト実行時間を25min -> 12minに短縮する技術 - ANDPAD Tech Blog

            株式会社アンドパッドのアカウント基盤チームでテックリードをしているid:shiba_yu36です。 最近自分のサイドプロジェクトとして、生産性を向上するために、CI実行時間の短縮化を行っていました。その結果、とくに時間のかかっていたCircleCI上のRSpecによるテスト実行時間を、25min -> 12minに改善できました。そこで今回はどのような流れでCIの実行時間を改善していったかについて、具体的に書いてみたいと思います。実行時間改善の勘所について参考になれば幸いです。 改善の流れ: CircleCIでボトルネック調査し、大きいボトルネックを解消する 実行速度改善の前に: Flakyなテストを一斉に直す 速度改善1: bundle installのキャッシュがうまく効いていなかった問題を修正 -> 4minの短縮 速度改善2: developブランチ以外ではカバレッジを取らないよう

              CircleCI上のRSpecによるテスト実行時間を25min -> 12minに短縮する技術 - ANDPAD Tech Blog
            • Rails 7.0 + Ruby 3.1でゼロからアプリを作ってみたときにハマったところあれこれ - Qiita

              Ruby on Rails Advent Calendar 2021の枠が空いていたので、あとから登録しました はじめに 個人的なプロジェクトになりますが、僕が翻訳しているRSpecの入門書「Everyday Rails - RSpecによるRailsテスト入門」を2022年前半にRails 7.0バージョンにアップデートしようと考えています。 そこでこの本の中で使っているサンプルアプリケーションをRails 7.0でゼロから作り直してみました。フロントエンド周りを中心に結構考え方が変わっている部分があったので、「ここでハマった!」とか「こういうポイントを押さえておくといいかも」という点をあれこれ書いてみます。 なお、Rails 7.0版のサンプルアプリケーションはまだ公開できる状態ではないので、公開はもうしばらくお待ちください🙏 今回作成したサンプルアプリケーションはこちらで公開してい

                Rails 7.0 + Ruby 3.1でゼロからアプリを作ってみたときにハマったところあれこれ - Qiita
              • 研修で初めてRuby on Railsを触って学んだこと - ドワンゴ教育サービス開発者ブログ

                はじめに 配属研修の課題について エンジニア新入社員研修の個人課題:「JavaScriptでの開発」 配属研修課題1:「RailsでAPIサーバのみ構築」 配属研修課題2:「Railsでフロントエンドも含めた開発」 作ったアプリケーションの概要 JavaScript・Expressで開発した時との違いに関する感想 letやconstが要らない変数定義 falsyな値の違い ブロックをそのまま変数に代入できない 暗黙のreturn 条件文の後置 フレームワークの機能が豊富 ディレクトリ構造の一貫性 リソースベースルーティング 課題を取り組みながら学んだこと OpenAPIを使ったAPI定義ファイルの作成 N+1問題対策 テストコードに関する考えの変化 おわりに We are hiring! サムネイル画像 はじめに こんにちは。2022年4月に新卒で入社しました教育事業本部サービス開発部バッ

                  研修で初めてRuby on Railsを触って学んだこと - ドワンゴ教育サービス開発者ブログ
                • 一迅プラスのインフラ構成について - BOOK☆WALKER inside

                  こんにちは。 メディアサービス開発部バックエンド開発グループのフサギコ(髙﨑)です。 Ruby on Railsによるバックエンドの実装運用と、AWSによるサービスインフラの設計構築を中心とした、いわゆるテックリードのような立ち位置で働いています。 本記事では株式会社一迅社さまの公式漫画連載サイトであり、ブックウォーカーが開発保守運用を担当している一迅プラスのサービスインフラの概要についてご紹介したいと思います。 もしよければ、前記事のニコニコ漫画のインフラ構成についてならびに読書メーターのインフラ構成についてもご覧ください。 一迅プラスについて 一迅プラスは株式会社一迅社さまが運営する公式漫画連載サービスです。 冒頭試し読みから連載まで、2022/06/10現在で150を超える作品が掲載されています。 一迅プラスのトップページ この一迅プラスにおいてブックウォーカーは開発保守運用を担当し

                    一迅プラスのインフラ構成について - BOOK☆WALKER inside
                  • 教えてリモートワーク・伊藤淳一さんの場合 〜仕事環境編〜 - give IT a try

                    はじめに この記事はフィヨルドブートキャンプの 「ちくしょう、勉強だ。」 キャンペーンの一環として書かれたインタビュー記事です。 新型コロナウィルスの感染拡大により家で過ごすことが増えていると思います。フィヨルドブートキャンプでは、 「ちくしょう、勉強だ。」 キャンペーンの一環として、プログラマーのリモートワークはどうなっているのか、フィヨルドブートキャンプにゆかりのあるメンター、卒業生、プロのエンジニアの方々にリモートワークの状況や環境、コツなどをインタビューしていきたいと思います。 第1回はkomagataさんでした。 fjord.jp 本エントリは第2回の記事(前編)になります。 Q1. お名前・お仕事・フィヨルドブートキャンプとの関係を教えてください。 伊藤淳一(@jnchito)です。株式会社ソニックガーデンでプログラマをやってます。 2020年2月からフィヨルドブートキャンプで

                      教えてリモートワーク・伊藤淳一さんの場合 〜仕事環境編〜 - give IT a try
                    • 今度こそユニットテストを書き始めるために

                      はじめに Unit Testが大事、ということ自体はあまり異論はないと思うのですが、最初からTDDがしっかりできてるような現場ならいざ知らず、そうではない場合は中々うまく入れれない事も多くあります。なのでこうすると導入しやすい、という観点で以下の動画でそのあたりのことを話したのですが、補足も含めて記事でもまとめておきたいと思います。 これはユニットテストですか? ユニットテストとは? ユニットテストとは何でしょうか? 一応、テストの資格試験を実施しているISTQBの定義では以下のように定義されます。 component testing (unit testing) A test level that focuses on individual hardware or software components. Synonyms: module testing, unit testing この

                        今度こそユニットテストを書き始めるために
                      • t-wadaさんによる「レガシーコード改善のワークショップ」レポート - Link and Motivation Developers' Blog

                        Motivation Cloud のエンジニアをしています、宮田と申します。 先日、和田卓人(t-wada)さんにMotivation Cloudの開発者向けに効果的なリファクタリングをどう行なっているかに関してワークショップを開催してもらいました。 本記事では、当日のワークショップの様子や、その後の社内の変化をお伝えしたいと思います。 なぜワークショップを依頼したのか? 弊社では複数のSaaSを提供しています。 最も歴史があり大きなMotivation Cloudではテストコードのカバレッジはそれなりに高い数値を維持していますが、ドメイン貧血症に当てはまるコードも出ており新規で参画するメンバーが仕様を把握するのが困難になってきました。 開発者体験を上げていきたいと組織全体で考えておりFour Keys Metricsに基づいて生産性の向上に取り組んでいますが、並行でより良いコードにリファ

                          t-wadaさんによる「レガシーコード改善のワークショップ」レポート - Link and Motivation Developers' Blog
                        • 管理画面にGitOpsを導入しました 〜GitOpsとは編〜 - Gunosy Tech Blog

                          はじめに 管理画面の課題 GitOpsとは Push型 Pull型 なぜPush型よりPull型なのか Push型のデメリット Pull型のメリット GitOpsにおけるPull型の構成 GitOpsで課題は解決されるのか まとめ 参考リンク はじめに こんにちは。広告技術部のjohnmanjiroです。普段は広告配信のAPIや管理画面を作っています。 広告技術部では、広告配信に関わる様々なアプリケーションを管理しており、その多くがEKSのKubernetesクラスタ上で動作しています。 広告の入稿や審査を行う管理画面もそのうちの一つです。フレームワークにはRailsを使っています。 管理画面をEKSに移行する際の記事はいくつか本ブログにも上がっているので、興味があればぜひご覧ください。 tech.gunosy.io tech.gunosy.io 今回、その管理画面のCDにGitOpsを導

                            管理画面にGitOpsを導入しました 〜GitOpsとは編〜 - Gunosy Tech Blog
                          • 個人gemのCIをほぼ全部Travis CIからGitHub Actionsに移行した - くりにっき

                            2日間で30個くらいのリポジトリでGitHub Actionsに移行したのでメモ tl;dr; モチベーション GitHub Actionsを選んだ理由 GitHub ActionsでgemのCIをするための設定 2020/1/4 0:40追記 weekly build 公式のactions/setup-rubyではなくmasa-iwasaki/setup-rbenvを利用 ボツ案:Dockerイメージのrubyを使う masa-iwasaki/setup-rbenvを利用 setup-rbenvを使う場合の注意点 Travis CIのallow_failuresをGitHub Actionsでも実現する GitHub ActionsでRuby 2.3以下をビルドする Gemfile.lockをコミットしないリポジトリでもキャッシュを保存したい GitHub Actionsの不満点 ジョブ

                              個人gemのCIをほぼ全部Travis CIからGitHub Actionsに移行した - くりにっき
                            • 僕がRSpecでsubjectを使わない理由 - give IT a try

                              はじめに 僕は折に触れて「RSpecではなるべくsubjectを使わない方がいい」という発言をしています。 Qiitaとか見てるとRSpecのsubjectを愛用している人が多そうな印象なんだけど、僕はほとんど使っていません。「subjectは原則使わない。明らかにメリットがあるときにだけ例外的に使用する」が僕のポリシーです。ほら、RSpecの(元)メンテナさんもそう言ってるし。 https://t.co/Rp5EiIxCVb #Qiita pic.twitter.com/pMlN35ihEG— Junichi Ito (伊藤淳一) (@jnchito) 2019年5月28日 そもそもの話として、RSpecではsubjectは無理に使わない、というのが僕の持論です。なぜなら無理にを使うと、いびつなテストコードができやすいから。基本はsubjectなしで書く。明らかにsubjectが有効なと

                                僕がRSpecでsubjectを使わない理由 - give IT a try
                              • Railsで成功するには、 コンピュータ書鑑賞、本との出会い方【Rubyistめぐりvol.1 takahashimさん】 - STORES Product Blog

                                Rubyist Hotlinksにインスパイアされて始まったRubyistめぐり。第1回は高橋征義さんをゲストに迎えて、お話を聞きました。こちらは後編です。前編はこちら。 Rubyが他の言語に与えた影響 藤村:第2部、高橋さんについて聞いてみようと思います。今更ながらRubyについて聞きたいんですけど、好きな機能とかありますか? 高橋:好きな機能ですか?あんまり機能としてこれというのなくて、全体的に使い勝手がいいですね。まあでも、そういう意味でいえばオープンクラスの方がいいんじゃないの?みたいな感じがしますね。オープンクラスじゃないRubyはつらそうだって。 藤村:確かに。 高橋:つらそうというかつまらなさそうですね。オープンクラスが原因でつらいことになるのはわかるんですけど、でもあれがないんだったら他の言語でもいいよね、って。 藤村:Rubyがああじゃなかったら他の言語は今のようになって

                                  Railsで成功するには、 コンピュータ書鑑賞、本との出会い方【Rubyistめぐりvol.1 takahashimさん】 - STORES Product Blog
                                • GitHub Copilot for Businessの所感、みんなに聞いてみた - LIVESENSE ENGINEER BLOG

                                  はじめに LET運営の村山と毛利です。 社内の交流を活発にし、お互いの知識を伝搬する機会を設けるために、Livesense Engineer Talk(通称:LET)というチームを運営しています。 今回は、GitHub Copilot for Businessを社内導入して2ヶ月程経ったので、エンジニアにCopilotを使った感想を聞いてみました。 はじめに みんなの感想 ayumu838さん ここがよかった ここが惜しい 池谷さん ここがよかった ここが惜しい 赤坂さん ここがよかった ここが惜しい 中野さん ここがよかった ここが惜しい 富士谷さん ここがよかった ここが惜しい 渡辺さん ここがよかった ここが惜しい 鈴木さん ここがよかった ここが惜しい 今井さん ここがよかった ここが惜しい まとめ みんなの感想 みんなの感想をChatGPTに要約してもらうと、こんな感じになりまし

                                    GitHub Copilot for Businessの所感、みんなに聞いてみた - LIVESENSE ENGINEER BLOG
                                  • 思わぬ事故防止!開発時やテスト時に使用するメアドのドメインは example.com に統一しよう - Qiita

                                    はじめに Webアプリケーションの開発時やテスト時にはテスト用のユーザーを作成するために適当なメールアドレスとパスワードを登録することが多いと思います。 このとき、みなさんはこんなふうにデタラメなドメインをメアドに使ってないでしょうか? 「こんなデタラメなドメイン、あるわけないやろ!」と思うかもしれませんが、自分はデタラメに付けたつもりでも意外とかなりの高確率でそのドメインは実在します。 実際、上の例で挙げたドメインをブラウザに入力すると、いずれも何かしらページが表示されます。 つまり、そのドメインは現在誰かが使っているということがわかります。 https://hoge.com/ http://testmail.com/ https://www.bbb.org (bbb.com から転送される) 実在するドメインだと何が困るの? 何らかの間違いでその実在するドメインに向けてメールが送信され

                                      思わぬ事故防止!開発時やテスト時に使用するメアドのドメインは example.com に統一しよう - Qiita
                                    • スクリプト言語としてみた各POSIXシェルの特徴と互換性上の注意点まとめ - Qiita

                                      はじめに この記事は私の主観かつ知っていることをまとめたものです。古くからのシェルの専門家とかではなくここ数年の間に必要になった時にその都度調べたものなので間違いとかもあると思います。またタイトルの通りスクリプト言語としての比較です。つまりインタラクティブシェルの機能についての比較はしていません。(そもそも使い込んでるわけじゃないので知らないです。)POSIX シェルに限定しているのも私が他のシェルを詳しく知らないからです。もし今も使われていて(もしくは開発中で)ここに書かれていない POSIX シェルがありましたらコメントで教えて下さい。(※ csh, tcsh, fish は POSIX シェルではありません。) シェルの系統は少し古いですが「What does it mean to be “sh compatible”?」に投稿されている図が詳しくてわかりやすいです。またこちら「~s

                                        スクリプト言語としてみた各POSIXシェルの特徴と互換性上の注意点まとめ - Qiita
                                      • Rails + RSpec + OpenAPI3 + Committeeでスキーマ駆動開発を運用するTips - Timee Product Team Blog

                                        こんにちは、タイミーデリバリー開発チームの宮城です。 今回は弊社のOpenAPI3ベースのスキーマ駆動開発の運用方法を紹介します。 TL;DR 技術スタックは OpenAPI3, Swagger UI, Committee, ActiveModelSerializers Committeeを利用してOpenAPI準拠のRequest Specを行う OpenAPI3のrequiredキーワードに注意する 背景 タイミーデリバリーでは、RailsによるAPIサーバーと、Web管理画面としてVue.jsによるSPA、ユーザー向けiOSアプリとしてSwiftを採用しています。 1つのモノリスなRailsで利用者別にネームスペースを区切り、それぞれエンドポイントを提供しています。 サーバーサイドとクライアントサイドを分離し並行して開発を進めるためにスキーマ駆動開発を導入しました。スキーマ駆動開発の

                                          Rails + RSpec + OpenAPI3 + Committeeでスキーマ駆動開発を運用するTips - Timee Product Team Blog
                                        • rspecを読みやすくメンテしやすく書くために

                                          はじめに 読みやすくメンテナンスしやすいRSpecを書けていますか? RSpecはというかRubyはというか柔軟なので色々な書き方ができてしまいます。 ある程度の規模のテストコードでは、油断するとどこで定義されている let なのかわからないものが登場したり、なぜか作られる(あるいは作られない)謎のレコードでテストが失敗したり、そういった辛い目にあったりするのではないでしょうか。 僕がRSpecを書くときに意識していることをまとめてみました。 これを実践するようになってつらい現象にあうことはずいぶんと減り、ずいぶんと読みやすくなったんじゃないかなと思っています。 ※効果には個人差があります。 Ruby on Railsを使ったアプリケーションのテスト向けですがRuby on Rails以外でも使えると思います。 主に以下の影響を強く受けています。 RSpecとセットで使われることが多いFa

                                            rspecを読みやすくメンテしやすく書くために
                                          • GitLab RunnerをGCPでオートスケールさせて安く運用する - OPTiM TECH BLOG

                                            こんにちは。Optimal Bizのサーバーサイドに関する開発を担当している伊藤です。 皆さんCIは何を利用していますでしょうか? Optimal BizではGitLab CI/CDを利用しています。 単体テスト・ビルド・デプロイ等CIの用途は多岐にわたりますが、実際にそれらを実行するPCを必要な数だけ常に起動しておくと無駄な料金がかかってしまいます。 そこで、今回はGoogle Cloud Platform(以降、GCP)のプリエンプティブル VM インスタンスをGoogle Kubernetes Engine(以降、GKE)でオートスケールさせることで、CIリソースを格安で確保する事例を紹介します。 利用例 Optimal Bizチームの場合は「RSpecをGitLab CI/CDを使って並列実行する」で紹介した大量の単体テストを約20台のノードで並列実行するために利用しています。 ざ

                                              GitLab RunnerをGCPでオートスケールさせて安く運用する - OPTiM TECH BLOG
                                            • Docker ComposeとDipで開発用コンテナを再利用可能にする(翻訳)|TechRacho by BPS株式会社

                                              概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Reusable development containers with Docker Compose and Dip — Martian Chronicles, Evil Martians’ team blog 原文公開日: 2021-04-21 著者: Vladimir Dementyev サイト: Evil Martians -- ニューヨークやロシアを中心に拠点を構えるRuby on Rails開発会社です。良質のブログ記事を多数公開し、多くのgemのスポンサーでもあります。 はじめに: Docker Composeファイルを管理しながら、最小限の労力で複数のDocker環境でコードを実行・テストする方法をご紹介します。YAML設定をいじくる時間を削減し、シンプルなコマンドを1つ実行するだけで任意のホストフォルダから指定の

                                                Docker ComposeとDipで開発用コンテナを再利用可能にする(翻訳)|TechRacho by BPS株式会社
                                              • OpenAPIを使ったRailsスキーマ駆動開発 - ドワンゴ教育サービス開発者ブログ

                                                はじめに サービス構成 レポジトリ一覧 サーバー側Railsアプリ クライアント側Railsアプリ 開発の流れ 利用ツール swagger-cli committee-rails 不具合1: ファイルの分割 不具合2: $refとnullableの同時使用 json-schema openapiの記法に合わせた機能拡張 openapi-generator-cli (Ruby client) 不具合1: 中途半端な型チェック 不具合2: oneOf/anyOfに非対応 factory_bot 終わりに We are hiring! はじめに 前回の記事では、OpenAPIで新しいウェブAPIを定義する際に、yamlのままで読みやすいようにファイル構成等を工夫した話をしました。 今回はそのAPIスキーマを使って、Railsでスキーマ駆動開発を実現するにあたって利用しているツール類についてお話し

                                                  OpenAPIを使ったRailsスキーマ駆動開発 - ドワンゴ教育サービス開発者ブログ
                                                • RailsアプリをRuby 2.7.0で動かして分かったこと | Recruit Tech Blog

                                                  はじめに (背景) 昨年のクリスマスにRuby 2.7.0がリリースされました。 Ruby 2.7は今年リリース予定のRuby 3への移行を見据えたバージョンであり、多くの新機能や変更点があります。そこで、弊社が企画制作する『Babyプラス』のRailsアプリをRuby 2.6.5 -> 2.7.0に上げて動かしてみたところ、約1,000件のテストケース実行に対して6件のエラーと2,700件ほどのワーニングが発生しました。この結果の分析によりRuby 2.7移行について傾向と対策が見えてきたので、現時点 (2020/01/08) で分かったことを共有します。 結論 (Ruby2.7移行についての傾向と対策) 傾向として、多くのgemがRuby 2.7.0からワーニングとなる言語仕様変更の影響を受ける 具体的には、ブロック無しProc.new/proc/lambdaおよびキーワード引数 (k

                                                    RailsアプリをRuby 2.7.0で動かして分かったこと | Recruit Tech Blog
                                                  • Ruby 3.0の静的型定義をTypeScriptみたいにライブラリに書いてみた所感 - Narazaka::Blog

                                                    Ruby 3.0が先日のクリスマス(というか昨日)にリリースされたと言うことで、型をやっていきたいと思います。 当方TypeScript大好きっ子なのでRuby 3.0で取り込まれた最も注目すべき機能は静的型チェック関係なのですが、どうもその辺についていまいちまとまって書いてある物がなかった気がするので調べたことをメモします。 Rubyの静的解析 型宣言 rbsファイルを作る方法 実際に型宣言を書く(基本) 検査時の型アノテーションが貧弱でつらいぞ…… 所感 gemに型を含める Steepの作者さんからフィードバックをいただきました。(※追記) 実際に型宣言を書く(Rails関連) DefinitelyTyped相当?「gem_rbs」と「rbs_rails」 実際に型宣言を書く(頑張っていい感じにする)(※追記) VSCode拡張機能で充実する 所感 untypedでやっていき Defi

                                                      Ruby 3.0の静的型定義をTypeScriptみたいにライブラリに書いてみた所感 - Narazaka::Blog
                                                    • Ruby v3.1.0のSegmentation faultに遭遇した話 - メドピア開発者ブログ

                                                      こんにちは。サーバーサイドエンジニアの三村です。 保険薬局と患者さまを繋ぐ「かかりつけ薬局」化支援アプリ kakariやその姉妹サービスである患者接点を資産化する診療予約システム かかりつけクリニック支援サービス kakari for Clinicの開発を担当しています。 目次 はじめに 現象 bugs.rubyに報告 原因究明までの道のり 環境依存の問題かどうかを切り分け エラー発生ファイルの特定 specの実行順をランダムから定義順に変更 因果関係のあるテストを特定 脱Docker Desktop for Mac MySQL -> SQLiteに変更 再現コードの特定 再現コード報告 修正確認 work around まとめ おまけ はじめに kakariをRuby v3.1.0にアップグレードする作業をしていたところSegmentation faultに遭遇したので、bugs.rub

                                                        Ruby v3.1.0のSegmentation faultに遭遇した話 - メドピア開発者ブログ
                                                      • ZennのE2Eテスト基盤をリプレイスしました(開発体験向上、CI時間の短縮、Playwright移行)

                                                        はじめに 2023年にZennチームにJoinしたdyoshikawaです。 このたびZennのE2Eテスト基盤をリプレイスしました。このような下回りの改善はユーザへの価値提供との距離が近い機能開発と比べてどうしても後回しになりがちな中、Publication Proという大きなリリースを迎えて少し開発が落ち着いたタイミングであり、E2Eテストを拡充できる土台を整えることで今後より安心して機能を追加していけるようにするために必要だということで実施しました。 各テストを独立実行可能にすることによる開発体験向上、CI(GitHub Actions)の実行時間短縮、そして将来を見据えてのCypressからPlaywrightへの移行を行いました。 本記事ではリプレイス前に抱えていた課題、それに対して打ち出した解決方針、そして具体的にどんなことをやったのかを紹介します。 抱えていた課題 前提として

                                                          ZennのE2Eテスト基盤をリプレイスしました(開発体験向上、CI時間の短縮、Playwright移行)
                                                        • 技術書にありがちな「IT技術は変化するけど、紙の本は更新できない問題」について僕なりの創意工夫を話してきました #DevReljp - give IT a try

                                                          先日のブログでもお伝えしたとおり、「DevRel Meetup in Tokyo #78 〜商業技術書出版を学ぼう〜」という勉強会で「出版したら終わり、にしない技術書執筆」という発表をしてきました。 devrel.connpass.com 当日使ったスライドはこちらです。 どんなことをしゃべったの? 発表の概要はこんな感じです。 内容を随時更新できない紙の本と変化の速いIT技術はどうしても相性が悪い 相性の悪さは受け入れた上で、筆者が積極的に読者をサポートする 変化の速い技術は紙の本ではなく、電子書籍のみとするのも一手 拙著「プロを目指す人のためのRuby入門」の話題を中心に話しつつ、僕がなぜRailsの本ではなくRubyの本を書いたのかとか、電子書籍オンリーで販売している「Everyday Rails - RSpecによるRailsテスト入門」と紙の本の棲み分けについてどう考えているのか

                                                            技術書にありがちな「IT技術は変化するけど、紙の本は更新できない問題」について僕なりの創意工夫を話してきました #DevReljp - give IT a try
                                                          • CIで稀にSegmentation faultが起きてRubyが死ぬ問題と対応 - メドピア開発者ブログ

                                                            CTO室SREの@sinsokuです。 先日、弊社のCIで稀によく Segmentation fault が起きるようになりました。 _人人人人人人_ > 突然の死 <  ̄Y^Y^Y^Y^Y ̄ 調べてみた 最初は気づかなかったけど、画像の右端のダウンロードっぽいアイコンをクリックすると、実行結果のログを全文見ることができます。 [BUG] Segmentation fault at 0x000056529cd6d5e0 ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux] -- Control frame information ----------------------------------------------- c:0059 p:---- s:0312 e:000311 CFUNC :[] c:0058 p:0016

                                                              CIで稀にSegmentation faultが起きてRubyが死ぬ問題と対応 - メドピア開発者ブログ
                                                            • GitHub Actions + CircleCI + AWS CodeDeployによるCI/CD環境にインフラを移行した話 - SMARTCAMP Engineer Blog

                                                              スマートキャンプ、エンジニアの入山です。 前回のブログで、弊社プロダクトのインフラをEC2基盤からECS/Fargate基盤へ移行した話を紹介しました。 tech.smartcamp.co.jp 上記プロジェクトは大規模なインフラの刷新だったこともあり、CI/CDについても従来の仕組みからECS/Fargateの構成に合わせて変更しています。 CI/CDは、安定したプロダクト開発には必須且つ長期に渡って継続的に利用するものなので、いかにストレス少なく効率的に出来るかが重要だと考えています。 また、CI/CDは一度構築してしまうと放置されがちですが、日々の開発チーム全体の生産性にも大きな影響を与えるため、こういった数少ない再構築のタイミングではコストを掛ける価値があるのではないでしょうか。 今回は、弊社のインフラ移行時に実施したCI/CDの改善について紹介したいと思います。 従来のCI/CD

                                                                GitHub Actions + CircleCI + AWS CodeDeployによるCI/CD環境にインフラを移行した話 - SMARTCAMP Engineer Blog
                                                              • Rails 6リリース記念!?Qiitaにいろいろ記事を書きました - give IT a try

                                                                先日、Rails 6が正式にリリースされました。 ついにRails 6が正式リリースされたようです!🎉 Rails 6.0: Action Mailbox, Action Text, Multiple DBs, Parallel Testing, Webpacker by default, and Zeitwerk | Riding Rails https://t.co/pHoJb68B97— Junichi Ito (伊藤淳一) (@jnchito) 2019年8月16日 だから、というわけでもないのですが、Rails関連の記事をいくつか書いてQiitaにアップしています。 Railsアプリのアップグレードの手順 1つ目はRailsアプリのアップグレード(バージョンアップ)の手順です。 永久保存版!?伊藤さん式・Railsアプリのアップグレード手順 - Qiita qiita.com

                                                                  Rails 6リリース記念!?Qiitaにいろいろ記事を書きました - give IT a try
                                                                • モックしないテストも書く話 - STORES Product Blog

                                                                  STORES 予約 でwebアプリケーションエンジニアをやっております。ykpythemindです。 皆さん、Webアプリケーションのテストを書いていますか。 モック(mock)を使っていますか。 今回は自動テスト上で、偽物だけではなく(要所で)本物を使おうよという話を書きます。 想定読者としては主にRuby on Railsを開発しているバックエンドエンジニアを想定しています。 モックとは 今回のモックの定義は以下にしておきます。 *1 実際の外部サービスや内部サービスの代わりをする偽のサービスを作成することです。 ref: https://circleci.com/ja/blog/how-to-test-software-part-i-mocking-stubbing-and-contract-testing/ Rubyでは外部サービスとの接合部で、 RSpecの allow(xx).

                                                                    モックしないテストも書く話 - STORES Product Blog
                                                                  • パーフェクトRails【増補改訂版】を読んで、パーフェクトすごい…って思いました:)|tatsuosakurai

                                                                    著者の1人である すがわらまさのりさん から恵贈賜りました『パーフェクト Ruby on Rails 【増補改訂版】』、とても読みたかった本なので嬉しいです。ありがとうございます! パーフェクトRuby on Rails【増補改訂版】 2020/7/25日発売ですが、店頭に並んでいるところもあるようです。 Railsの基本から実戦レベルの応用、最近のナウいRails環境も書かれており、パーフェクトな内容で、初心者から上級者にもオススメの書籍です:) 「パーフェクト Ruby on Rails」の初版は、2014年7月10日とあるので、約6年ぶりの増補改訂版ですね(Railsのバージョンは、初版で4.0-4.1でしたが増補改訂版では6.0です。月日の流れを感じますね)​。 表紙Rubyを乗せた列車のCG、初版の列車と比べるとだいぶテクノロジーが進化した感じの列車になっていて速そうです。下の方

                                                                      パーフェクトRails【増補改訂版】を読んで、パーフェクトすごい…って思いました:)|tatsuosakurai
                                                                    • Rails開発でやっておくと良かったCI設定集 - STORES Product Blog

                                                                      STORES 予約 でwebアプリケーションエンジニアをやっております。ykpythemindです。 Rails開発で、どのようなアプリケーションでも抑えておくとチーム開発が少し楽になるポイントがあります。今回はいくつか実例を載せながら紹介します。 アプリケーションの設計的な部分や実装には踏み込まず、すぐに導入できます。 あくまでRailsアプリケーションについての記事ですが、他言語やフレームワークを用いていても同様のことができます。 1. シードデータが壊れないようにCIで担保する 新しいメンバーが入って環境構築をしてもらう度にシードデータが壊れており、 db/seeds.rb *1 を直すという作業を何回か経験しています。db/seeds.rbで実行する内容をテスト中に実行しておくとメンテされるようになります。 # db/seeds.rb # 定数データが必要であればここで呼ぶ req

                                                                        Rails開発でやっておくと良かったCI設定集 - STORES Product Blog
                                                                      • 永久保存版!?伊藤さん式・Railsアプリのアップグレード手順 - Qiita

                                                                        はじめに Railsアプリケーションを長く運用していると避けて通れないのがRailsのバージョンアップです。 古いバージョンのRailsは順次サポートの対象から外れていく(=不具合修正やセキュリティ対応がされなくなる)ため、バージョンアップをせずに運用するわけにはいきません。 そこでこの記事では僕・伊藤淳一がRailsアプリのバージョンをアップグレード(アップデート)する手順を紹介します。 この手順はこれまで何度もRailsアプリケーションをアップグレードしてきた僕の知見が詰まった、いわば「秘伝のタレ」的なアップグレード手順です。 想定するRailsアプリケーション この記事で想定しているのは以下のようなRailsアプリケーションです。 開発者1人でもなんとか面倒が見れるレベルの規模(=アップグレードは1人で作業する想定) 趣味で作っているのではなく、外部のユーザーがいるRailsアプリ(

                                                                          永久保存版!?伊藤さん式・Railsアプリのアップグレード手順 - Qiita
                                                                        • “オブジェクト指向”と“テスト駆動開発”は非常に相性がいい 2010年前半におきたツールのムーブメント

                                                                          受け入れテスト駆動開発(ATDD)が2013年からどのように変化してきたかについて、デロイトトーマツコンサルティング合同会社執行役員のkyon_mm氏とBASE BANK株式会社テックリード兼マネージャーの東口氏がトークをしました。全4回。1回目は、ATDDの歴史とkyon_mm氏の試みについて。 ATDDについて8年越しのリプライ kyon_mm氏(以下、キョン):今日のイベントについて説明します。みなさんconnpassでお集まりいただいたと思うんですが、1990年代に広まりはじめたTDD(テスト駆動開発)について、2013年くらいに私がちょっと話をしました。 先日、日本でも有数の優秀なエンジニアたちが集ってプレゼンテーションする「July Tech Festa」というカンファレンスの中で、東口さんがATDD(受け入れテスト駆動開発)のプレゼンテーションをしていたんですね。そのときに私

                                                                            “オブジェクト指向”と“テスト駆動開発”は非常に相性がいい 2010年前半におきたツールのムーブメント
                                                                          • minne iOSの2021年の開発環境 - Pepabo Tech Portal

                                                                            開発言語と主要フレームワーク 95%以上Swiftで、特に古いテストやエンティティはObjective-Cが少しだけあります。新規のものは必ずSwiftで開発していて、残っているObjective-Cは少しずつ減らしています。 使っているSDKのバージョンに関しては、Xcode 12への移行対応が終わっており、近日中に12でビルドしたバイナリーを公開する予定です。 ほぼほぼUIKitですが、いくつかの画面でSwiftUIを使っています。最低対応のSDKはiOS 13なので、LazyStack系やLazyGrid系がまだ使えないのですが、設定周りの画面など、CollectionViewっぽくない画面を今年中にたくさん移行しようと思っています。移行自体は色々考えてプロトタイプを作るなどして、2020年のiOSDCで発表しました。また、UIKitはモダンなAPIを使うように心がけており、例えば、

                                                                              minne iOSの2021年の開発環境 - Pepabo Tech Portal
                                                                            • M1 mac上のDockerコンテナ内でChromiumを動かそうとしてやったこと&やろうとしてること - savanna blog

                                                                              savanna.ioの開発をお手伝いしている masa-iwasaki です。現在進行中の案件で調査が甘いところもあるのですが、表題の件について同じく行き詰まってる or 今後行き詰まる人が居るかもしれないので自分が試行錯誤した結果を共有します。ちなみにsavanna公式ブログでは初の開発エントリのようです。 tl;dr Docker Desktop for Apple silicon では linux/amd64 なDockerイメージではGoogle Chromeが動かない QEMUのバイナリエミュレーションが完璧では無くcore dumpする arm64 Linux向けのGoogle Chromeは存在しない Chromiumを使いたいのだが 最新バージョンのChromiumを使おうとするといろいろある 回避策・解決策の検討 背景 savannaではRailsを利用して作られていて、

                                                                                M1 mac上のDockerコンテナ内でChromiumを動かそうとしてやったこと&やろうとしてること - savanna blog
                                                                              • 【Ruby初心者向け】伊藤さんってなんでそんなにRubyについて物知りなんですか?への回答 - give IT a try

                                                                                はじめに 僕はフィヨルドブートキャンプでメンターをやっています。 その一環として生徒さんが書いたRubyのコードをレビューすることもよくあります。 そんなとき「そこはこんなメソッドが使えますよ」「こう書いた方がシンプルですよ」みたいなコメントを入れると、「なんでそんなにたくさんメソッドを知ってるんですか?」「どうしたら豊富な知識を身につけられるんですか?」という返事が返ってくることがあります。 このエントリではその質問に対する回答をあれこれ書いてみようと思います。 【もくじ】 はじめに 前提として 仕事で毎日コードを書いてるから(コードを書いてる時間が長いから) とことんリファクタリングする リファクタリングに欠かせない、テストコードとgit コードレビューしてもらう / コードレビューする モブプロやペアプロをする 人に教える コラム:自分で自分好みの勉強会を主催してみる 情報をインプッ

                                                                                  【Ruby初心者向け】伊藤さんってなんでそんなにRubyについて物知りなんですか?への回答 - give IT a try
                                                                                • ほぼ独学・未経験者がモダンな技術でポートフォリオを作ってみた【Rails / Nuxt.js / Docker / AWS / Terraform / CircleCI】 - Qiita

                                                                                  ほぼ独学・未経験者がモダンな技術でポートフォリオを作ってみた【Rails / Nuxt.js / Docker / AWS / Terraform / CircleCI】RailsAWSCircleCITerraformNuxt はじめに こんにちは! akiと申します! 当記事はほぼ独学・未経験者がモダンな技術でポートフォリオ(以下PF)を作ってみたので、ご紹介させて頂きたいと思います。 昨今、未経験者がモダンな技術を使用して作成した、PFの作成記事も多く存在するので、何番煎じかにはなってしまいますが、この記事も同じ初学者の方の参考になれば幸いです。 自己紹介 私は22歳・高卒で、現在(2021年3月時点)も工場で製造の仕事を続けております。 そんな私ですが「Webエンジニア」という職種に興味を持ち、2020年4月よりプログラミング学習を開始しました。 今回紹介するPFの作成期間は約3ヶ

                                                                                    ほぼ独学・未経験者がモダンな技術でポートフォリオを作ってみた【Rails / Nuxt.js / Docker / AWS / Terraform / CircleCI】 - Qiita