Aiming for Correctness

End-to-end arguments, constraints, and trust.

Aiming for Correctness

End-to-End Argument: Low-level reliability (TCP, RAID) is not enough. You need end-to-end checks (e.g., application-level checksums, cryptographic signatures).

Constraint Checking:

  • Uniqueness constraints usually require consensus (linearizability).
  • But if you accept apologies (compensating transactions), you can use faster, looser coordination.

Ethical Responsibility: We are building systems that affect people's lives. We must consider privacy, bias in algorithms, and the societal impact of our "optimization".