Software engineering in-the-large: the coordination challenge

Bitrot

The Ambiguity of Real Work

I have no idea what I’m doing

The danger of hidden functional roles

The Power of Framing a Problem

TLA+ is hard to learn (2018)

Root cause of failure, root cause of success

Designing like a joint cognitive system

Dealing with New Kinds of Trouble

Coding as a tool of thought

Battleshorts, exaptations, and the limits of STAMP

How did software get so reliable without proof?

How did software get so reliable without proof?