This Is Not a Monad Tutorial by John Azariah

December 7, 2022


As a new functional programmer, I struggled with a lot of new terminology, intimidating mathematics, strange concepts – and virtually every discussion I had made me feel like my 2 decades of experience as a professional software engineer hadn’t prepared me for FP.

Now, after many years of working with FP in the industry, and having brought many people along the journey, I have some learnings about how to communicate some foundations of functional programming to professional software engineers – starting with why functional programming matters, how to get started, how to be effective, and how to improve over time.

So, we’ll talk about that today. We’ll explore how functional programming comes naturally with a few different perspectives and a few fundamental concepts, and hopefully look at programming in a new light. There will be a little mathematical notation, but nothing that should leave a professional software engineer stymied!

John Azariah Principal SDE, Microsoft
John is a frequent speaker at conferences on various topics of expertise including Quantum Computing, Functional Programming, Cloud Computing, and Software Engineering. He has over three decades of experience in writing software, designing software systems, and leading teams to deliver software products, services and platforms all over the world. He currently works for Microsoft in Australia for the AKS team, and was previously on the Microsoft Quantum team, where he was one of the designers of the Q# programming language.
https://www.linkedin.com/in/johnaz/
https://twitter.com/johnazariah

Check out more from the MeetUp Func Prog Sweden. Func Prog Sweden is the community for anyone interested in functional programming. At the MeetUps the community explore different functional languages like Erlang, Elixir, Haskell, Scala, Clojure, OCaml, F# and more.