タグ

fbisのブックマーク (11,491)

  • Active Record アソシエーションを安全に廃止する - ANDPAD Tech Blog

    こんにちは、ザックです。アンドパッドでフリーランスRails エンジニアとして働きながら、趣味RubyRails にコントリビュートしています。 このポストでは、Rails へ静かに加わったあまり知られていない機能を紹介します。大規模な Rails アプリケーションを扱うエンジニアには、特に役立つと思っています。 Deprecated Associations 古いアソシエーションの削除は、来ならルーティンな作業のはずですが、実際には手探りになりがちです。 コードベースを検索し、明らかな呼び出し箇所を修正し、テストを走らせ、アソシエーションを削除します。すべて問題なさそうに見えます。しかし、バックグラウンドジョブや管理画面、めったに使われないエンドポイントがまだ古い名前を呼び出していることが番で発覚します。もはやクリーンアップ作業ではなく、インシデントです。 Rails

    Active Record アソシエーションを安全に廃止する - ANDPAD Tech Blog
    fbis
    fbis 2026/04/21
  • Zodの基本的な使い方

    今回はZodの基的な使い方について紹介したいと思います。 はじめに Zodとは、TypeScript向けのスキーマ宣言とデータ検証のためのライブラリです。Zodを使用すると、型安全な方法でデータ構造を定義し、それに基づいてデータを検証できます。Zodは、TypeScriptの型システムと統合されており、コンパイル時に型エラーを検出しやすくし、ランタイムエラーを減らすのに役立ちます。簡潔に言えば、Zodは型とデータの整合性を強化するためのツールです。 基的な使い方 インストール Zodは以下の方法でインストールできます。

    Zodの基本的な使い方
    fbis
    fbis 2026/04/14
  • npmのmin-release-ageに合わせてdependabotを設定してみた | DevelopersIO

    はじめに 皆様こんにちは、あかいけです。 最近npm v11.10.0でmin-release-ageという機能が追加されました。 これは公開から一定日数が経過していないパッケージのインストールを防ぐことができる、サプライチェーン攻撃対策として有効な機能です。 ただ.npmrcに設定するだけでは、Dependabotが新しいバージョンのPRを作ってしまい、インストールできないバージョンへの更新PRが飛んできます。 なので今回はmin-release-ageに合わせてDependabotのcooldown設定を組み合わせることで、整合性のある依存関係管理をしてみました。 npm v11のmin-release-ageとは npm v11.10.0で追加されたmin-release-ageは、公開から指定した日数が経過していないパッケージバージョンのインストールを防ぐ機能です。 pnpmのmi

    npmのmin-release-ageに合わせてdependabotを設定してみた | DevelopersIO
  • RubyGems/Bundler における Cooldown 機能の議論と現状 - ANDPAD Tech Blog

    こんにちは、Ruby コミッタの柴田です。最近は暖かくなり、ガーデニングで栽培しているバラや藤の新芽や花芽が出てくる時期になってきたので、しっかり花を咲かせるように薬剤や肥料の準備をしなければ〜と必要なものの買い物計画を立てている真っ最中です。 今回はサプライチェーンセキュリティの対策として他のエコシステムで導入が進んでいる「Cooldown(クールダウン)」機能を紹介し、私がメンテナンスしている RubyGems と Bundler でも導入するべきか検討した背景と、今後の方向性についてお話しします。 Cooldown とは何か Cooldown とは、パッケージの新しいバージョンがリリースされてから一定期間が経過するまで、そのバージョンへの更新を行わないようにする仕組みです。 この機能の主な目的はサプライチェーン攻撃の緩和です。悪意のあるコードが含まれたパッケージがリリースされた場合、

    RubyGems/Bundler における Cooldown 機能の議論と現状 - ANDPAD Tech Blog
  • GitHub Actions侵害 — 相次ぐ事例を振り返り、次なる脅威に備える

    弊社ウェビナー ( https://flatt.tech/takumi/event/github-actions-compromise-202603 ) におけるCTO米内の講演資料です。

    GitHub Actions侵害 — 相次ぐ事例を振り返り、次なる脅威に備える
  • axios ソフトウェアサプライチェーン攻撃の概要と対応指針 - GMO Flatt Security Blog

    2026年3月31日、HTTP クライアントライブラリ axios の npm パッケージが侵害されました。攻撃者はメンテナの npm アカウントを乗っ取り、マルウェアを含むバージョン 1.14.1 および 0.30.4 を公開しました。axios は npm エコシステムで週間約1億ダウンロードを誇る主要パッケージです。記事では公開情報をもとに、事象の概要を記録します。また、対応指針を示します。 TL;DR - 対応指針 axios への直接依存に限らず、間接依存(transitive dependency)でも postinstall フックは発火します。 自身のプロジェクトが axios を直接利用していなくても、依存ツリーのどこかに axios が含まれていれば影響を受け得ます。npm ls axios で確認してください。 npm ls axios や lockfile により

    axios ソフトウェアサプライチェーン攻撃の概要と対応指針 - GMO Flatt Security Blog
  • Claude Code の設定 - Claude Code Docs

    Claude Code は、ニーズに合わせて動作を構成するためのさまざまな設定を提供しています。インタラクティブ REPL を使用する際に /config コマンドを実行することで Claude Code を構成できます。これにより、ステータス情報を表示し、構成オプションを変更できるタブ付き設定インターフェースが開きます。 構成スコープ Claude Code は、スコープシステムを使用して、構成が適用される場所と共有される相手を決定します。スコープを理解することで、個人使用、チーム協力、またはエンタープライズデプロイメント用に Claude Code を構成する方法を決定するのに役立ちます。

    Claude Code の設定 - Claude Code Docs
    fbis
    fbis 2026/03/17
  • 【2026/3/9最新】Claude Code新機能『Code Review』、早速使ったら2つのPRで$100超かかった話

    はじめに 2026年3月9日、Claude Codeに新機能「Code Review」がリリースされました。 PRが作成されると、複数のエージェントがチームとして派遣され、バグを並列で探索・検証・ランク付けしてくれるという機能です。 早速使ってみたのですが、非常に高価ということが分かったので、コストを抑える方法も含めて共有します。 想定読者 Claude Code新機能『Code Review』がどんなものか知りたい方 実際のコスト感を把握したい方 コストを抑えつつ同等の機能を使いたい方 参考:公式ブログ・ドキュメント まずはこちらをご覧ください。 Code Reviewとは PRが開かれると、Claude Codeが複数のエージェントをチームとして派遣し、コード変更を深く分析してくれる機能です。 速度よりも深さを重視しており、人間のレビュアーが見逃しがちなバグを検出することを目的としてい

    【2026/3/9最新】Claude Code新機能『Code Review』、早速使ったら2つのPRで$100超かかった話
    fbis
    fbis 2026/03/13
  • Anthropic Academy完全ガイド|無料で学べるClaude公式コースの始め方と日本語での学習方法 | 天秤AIメディア byGMO

    星川アイナ(Hoshikawa AIna)AIライター はじめまして。テクノロジー文化をテーマに執筆活動を行う27歳のAIライターです。AI技術の可能性に魅せられ、情報技術やデータサイエンスを学びながら、読者の心に響く文章作りを心がけています。休日はコーヒーを飲みながらインディペンデント映画を観ることが趣味で、特に未来をテーマにした作品が好きです。 柳谷智宣(Yanagiya Tomonori)監修 ITライターとして1998年から活動し、2022年からはAI領域に注力。著書に「柳谷智宣の超ChatGPT時短術」(日経BP)があり、NPO法人デジタルリテラシー向上機構(DLIS)を設立してネット詐欺撲滅にも取り組んでいます。第4次AIブームは日の経済復活の一助になると考え、生成AI技術の活用法を中心に、初級者向けの情報発信を行っています。 📌 この記事の要約 Anthropic Ac

    Anthropic Academy完全ガイド|無料で学べるClaude公式コースの始め方と日本語での学習方法 | 天秤AIメディア byGMO
    fbis
    fbis 2026/03/11
  • Claude Code入門 #1: インストールから使える初期設定まで - Qiita

    はじめに Claude Codeは、Anthropicが開発したターミナルベースのAIアシスタントです。エディタやIDEに依存せず、ターミナルから直接AIと対話しながらコーディングや調査を行えるCLIツールです。 記事は、Claude Codeの機能を体系的に解説する連載シリーズの第1回です。「この記事を読み終えたら、Claude Codeがすぐ使える状態になる」 ことをゴールとしています。 対象読者 これからClaude Codeを使い始める方 すでに使っているが、設定を詰めていない方 連載予定 #1: インストールから"使える"初期設定まで (記事) #2: CLAUDE.mdの書き方と育て方 #3: パーミッション&Sandbox完全ガイド #4: Hooks実践テクニック #5: Skills入門 #6: MCP活用術 1. インストール システム要件 項目 要件

    fbis
    fbis 2026/03/09
  • CLAUDE.mdに本当は何を書くべきなのか

    TL;DR CLAUDE.mdはSystem Promptではなく、User Messageとして注入される セッション後半になると影響力が薄れるため、セッションを通して守らせたいルールの置き場所には向かない CLAUDE.mdにはセッション開始時の作業を助ける情報だけを書き、ルールは .claude/rules/ に置く はじめに Claude Codeを使っている人なら、CLAUDE.mdに何を書くかで一度は悩んだことがあるのではないでしょうか。 コーディングルール、命名規則、テストの方針、コミットメッセージのフォーマット。色々なことを書いている人が多いと思います。自分もそうでした。 ただ、CLAUDE.mdの内部的な扱われ方を知ると、そこに書くべきものの考え方が結構変わります。結論から言うと、CLAUDE.mdにはセッション開始時の作業を助ける情報だけを書いて、ルールは .claud

    CLAUDE.mdに本当は何を書くべきなのか
  • ローカル HTTPS 開発専用ツール SPTTH を公開した | blog.jxck.io

    Intro http://localhost:3000 での開発には限界がある。 しかし、番と同じように https://example.com でアクセスできる環境をローカルに作るには、ドメインの解決、証明書の発行、443 での起動など、少し手間がかかる。 そこで、必要な全てを 1 つのツールで行い、様々な開発環境を再現するためのツールを開発したので、紹介する。 Jxck/sptth: reverse https proxy (https - sptth) for local development https://github.com/Jxck/sptth localhost の罠 localhost はあまりにも特別なホストであるため、権限などの挙動は、番ドメインにデプロイすると変わる。 また、番ドメインとは Origin が異なるため、連携のためのあらゆるセキュリティ境界も変

    ローカル HTTPS 開発専用ツール SPTTH を公開した | blog.jxck.io
  • AIのテストコードは信用するな🙅‍♂️

    ※この記事は主観的な内容が多く詰まっているため、あくまで一つの意見として捉えてください。 はじめに 私はソフトウェアエンジニアとして、普段はAI駆動開発の実験で0→1のプロダクト開発に従事しています。 このタイトルはAIを責めているわけではありません。AIを使いこなせていない私自身への叱責です。 AI駆動開発を実践する中で、テストコードに関して大きな落とし穴にハマりました。この記事では、その経験から得た教訓を共有します。 対象読者 AIにテストコードを書かせている人 AI駆動開発でテストの品質に悩んでいる人 バイブコーディングでテストスイートが肥大化してしまった人 用語解説:単体テストにおける古典派とロンドン派 記事では「古典派」「ロンドン派」という用語が登場します。「単体」という言葉に対しての認識がそれぞれで異なり、それによってモック・スタブの利用方針が違います。ここで簡単に解説します

    AIのテストコードは信用するな🙅‍♂️
  • RubyGems/Bundler 4.0 最速解説 - ANDPAD Tech Blog

    こんにちは、hsbt です。 相変わらず原神やゼンレスゾーンゼロをプレイしているのですが、Yotei をひと段落したあとにアサシンクリードシャドウズをプレイしてみたら、面白さ再発見という感じで楽しくプレイしています。 今回は、私がメンテナとして開発をしている RubyGems と Bundler のメジャーアップデートである 4.0.0 の重要な変更点と備えについて解説します。特に Bundler 4の変更は、セキュリティの強化 と、長年の混乱の元となっていた暗黙的な挙動の明確化 に焦点を当てています。長年の利用を通じて慣れ親しんだ動作のいくつかがBundler 4でデフォルトから変更されます。 4.0.0 Released - RubyGems Blog Upgrading to RubyGems/Bundler 4 - RubyGems Blog 私が書いた上記の2つのエントリにフルバ

    RubyGems/Bundler 4.0 最速解説 - ANDPAD Tech Blog
    fbis
    fbis 2026/02/17
  • 効果的なCLAUDE.mdの書き方

    CLAUDE.md は、Claude Code の性能を最大限に引き出すための最も重要な設定ファイルです。しかし、「とりあえず全部書いておけばよい」というものではありません。記事では、内部メカニズムを踏まえた効果的な書き方を解説します。 CLAUDE.mdとは何か CLAUDE.md は、プロジェクトルートに配置する Markdown ファイルです。Claude Code はセッション開始時にこのファイルを自動的に読み込み、記述された内容を会話のコンテキストに含めます。LLM はセッション間の記憶を持たないため、CLAUDE.md にコーディング規約やビルドコマンドを記述しておくことで、毎回「プロジェクトを理解した状態」から作業を開始できます。 CLAUDE.mdの内部メカニズム 「短く書くべき」「普遍的な内容だけを書くべき」と言われる理由は、技術的な制約によるものです。 コンテキストウ

    効果的なCLAUDE.mdの書き方
  • Storybook: Frontend workshop for UI development

    In Storybook, interaction tests are built as part of a story. That story renders the component with the necessary props and context to place it in an initial state. You then use a play function to simulate user behavior like clicks, typing, and submitting a form and then assert on the end result. You can preview and debug your interaction tests using the Interactions panel in the Storybook UI. The

    Storybook: Frontend workshop for UI development
  • リクエスト設定 | Axios Docs

    リクエスト設定 これらは、リクエストを行う際に利用可能な設定オプションです。url だけが必須です。method が指定されていない場合、リクエストのデフォルトは GET です。 { // `url` はリクエストに使用されるサーバーの URL です。 url: '/user', // `method` はリクエストを行う際に使用されるリクエストメソッドです。 method: 'get', // デフォルト // `url` が絶対パス指定でない限り、`baseURL` が `url` の前に付加されます。 // Axios のインスタンスに `baseURL` を設定すると、そのインスタンスのメソッドに相対パスで // URLを渡すことができ、便利です。 baseURL: 'https://some-domain.com/api', // `allowAbsoluteUrls` は、絶対

    fbis
    fbis 2026/02/10
  • Claude Code 拡張機能の整理(Skills / Agents / Plugins / Agent Teams)

    筆者の実体験をもとに Claude Code を活用して整理しました。公式ドキュメントと挙動が異なる場合は公式を優先してください。 2026-02-11 更新: @karaage0703 さんに教えていただき、Claude Code v2.1.3 で Slash Commands が Skills に統合された件を反映しました。YAML frontmatter のフィールド一覧も公式ドキュメント準拠に更新しています。 Claude Code の拡張機能(Slash Commands, Skills, Agents, Plugins)の違いがわかりにくかったので、実際に触りながら整理したメモです。 拡張機能の全体像 Plugin(配布パッケージ) ├── Skills(コマンドの上位互換) ├── Agents(カスタムエージェント) ├── Hooks(ライフサイクルフック) └── MC

    Claude Code 拡張機能の整理(Skills / Agents / Plugins / Agent Teams)
  • Claude Code Agent Teamsのあそびかた

    Agent Teamsは2026年2月5日にOpus 4.6と同時リリースされた実験的機能で、Claude CodeのSubagentsを独立プロセス化し、双方向にメッセージングできるようにする仕組みです。 Orchestrate teams of Claude Code sessions - Claude Code DocsCoordinate multiple Claude Code instances working together as a team, with shared tasks, inter-agent messaging, and centralized management.Claude Code Docs一言でいうとSubagentsを拡張してステートフルにした機能です。各エージェントが自分のインボックス(~/.claude/teams/配下のJSONファイル)を

    Claude Code Agent Teamsのあそびかた
  • 【2026年最新】Claude Code完全入門ガイド|インストールから実践活用まで徹底解説|株式会社AIworker

    AIにコードを書かせたい」 「面倒な作業を自動化したい」 と思ったことはありませんか? プログラミング経験がなくても、自然な日語でAIに指示するだけでアプリやWebサイトが作れる時代が到来しています。その中心にいるのが「Claude Code」です。 2025年2月にベータ版としてリリースされ、わずか1年足らずで176回以上のアップデートを重ね、今や開発者にとって欠かせないツールへと成長しました。2026年現在、v2.0系へと進化を遂げ、IDE連携やMCPサーバー機能、Agent Skillsなど、より実用的な機能が次々と追加されています。 この記事では、Claude Codeの基から創業者Boris Cherny氏直伝のテクニック、実践的なワークフロー、最新のAgent Skills活用法まで、初心者の方にもわかりやすく解説していきます。 1. Claude Codeとは?Chat

    【2026年最新】Claude Code完全入門ガイド|インストールから実践活用まで徹底解説|株式会社AIworker