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: