Writing on software design, company building, and the computer industry.

All of my long-form thoughts on programming, leadership, blockchains, cybersecurity and more, collected in chronological order.

Systems thinking is still the work

Generated code changes the cost of syntax. Engineers still need to reason about effects, evidence, boundaries, and recovery.

What passing tests leave unresolved

A review exercise for separating fixture coverage from the assumptions a change adds to an integration.