Like most people, I started my career by learning object-oriented programming, but for the last 15 years I have been doing functional programming. In this talk, I'll explain why learning functional programming has completely changed the way I design and write my programs. I believe that, thanks to functional programming, my code is easier to understand, less buggy, and more testable. To demonstrat