Even though it hurts my brain a little bit, learning Scala has been a pleasurable part of my job lately. It definitely isn’t for the faint-hearted but it has taught me a lot about thinking precisely about the topics of immutability and shared state. The functional mindset forces you to think mainly about input and output of functions and this training, I feel, makes me a better programmer even whe