Michael Snoyman discusses how he discovered functional programming

January 1, 2022
Michael Snoyman is a Haskell expert, here he shares his journey to discovering the language. He will be speaking at Functional Conf 2022

My connection with functional programming started about ten years ago, twelve years ago, I really started to do some kind of searching to find out what the next language was, that I was going to be working and where I felt comfortable producing code, producing commercial code that I could put my name to that I thought this code was going to be reliable. This code was going to work. It was going to be fast enough. And I had been doing Java for quite a few years. I got scared off from Java at some point, decided to start exploring a little bit further, went into PHP, went into Perl, went all over the place, and eventually I found this weird language called Haskell that most people haven't heard of.

And of course, that was alluring because it was different. And they said it was mathematical and I didn't really know what that meant, but that sounded interesting. So I decided to get into it, and I found this language that really appealed to me, and it took a while to get used to it, especially the material at the time, was incomplete. Let's say there was a lot of training material available, and a lot of the concepts that existed in Haskell hadn't really become mainstream. So today the young people today, everyone who is watching this, they're probably already used to this concept of promises and the idea that you can bind one promise to another in JavaScript.

And a lot of people are already familiar with oh, that's like a Monad. That's that thing. But I was terrified of that when I first got started, it was completely different. The world was the wild west of functional programming, so I decided to persevere because I'm a stubborn person and I got into it, and it turned out that I really like this thing.

I think I'm a little unusual in this functional programming side of things, because the thing about functional programming that I like most is not the functional programming. I love the strong static types, the guarantees of safety, that I'm able to get out of the system. And I've tried to design my software, my libraries, to encourage that kind of development, immutability, function chaining composition. All those kinds of things that exist in functional programming are great, and I love taking advantage of them. But the one that always pulls me back in the most is a strong static typing.

I can get along with the people who are not such fans of that. And I'm able to work with the other libraries. That's the part of FP, which isn't technically FP, that I'm a really big fan of.

Don't miss out on Functional Conf 2022


Leave a Reply

Your email address will not be published.

linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram