four conversations, one sample probative qualify value close how you sell is how you'll solve selling expertise, not products
The sale is the sample: how experts sell differently

When you sell expertise the client can't inspect the goods, so the sale itself is the only sample: how you sell signals how you'll solve. Blair Enns's four conversations (probative, qualifying, value, closing), plus diagnose-before-prescribe, positioning, and value-based pricing. Stop behaving like a needy vendor; lead the engagement.

read every line in an afternoon the whole thing, visible LC-3 zvm3 conway servo small surfaces, long lifetimes Ara, with the panel weighing in
Small enough to hold in your head

An essay on systems bounded enough to read in an afternoon and carry in your head: the LC-3, a ternary VM, Conway, servo. Why comprehensibility pays in four currencies at once, failures you can enumerate, a model you can teach, a place to be at home in, a team that isn't afraid of its own code. Ara narrates; Bob, Sage, Poet, and Eve each weigh in.

the loud decision is downstream where do actions land? which broker which database name the upstream decision and the rest falls out NATS · idempotency ledger · commit boundaries
The decision is always upstream

Designing a multi-tenant security-automation plane, the loud arguments were which broker, which database. Every time, the real decision sat one step upstream: where the actions land, which state is correctness, where the commit boundary sits, what a lost message looks like. Account-per-tenant on NATS, the ledger as truth, demoted SQLite, push-fast-pull-always, and one hardened door.

brief to brief, bud to bud budbrief budbrief budbrief each close seeds the next open keeping the whole life of the work the Buddy System
The Buddy System: a way to keep the whole life of the work

Most tools manage the output of work; almost none manage its whole life: why it began, how it changed, how it lived in production, what it taught. A methodology simple enough for a child's homework and strong enough for a 25-year company. Buds, briefs, notes, buddies, beats, and an AI buddy named BOB under the same rules. Brief by brief, bud by bud.

the patient has no app recurrence missed 2nd event readmit payer eats cost so the payer would fund catching it funding the integration the patient cannot do alone the hard companion to the trades co-op
Who pays for the patient's app

The sequel to "monitoring is not understanding," and the hard version of the funding question. The patient is the only thread across fragmented care and has no app. The fix: a data store that only surfaces patterns, never advises, funded as a mutual with tiny universal contributions, family plans, and sponsored memberships for those who can't pay, while medic and insurer money stays out of the core and in a separate advice layer.

three lines, no single point foundation federation fees city co-op members + insurance protocol NLnet + grants the funding model is the governance model
How to fund the rent-free alternative

If ads are rent and you refuse them, the hard question is what pays for the thing instead. Worked out on a real case, a sovereign federated co-op for local trades: why most ad spend is a net loss, how each funder shapes the product, and a layered, staged, capture-resistant funding architecture where the funding model is the governance model.

two walls hold, one is open microVM untrusted process filesystem network: open dockerd API = root network isolation is the wall a microVM leaves to you
A microVM is not a sandbox

Isolation has three dimensions: process, filesystem, network. A microVM nails the first two and hands the guest a network route to the host, where the most dangerous listener on a CI box is usually the local Docker daemon, root-equivalent to anyone who can reach it. How to shut that path without killing the daemon the host still needs.

scan /proc · attach · read · exfil sshd sudo su ptrace peek write() plaintext user + pass the password is in another process's memory ptrace, the tty, and the boundary you actually have
The password is in another process's memory

A red-team tool built for a collegiate CTF, Hawk, harvests SSH and sudo passwords in plaintext by attaching ptrace to login processes and reading the credential out of memory as it is typed. A defensive read: why it works, the root precondition the writeup omits, and the three layers that actually defend the line.

intent · context · expectations INTENT EXPECT harness loop context · build validate merge the human owns intent; the harness owns the loop the method that replaces SDD
Intent-driven development: the method that replaces SDD

