First, what are they? And why they are important? What do they allow us to do, and what problems do they shield us from? After this talk, you'll inevitably fall in love with pure functions and immutable objects. We'll see how to implement them in Java, in the most geek ways possible. Then, we'll write some code to see their value in terms of refactoring and debugging. Oh, and we'll also have Lombok and records along the way, plus lots of fun while tasting a bit of "a senior developer's night-life".