8c819c30c4c09816.tex
1: \begin{abstract}
2:   Several popular best-practice manifestos for IT design and
3:   architecture use terms like `stateful', `stateless', `shared
4:   nothing', etc, and describe `fact based' or `functional'
5:   descriptions of causal evolution to describe computer processes,
6:   especially in cloud computing. The concepts are used ambiguously and
7:   sometimes in contradictory ways, which has led to many imprecise
8:   beliefs about their implications.  This paper outlines the simple
9:   view of state and causation in Promise Theory, which accounts for
10:   the scaling of processes and the relativity of different observers
11:   in a natural way. It's shown that the concepts of statefulness or
12:   statelessness are artifacts of observational scale and causal bias
13:   towards functional evaluation. If we include feedback loops,
14:   recursion, and process convergence, which appear acausal to
15:   external observers, the arguments about (im)mutable state need to be
16:   modified in a scale-dependent way.  In most cases the intended focus
17:   of such remarks is not terms like `statelessness' but process
18:   predictability. A simple principle may be substituted in most cases
19:   as a guide to system design: the principle the separation of dynamic
20:   scales.
21: 
22:   Understanding data reliance and the ability to keep stable promises
23:   is of crucial importance to the consistency of data pipelines, and
24:   distributed client-server interactions, albeit in different ways.
25:   With increasingly data intensive processes over widely separated
26:   distributed deployments, e.g. in the Internet of Things and AI
27:   applications, the effects of instability need a more careful
28:   treatment. 
29: 
30:   These notes are part of an initiative to engage with thinkers and
31:   practitioners towards a more rational and disciplined language for
32:   systems engineering for era of ubiquitous extended-cloud computing.
33: \end{abstract}
34: