Escaping Flatland: A Retrospective
A common theme in all my software developments is recognizing that true state is continuous, relational, and non-local. Therefore this blog's "tongue-in-cheek" title referring to the Flatland: A Romance of Many Dimensions novella. Building upon this geometric analogy, classical software is very similar to what we humans perceive as "flat normality", that is a Euclidean geometry. Continuity in a Euclidean geometry are dualities (e.g. volume integral vs surface integral). In classical software, continuity is also expressed as dualities (e.g. commit-request vs commit-commit phases in a DB). But what if your geometry is not "flat", not Euclidean? Then maybe your continuity has more than two parts! In physics, for example, three mode continuity exist to express flow or topological continuity. What about in software? And how do we even define "non-Euclidean" software designs? To express what is a non-Euclidean" software design, we need menti...