Mehdi Akiki

Writing archive

Everything published under Writing, newest first. Each entry is labelled as part of an investigation, an article or reference. Short engineering notes have their own archive.

  • Published on

    Reference · Derived state

    Last-Write-Wins Is a Data-Loss Strategy

    When two systems edit the same record, last-write-wins is the easy answer. It also throws away data on purpose. Here is when that is fine, and when it is a trap.
  • Published on
    When you really delete a row, other systems can never learn that it is gone. A tombstone is a delete you can see. Here is why it matters and how to use one.
  • Published on

    Reference · Derived state

    Cursor Pagination vs Offset Pagination

    Offset pagination is easy to write and breaks in two ways: it gets slow, and it skips or repeats rows when the data changes. Cursor pagination fixes both. Here is the difference.
  • Published on

    Reference · Interrupted execution

    Why Exactly-Once Delivery Is a Myth

    Everybody wants exactly-once delivery. Over a network it is impossible. Here is why, and the trick that gives you the same result in practice.