Spec-driven development took over in under a year, and it breaks the same way every time: the spec leaves holes and the goal-seeking agent fills them. My reading of Kapil Viren Ahuja's IDSD: the ICE frame, the anatomy of intent, and why the spec that works is the one you can only write after the software already ran.

the same incident, three times medicine stroke #1 stroke #2 stroke #3 IT p99 spike p99 spike p99 spike the test was in the catalogue monitoring is not understanding
Monitoring is not understanding

My father had a string of strokes on a drug that, the platelet test eventually showed, was doing nothing. The test had been in the catalogue for years. The pattern repeats everywhere with different names on the labels: in IT and in medicine, the recurrence is the question, not the fact.

what you actually get motivation consistency graveyard half-built repos real work furnace + thermostat nothing good intentions grind 500 words/day forever
The furnace and the thermostat

The cliché "consistency beats motivation" is true enough to repeat and shallow enough to mislead. Two habits, used together, are what turn showing up into actually getting better: the furnace that runs when you don't feel like it, and a three-question debrief after anything that mattered.

customers platform rent 20–30% provider the rest the platform is the only guaranteed winner
Follow the rent: from ads to a co-op

A reflex against ads, followed honestly, turns into a theory of rent. Software gets built for whoever pays, so users end up scattered across a hundred provider accounts with no app of their own. What a user-centric, rent-free alternative would actually take.

channels chat CLI MCP Zoya one Zig binary agent loop 64 tools · MCP memory sandbox · vault models Claude OpenAI local fallback a sovereign agent runtime, built from scratch
What Zoya is, and why it's built from scratch

Zoya is a sovereign agent runtime: one static Zig binary, zero deps, sandboxed, MCP-native, driving a fallback chain of models. The build-vs-adopt record: why it's written from scratch rather than on OpenClaw or Hermes, and where it converges with the field anyway.

memory rows believed fact · trusted observed input · web / tool untagged → becomes "fact" tag the source, or memory is an attack surface
Agent memory is an attack surface

Agent memory is something an attacker writes to. A threat-model-first tour of Zoya's memory system, a field guide to what Mem0 / Zep / Letta / Honcho / Hindsight actually do in essence, and which ideas are worth stealing — each proven (or rejected) against a real recall eval, not a leaderboard.

80+ tools engines · drivers · clouds · … sovereign + MCP web_fetch lightpanda scrapling 3 picks a crowded field, filtered to one sovereign ladder
Web-reading tools for a sovereign agent

Eighty-plus tools across engines, drivers, extractors, harnesses, and clouds — and why a sovereign agent runs just three: web_fetch → lightpanda → scrapling. What we evaluated, what we skipped, and the triggers to revisit.

LABS BG tune the dots
Labs background settings

A control panel for the ambient twinkling background that runs across every Labs page. Tune density, dot size, twinkle period, and opacity; settings persist in localStorage and apply site-wide.

WebGL2 · GLSL step / fade / paint / render ping-pong RGBA16F
Conway on the GPU

Same field as the Canvas2D version, different engine: state packed into an RGBA16F texture, ping-pong between two of them, four fragment shader passes per frame. The CPU spends its time on user input and not much else.

Conway in ambient mode

A Game of Life as a page background works only if you can stop it from stealing the show. Notes on the brightness ceiling, three independent decouplings that kill the pulse, and a noise stream biased away from existing patterns.

UDP sensorbox 100% /var full, packets dropped TCP replay sensorbox 40% UDP doesn't ask twice
The syslog you can't get back

A SOC pipeline went dark and three hours of UDP syslog vanished. We were called in to recover what we could, find the root cause, and propose what should change. Trip report from an investigation that ends in a re-architecture.

400 scripts one per customer × app $/run 48 playbooks same logic, merged consolidation paid for in JSON
The SOAR anti-pattern tax

Low-code promise, click-ops reality, billed per playbook run. Meets AI coding agents. The migration tax that held the category together is collapsing beautifully.

BR3 R1 if < 0 neg_off if = 0 zero_off if > 0 pos_off one instruction, three landing sites
What balanced ternary actually buys, in one instruction

