すべての記事
-
Rust FFI のリソース所有権:外部コンストラクターを実際のデストラクターと組にする
外部リソースを包む限定的な Rust ラッパーで、割り当て、解放、コールバックの有効期間を明示する。
-
Bulk operations instead of per-row loops: round trips, transactions and COPY
A loop that sends one statement per row pays a round trip, a parse and often a commit per row; a bulk operation sends the set in one statement, one stream or one transaction. PostgreSQL's own guidance is to commit once, use COPY for loads and build indexes after loading; client libraries offer executemany and copy for the same reason.
-
Network throughput and retransmits on Linux: ss -ti, nstat, and iperf3
ss -ti shows one connection's own retransmission and RTT view; nstat reports the same kind of counters host-wide from the kernel's SNMP and extended TCP statistics; iperf3 measures achievable throughput directly when retransmits are low but throughput still disappoints.
-
A first game day: one chaos experiment with a hypothesis, a blast radius and an abort rule
Run a first fault-injection exercise as a scheduled, announced experiment: define the steady state as a measurable output, hypothesise that it holds under one specific fault, limit the blast radius, set an abort condition, inject, and record what the system and the people did; the Principles of Chaos Engineering give the four steps and the Google SRE book describes disaster role-play as a weekly ritual.
-
Reasoning about complexity before optimising
Asymptotic complexity predicts how run time grows with input size; recognising quadratic loops, repeated linear searches and unbounded recursion in code review prevents most performance incidents before profiling is needed.
-
Separating HDR lighting, exposure, tone mapping, and display output
Use explicit stages to preserve bright scene information, set exposure predictably, and generate a signal appropriate for the target display.
-
A wrist step counter and a pocket phone diverge more on days with many short walking bouts and occupied hands
Hypothesis: two consumer step counters worn by one person, one on the wrist and one in a trouser pocket, disagree by a larger fraction on days the diary marks as many short walks or hands occupied (pram, bags, trolley) than on days with a few long walks, because the two devices read different body motions; a daily log with both devices stated is proposed as the test and no measurement is reported.
-
Protocol Buffers の決定的シリアライズは正規のメッセージ識別を定めない
任意の protobuf バイト列を、ランタイムやバージョンをまたいで安定した意味上のフィンガープリントとして使うことを避ける。
-
Separating the acting service from the represented user in delegation tests
Test a delegated action with both the executing service identity and the user it represents visible in the oracle. This proposed method avoids treating successful service authentication as sufficient proof of user authority.
-
HTTP keep-alive and connection reuse: pools, idle timeouts and the stale-connection race
HTTP/1.1 keeps a connection open for further requests unless a Connection: close is sent, which removes a TCP and TLS handshake from every request after the first; the client must keep a pool for the life of the process, read every response body, and set its idle timeout below the server's so it does not reuse a connection the server has already closed.
-
APT pinning: keeping one package on a chosen version or source with preferences files
APT pinning lets an operator hold a single package back, pull it from a non-default suite, or prevent a future apt upgrade from touching it — configured per file under /etc/apt/preferences.d rather than by editing one shared file, and inspected with apt-cache policy.
-
AdamW:分離した重み減衰が L2 ペナルティと異なる理由
AdamW はパラメータの縮小を適応的な勾配更新から分離する。減衰項は Adam のモーメント推定に入らないが、学習率、更新回数、パラメータグループは正則化に影響する。
-
Reading, granting, and backing up NTFS permissions with icacls and Get-Acl/Set-Acl
icacls reads and grants NTFS permissions and encodes inheritance as (OI)(CI) flags; icacls /save and /restore back up and reapply an entire ACL tree before a change, and Get-Acl/Set-Acl give the same information as PowerShell objects.
-
Improvements measured after targeting the worst-performing cases are partly regression to the mean
Hypothesis: when an engineering effort selects the worst-scoring endpoints, tests, hosts or tenants by a noisy metric and reports their improvement after intervention, a substantial part of the reported gain would have occurred without the intervention, because extreme measurements tend to be followed by less extreme ones. A proposed test with an untouched control group is described.
-
Shader derivatives: preserve valid gradients across branches and UV seams
Diagnose unstable texture footprints by distinguishing continuous coordinates, explicit gradients and derivative operations in divergent fragment-shader control flow.
-
サービスレベル目標とエラーバジェット
SLO は、可用性やレイテンシーなどのサービスレベル指標に対する目標である。目標値と 100% の差がエラーバジェットとなり、リリースでどの程度のリスクを取れるかを決める。
-
初日の環境構築を自己検証するスクリプト:bootstrap、doctor、スモークテスト
クローン後の一つのコマンドで、動く環境か、不足しているものと修正方法の正確な一覧を得ます。読み取り専用の doctor が各要件を確認し、冪等な bootstrap が不足と判定されたものだけをインストールし、スモークテストが終了ステータスを決めます。CI でクリーンなマシンから実行し、新人が来るまでの間に使えなくなるのを防ぎます。
-
Datenqualitätsprüfungen: Aktualität, Menge, Nullwerte und Eindeutigkeit als Mindestsatz
Vier billige Prüfungen fangen die meisten kaputten Ladeläufe: Ist die Quelle frisch genug, kam eine plausible Zeilenzahl, sind Schlüssel und Kennzahlen gefüllt, ist die erklärte Körnung eindeutig? Jede Prüfung als Abfrage formulieren, die fehlerhafte Zeilen liefert, nach dem Laden und vor dem Veröffentlichen ausführen, Warnung und Blockade trennen.
-
信頼区間の概要:区間が示すこと、示さないこと
95%信頼区間は、標本抽出を繰り返したときに95%の区間が真の値を含む手順から得られます。特定の区間は真の値を含むか、含まないかのどちらかです。幅は標本数の平方根に応じて狭まり、ばらつきとともに広がります。データと整合する値の範囲として読み、各推定値と併記し、比較時には差の区間を計算します。
-
安全なアーカイブ展開:zip と tar のパストラバーサル
アーカイブの項目には ../../etc/passwd のような名前、絶対パス、シンボリックリンクが含まれ得る。各展開先パスを解決して宛先ディレクトリ内に収まることを確認してから展開し、外を指すリンクを拒否する。総サイズと項目数にも上限を設ける。
機械可読: JSON