Focus: Proko - Figure Drawing Fundamentals

This journal is generated by AI

Fault Injection and Distributed Systems Testing

This week’s reading and hands-on work converged on how to test distributed systems under failure. I finished the Jepsen etcd demo tutorial while the Readwise sync delivered a stack of papers and posts on chaos engineering, lineage-based failure testing, and deterministic simulation.

  • From Chaos to Order — TiDB Testing catalogs a practical fault-injection toolkit: SIGSTOP/SIGCONT for process hangs, renice/setpriority for CPU contention, iptables/tc for network drops and reordering, libfuse/libfiu for I/O faults, and gofail/fail-rs for compile-time injection points. The workflow is hypothesis → inject → analyze.
  • Automating Failure Testing at Internet Scale (Netflix) inverts the search: start from a successful outcome, build a lineage graph of contributing computations, then find minimal fault combinations that would prevent it. Netflix traces requests through services to locate injection points and treats missing error metrics as failures.
  • Sled Simulation Guide offers a lightweight pattern: model nodes as state machines that receive messages and emit outgoing messages per tick. When an invariant breaks, shrink the initial request set to a minimal reproducer.
  • Mostly Deterministic Simulation Testing in Go shows how to make Go tests reproducible by compiling to WASM, seeding the runtime RNG via environment variable, and advancing virtual time only when all goroutines block.
  • CAP Twelve Years Later reframes partitions as time bounds on communication: detect partition, enter partition mode, then recover by merging divergent histories with version vectors.
  • I also started learning FoundationDB Flow—an actor-style concurrency model where Promise/Future pairs and wait() in ACTOR functions underpin the database’s fault-tolerant architecture.

Reviewing Agent Pull Requests

As AI agents produce more code, the review workflow shifts from line-by-line reading to judgment calls only a human can make. Two guides from this week’s sync define a practical checklist.

  • Agent Pull Requests Are Everywhere (Andrea Griffiths): annotate the diff with context before tagging reviewers; self-review is mandatory respect for reviewer time; search for duplicate helpers and block merge until consolidated; trace the critical path end-to-end checking boundary conditions and permission checks on every branch; require a test that fails on pre-change behavior.
  • Red flags to send back: more than five unrelated files touched, purpose not describable in one sentence, empty PR body or missing implementation plan. Ask the author to break it into scoped units or add a structural summary before investing review time.
  • Agentic Code Review (Addy Osmani): separate analysis from execution with a human approval gate for production changes; let automated review run first as a prerequisite, not a replacement; never evaluate model output without human validation.
  • The through-line: agents handle volume, humans supply intent verification, deduplication discipline, and end-to-end correctness tracing.

Grit and Figure Drawing Practice

Personal development reading intersected with deliberate skill-building this week. I synced Grit by Angela Duckworth and continued the Proko Figure Drawing Fundamentals course—measuring techniques, idealistic proportions, and shading light and form.

  • Duckworth’s core formula: achievement = talent × effort². Effort builds skill and makes skill productive; consistency over time beats bursts of intensity.
  • The “naturalness bias” hides how much work excellence requires—we prefer to attribute success to innate talent rather than sustained practice.
  • Goal hierarchy matters: grit is holding the same top-level goal for a long time while being willing to abandon lower-level goals that no longer serve it. The hard part is deciding what not to do.
  • The Proko lessons this week applied the same principle at the craft level—measuring with head units, constructing idealistic figure proportions, then rendering form with light and shadow. Each lesson is a small, repeatable drill that compounds.
  • Weekly plan alignment: close the figure drawing course by copying the demo drawing—treating the final piece as integration of many individual, doable feats.