Rich Hickey has previously discussed value, identity and state – but outside the context of the specifics of how we write code on the JVM. How do these concepts correlate to the programming constructs we use to write code in Java and Scala, and how do we minimize or mitigate the impact of concurrency with them. This talk will be an accessible exploration of the JVM Heap, thread stacks and concurrency primitives on the JVM and how to compose multi-threaded code in Scala.