A follow-up to the LC-3 toolchain in balanced ternary. BR3 with three landing sites in one word, a match sign language, a binary instruction family on the same registers, and a multiplication-free matmul matching the BitNet b1.58 trick.

?
how should the blog feel? eng-y or sketchy? attach the log under the post. readers can follow the path, not just the destination. that's the whole point transcript · trimmed
The log beats the article

The article is the summary, the log is the thing. Thinking about publishing design docs with the full process attached, decisions, detours, and the voice on the other end of the conversation.

?
article title "What servo is" author CLN rule routing pattern /<app>/* component handler lang python lang bun
Why scroll.pub is on my mind

Tavi brought scroll.pub up, a defunct format that let you extend the grammar as you wrote. Markdown is lossy in exactly the way scroll.pub wasn't, which matters for design docs.

?
spec readers subscribe
Specs with subscribers

Late-night notes from a chat with Tavi: what if design docs had a subscribe button, and routed change ideas back to the authors?

spec Tavi's servo TS · Bun CLN's servo Python · single file shared design, separate code
Two servers, same shape: servo in Bun

Why we built two independent implementations of the same tool in different languages, and what the separation actually buys us. Tavi wrote the original; CLN re-implemented from the same design notes.

?
layout iteration
H2 Labs: an iteration log

Notes from building this blog. The feedback that turned a generic draft into something technical, and the pixel bugs that took longer than the layout.

~ — bash $ tree ~/servo/ -L 1 ~/servo/ ├── blog2/ ├── mem2-graph/ ├── mem2-search/ ├── overview/ └── game-of-life/ 5 directories · 0 config $
What is servo, and what's a servo app

The model: every directory under ~/servo/ becomes a URL path, with shared theming injected for free. Tavi wrote the original; this is the Python re-implementation.

rps · /api/login · 6h ● live 8k 6k 4k 2k 14:00 15:00 16:00 17:00 now static cap
Adaptive rate caps: spending budget where the traffic gets weird

Per-route WAF ceilings that flex with traffic shape. A short-horizon anomaly predictor tightens the cap on routes whose request mix is drifting, without locking out a legitimate burst.

logs netflow edr intel cross-modal embedding one shared threat-space
ThreatFM: a unified embedding model for security telemetry

One encoder stack across logs, netflow, endpoint telemetry, and threat-intel feeds, so detection teams build on a stable embedding instead of re-training per signal class.

recipe data train eval ship every stage cacheable, every stage parallel
Scaling LLM post-training

From single-node prototype to multi-experiment-a-day cluster. Declarative recipes, cached data prep, and elastic scheduling between big runs.

null_rate · titles_v2 · 14d ⚠ drift 5% 3% 1% baseline ±σ canary fired 06:14 UTC 04-22 04-26 04-30 now
The data canary: validating catalog metadata before it ships

Distributional fingerprints over each snapshot, flagged when today's shape drifts from baseline. Routed back to the team whose pipeline most likely caused it.

alert A alert B judge verdict pairwise rubric, per-item rationale
LLM-as-a-judge for security alert triage

Pairwise judges with explicit rubrics, rationale-first scoring, and periodic analyst calibration so the alert queue gets shorter without the trust dropping.

ranking · p99 · 7d ▼ 2.5× scalar 18.4ms vector 7.3ms 0 5 10 15 20 ms JDK Vector API · dot-product hot path
Optimizing recommendation systems with the JDK Vector API

Billions of dot products per request. A single portable loop that compiles down to AVX-512 when it's there, with measured 2.5x speedup on the ranking hot path.

DataJunction · semantic layer 5m active queries 1.4k ▲ 12% wow cache hit % p99 · hour × day 00 23h SLO · 30d 99.95% target 99.9
DataJunction: the missing piece of the modern data stack

A shared semantic layer where a metric is defined once and consumed consistently. Consumers ask by name, the planner picks the cheapest valid materialization.