This is an old revision of the document!
Table of Contents
Robust-first computing
Introduction
The traditional approach to computing is called serial determinism: The machine operates sequentially, doing one thing at a time, step by step by step (serial) — and the output of each step is absolutely determined by the state of the machine when the step began (deterministic).
Machines using serial determinism are easy to reason about and they have been a remarkable, world-changing success in the marketplace, but they ultimately scale poorly and offer poor security.
An alternative to serial determinism
There are other ways to compute, that offer different — and perhaps more attractive — tradeoffs, but which as yet have received scant research and development attention. While serial deterministic machines were growing by leaps and bounds, that was understandable, but now those traditional architectures are increasingly struggling to grow further.
If we try to view it as a computing machines, note how different a living organism is from a serial deterministic computer. Deterministic machines are 100% completely repeatable; living organisms rarely do anything the exact same way twice. Deterministic machines will crash, seize-up, or otherwise misbehave when the least anything goes wrong inside them; living organisms, by contrast, can suffer grievous injury and yet survive, handle the immediate situation, and get away long enough to heal up and live on.