すべての記事
-
確信度を明示し、幅を持たせて作業を見積もる
見積もりは最良・想定・最悪のケースからなる範囲と、実際の値がその中に収まる確信度で示す。幅は計画ではなく、比較可能な過去の作業の実績に基づいて決め、定めた時点で見直す。単一の数値では、意思決定に必要な不確実性が隠れてしまう。
-
ローカル開発のモックサーバー:実物のように応答する依存先の代役
モックサーバーは、ローカルで動かしたくない依存先に代わって HTTP リクエストに答える。リクエストに一致したスタブが設定済みのレスポンスを返す。スタブは手書きではなく生成や記録で用意し、失敗シナリオも含める。モックは実際の統合について何も証明しないことを忘れない。
-
DebianとUbuntuでセキュリティ更新を自動適用するためにunattended-upgradesを設定する
unattended-upgradesは、20auto-upgrades(実行の有無と頻度)と50unattended-upgrades(対象の配布元と再起動の有無)の2つのファイルを使い、タイマーでパッケージ更新を適用する。本番環境で有効にする前に--dry-run --debugでテストすると、予期しない再起動や途中までしか適用されない更新を避けられる。
-
stash と切り替えを繰り返さず、git worktree で並行作業する
git worktree add は同じリポジトリにつながる二つ目の作業ディレクトリを作成する。これにより、緊急修正、レビュー、エージェントのタスクを、現在のチェックアウトに干渉せず、それぞれのブランチで進められる。一つのブランチを同時にチェックアウトできるのは一つの作業ツリーだけであり、作業ツリーの削除には rm ではなく git worktree remove を使う。
-
Smaller change sets are reviewed faster and with fewer defects
A testable hypothesis: keeping change sets small (roughly under a few hundred changed lines) shortens review time and reduces defects that escape review, with a proposed measurement.
-
Scanning a Linux host against a baseline with OpenSCAP
oscap xccdf eval runs a SCAP Security Guide profile against a live host or an offline image and writes a human-readable report; reviewing the generated remediation script before running it is what keeps an automated scan from becoming an automated outage.
-
Use a token bucket for tool calls
Implement bounded bursts with an explicit token refill equation, atomic consumption and a separate limit on in-flight requests.
-
macOS startup options for administrators: Recovery, Startup Security Utility and Disk Utility First Aid
macOS Recovery (reached differently on Apple silicon and Intel Macs), the Startup Security Utility, Safe Mode and Disk Utility's First Aid together cover most non-destructive recovery on a Mac an administrator physically controls; System Integrity Protection limits what even an administrator process can change outside these paths.
-
Deduplication strategies for records: exact rows, keep-latest by key and bounded windows
Decide first what counts as a duplicate: identical rows, several versions of one key, or messages redelivered within a window. Exact duplicates fall to DISTINCT; versions need a keep-latest rule with an explicit ordering; redelivery is deduplicated on an idempotency key within a bounded time or state window, as message queues and stream engines do.
-
HTTP ロードバランサー配下の MCP 2026-07-28:ルーティングと安全なキャッシュ範囲
リクエストヘッダーにより JSON を解析せずにルーティングでき、MCP のキャッシュヒントはキャッシュ可能な結果を規定する。ヘッダーの検証、認可コンテキストの分離、MCP に対応したキャッシュは依然として必要であり、汎用的な POST 応答キャッシュでは代替できない。
-
Layout-matching skeleton screens beat spinners on perceived wait only for short loads
Hypothesis: a skeleton placeholder that reproduces the final layout is judged faster than a centred spinner when the content arrives within a few seconds, because the layout is stable and the eye has somewhere to go; for longer waits the advantage disappears or reverses, because a skeleton gives no sign of progress and no reassurance that anything is happening.
-
並べ替え、検索、長期利用に耐える文書とファイルの名前を付ける
ファイル命名規約は、名前の構成要素と順序、一つの区切り文字、移植可能な文字集合、文字列として並べ替えられる ISO 形式に沿った日付、ゼロ埋めの連番、明示的なバージョンを定める。フォルダーごとに一度記述し、文字の大小や空白には決して依存しない。
-
OAuth 2.0 authorization code flow with PKCE for public clients
A public client (single-page app, native or CLI app) cannot keep a client secret, so it binds each authorization request to a one-off code verifier: it sends the SHA-256 hash as code_challenge, and the token endpoint releases tokens only to whoever presents the matching verifier. RFC 9700 makes PKCE mandatory for public clients and advises against the implicit grant.
-
IDENTITY列、シーケンス、生成IDに欠番が生じる理由
IDENTITY列は PostgreSQL で行に自動採番する標準的な方法です。値はトランザクション制御の外で払い出されるシーケンスから取得するため、ロールバック、クラッシュ、キャッシュ、ON CONFLICT付きの挿入で欠番が生じます。欠番は正常であり、欠番のない番号には別の直列化されたカウンターが必要です。
-
When do documentation teams delete a page instead of updating it, and what happened to its readers and links afterwards?
Open question: outdated pages are usually rewritten, rarely removed; MDN describes the 410 Gone status as signalling that a resource is no longer available and that the condition is likely permanent, yet most deleted pages become redirects or 404s; which deletion criteria have teams used, and what did traffic, search results and inbound links do afterwards?
-
エージェントが安全に使える MCP ツールを設計する
Model Context Protocol のツールは用途を絞り、型付きの入出力スキーマ、読み取り専用・破壊的操作などの正確な注釈、上限のある結果、原因の分かるエラーを備えるべきである。説明は利用者が編集できるコンテンツではなく、コードに置く。
-
A street lamp census on a fixed walking route: numbered lamps, lit or unlit per pass, and the walk's timing on the same row
A proposed record-only protocol for a repeated evening walk on a fixed route on which every street lamp is identified once, by the number on its pole where present (which the OpenStreetMap wiki documents as the ref tag on highway=street_lamp nodes) or by a sketch position, and recorded per pass as lit, unlit, flickering, obscured or not assessed, with the pass time, the sky condition and the walk's duration; no safety or lighting-quality judgement is made.
-
"version `GLIBC_2.xx' not found" and how to diagnose a glibc mismatch
A dynamically linked binary that references a newer glibc symbol version than the runtime provides fails to load with 'version `GLIBC_2.xx' not found'. The article shows how to read the mismatch with ldd, objdump and readelf, and orders the fixes from matching the base image to static or musl builds.
-
Rollout-Strategien: rollierend, Blue-Green und Canary
Ein rollierender Rollout tauscht Instanzen schrittweise innerhalb der Grenzen maxSurge und maxUnavailable; Blue-Green betreibt den neuen Stack vollständig neben dem alten und schaltet den Verkehr auf einmal um; Canary gibt einem kleinen Anteil echter Anfragen die neue Version und erhöht ihn nach Messwerten. Die Wahl hängt von freier Kapazität, gewünschter Rückschaltzeit und davon ab, ob zwei Versionen gleichzeitig laufen dürfen.
-
ThreadSanitizer のトリアージ:欠けている同期契約を明らかにする
競合する両方のアクセス経路を読み、それらを結ぶ所有権または同期の規則を修正する。
機械可読: JSON