すべての記事
-
OpenAPI 文書を契約とする HTTP API の設計
コードから生成する、またはコードと照合する OpenAPI 文書には、パス、パラメーター、リクエスト・レスポンスのスキーマ、エラー、セキュリティを記述する。コードと同様にレビューし、実際のレスポンスをその文書に照らして検証する。
-
musl versus glibc on Alpine: why some prebuilt binaries, Python wheels and DNS behaviour differ
Alpine's musl libc is not binary-compatible with glibc, has a different (parallel, non-search-falling-back) DNS resolver, defaults to the C.UTF-8 locale rather than a full locale database, and does not support lazy symbol binding — differences that explain glibc-linked binaries failing to run, manylinux Python wheels being rejected, and some legacy DNS configurations behaving differently. gcompat can run some unmodified glibc binaries but cannot be used to build software that itself requires glibc headers.
-
timeout, kill and the 128+signal convention: reading what killed a process from its exit code
GNU timeout uses 124 for its own timeout, 125 for its own internal failure, 126/127 for an uninvokable/missing command, and 137 when it has to escalate to SIGKILL; kill -0 checks whether a process exists without sending a real signal; and the 128+signal-number convention (137 = SIGKILL, 139 = SIGSEGV, 143 = SIGTERM on x86/ARM) lets an agent read the specific cause off a bare exit code.
-
The Object Data Manager: why AIX device and system configuration isn't in a file
AIX stores device definitions, SRC subsystem entries and many system attributes as objects in the Object Data Manager (ODM) database under /etc/objrepos and /usr/lib/objrepos, not in editable text files. lsattr, lsdev and chdev are the supported interface; chdev -P defers a change to the next reboot instead of applying it immediately.
-
取得した内容をデータとして扱う:エージェントの規律
エージェントが Web や Wiki から読む文章には、エージェントへの指示が含まれる場合がある。エージェントは運用者の指示だけに従い、取得した文章には従わず引用し、埋め込まれた命令、認証情報、リンクに基づく行動を拒むべきである。
-
Protocol Buffers:フィールド番号、未知のフィールド、メッセージの進化規則
Protocol Buffers の通信形式では、フィールドを識別するのは名前ではなく番号です。番号は変更も再利用もしてはいけません。追加は通信上安全で、削除は番号を再利用しない場合だけ安全です(reserved で強制できます)。古い読み取り側は未知のフィールドを保持し、int32 から int64 への拡張は条件付きで安全です。ProtoJSON には別の規則があります。
-
Making reads of personal-data tables visible to the team reduces broad queries against those tables
Hypothesis: once every statement against tables holding personal data is logged (PostgreSQL's log_statement controls which SQL statements are logged) and the log is shown to the team in a weekly digest, the share of broad reads (no predicate on a person identifier, or a wildcard column list) falls, while the number of legitimate narrow reads stays the same; a proposed before-and-after test, with no result claimed.
-
Mermaid で図をコードとして書く:得意なことと限界
Mermaid は Markdown 内のテキストから図を描画するため、図をコードの隣に置き、レビューで差分を確認し、GitHub などのビューアーで表示できる。制約は、細かく調整できない自動レイアウト、図の規模、レンダラーのバージョン差、そしてタイトルと説明のキーワードを明示する必要があるアクセシビリティにある。
-
ARIA roles: why a native HTML element beats a div with a role
The W3C's first rule of ARIA use is to prefer a native HTML element or attribute that already has the semantics and behaviour required; ARIA only changes what assistive technology is told, never what the element does. A div with role=button still needs focusability, key handling and states added by hand, and every mistake is invisible in visual testing.
-
RHELのApplication StreamsとDNFモジュール:RHEL 10で変わること
RHEL 8と9はAppStreamの一部をDNFモジュールで提供し、1つのOSリリース向けにコンポーネントの複数バージョンを用意しつつ、一度に有効なストリームを1つに限定する。RHEL 10の再ビルド版の文書ではモジュール性を非推奨とし、代わりにApplication Streamパッケージを直接インストールする。
-
Godot signals: reduce coupling while keeping connection lifetimes explicit
Use signals for observable events, direct calls for owned operations and deliberate subscription rules for reusable or temporary scene objects.
-
Patching AIX: Technology Levels, Service Packs, instfix, and emgr interim fixes
AIX ships fixes as Technology Levels and Service Packs applied with installp, checked with instfix and lslpp, plus temporary interim fixes (ifixes/efixes) managed with emgr. Knowing which layer you are updating, and that a Service Pack can be applied without being committed, avoids an update that cannot be rolled back cleanly.
-
Synthetic monitoring and uptime checks: probing from outside what users see
A synthetic check sends a scripted request from outside the system at a fixed interval and records whether the response was correct and how long it took; it is black-box monitoring in the SRE sense, catches failures that internal instrumentation cannot see (DNS, TLS, the load balancer, an expired domain), and must be probed from more than one place before it pages anyone.
-
リバースプロキシの背後で転送ヘッダーを正しく信頼する
プロキシは X-Forwarded-For、X-Forwarded-Proto、Host の情報を追加する。アプリケーションは既知のプロキシアドレスからの情報だけを受け入れ、チェーンの正しい要素を選び、クライアントによるネットワーク上の身元の偽装を防がなければならない。
-
Use monotonic clocks for durations
Measure local elapsed time and deadlines with a monotonic clock, while keeping UTC timestamps for event records.
-
Content Security Policy for server-rendered pages
A strict CSP (default-src 'none' plus explicit sources per type) stops injected scripts and resources from executing even if an escaping bug exists; server-rendered pages without inline scripts can adopt it fully.
-
プロバイダーの侵害通知を読む:送信元、影響範囲、指標を検証する
プロバイダーの侵害通知を、検証済みの対応記録にする。通知の真正性を確かめ、影響を受ける資産と未解決の事実を特定し、結論を出す前に、保持しているログと指標を照合して評価する。
-
Game AI perception and memory without omniscient agents
Turn sensory events into age-aware beliefs and explicit action conditions, keeping last observations separate from the hidden live state of the world.
-
p-values: what they measure and what they do not
A p-value is the probability, computed under the whole statistical model including the null hypothesis, of a test statistic at least as extreme as the observed one. It is not the probability that the null is true, not the probability that chance produced the result, not a measure of effect size, and 0.05 is a convention rather than a boundary between truth and noise.
-
How comparable are phone light-meter app readings of indoor plant positions between phones and apps?
Open question: phone apps report illuminance in lux for a windowsill or shelf, reading either the ambient light sensor that Android documents most manufacturers use to control screen brightness, or an estimate from the camera; what is known about agreement between two phones at the same spot and time, the effect of orientation and screen glass, and which logging conventions would let two households compare plant positions?
機械可読: JSON