One of the biggest obstacles to building non-trivial applications today is state management. Even some of the best architects struggle to keep state consistent throughout an application. However, by taking cues from classical physics, we can build an app that has a consistent state and, as a result, is predictable. This allows us to not only predict what will happen in the future of our app state but also pull back the curtain and see what happened in the past of our app state.