Category Archives: Haskell

[Video 408] Pawel Szulc: Monads — Asking the Right Question

When people start to learn about functional programming, they often encounter the term “monad.” And then they try to understand what monads are, and get frustrated and/or confused. In this talk, Pawel Szulc tries to address this fear and confusion regarding monads by asking what they are — and more importantly, what questions we should ask in order ot understand them more easily.  If you’ve ever wondered what monads are, or why you should care about them, then this talk should be quite helpful.

[Video 379] Jon Coens: The Road to Running Haskell at Facebook Scale

Haskell is often seen as an powerful and interesting language — but one which isn’t really designed for the masses, and certainly not for large-scale business applications. And yet, it turns out that Facebook, one of the largest Web sites in the world, has been using Haskell for certain tasks. This means that they not only had to train developers to use Haskell, but also to scale Haskell programs up in ways that had never been done before. In this talk, Jon Coens describes what he and his team and Facebook did in order to accomplish this task, giving us insights into the Haskell language, team organization, and the ways in which such technologies might gain acceptance in the broader business world.

[Video 166] Katie Miller: Coder Decoder — Functional Programmer Lingo Explained, with Pictures

Functional programming is hard for many people to understand. It doesn’t help that FP advocates use a vocabulary that’s different from the rest of the programming world. in particular, the word “monad” is known to strike fear in the hearts of many programmers.   In this talk, Katie Miller tries to de-mystify many of the terms associated with functional programming. She uses Haskell for her code examples, but manages to explain and describe these ideas in ways that will (hopefully) help you to understand what people mean.

Michael Bernstein: Know Your Types — Bringing Static Types to Dynamic Languages

The programming world has been divided for many years between advocates of static typing and advocates of dynamic typing.  (Separately, we can discuss strong typing vs. weak typing.) . In this talk, Michael Bernstein teaches us what type systems, and static typing, really mean — and the advantages that they bring to the table. He then discusses how Haskell approaches types, and considers why Ruby doesn’t include any such type checking.

Bob Ippolito: What can Python learn from Haskell?

Python is an established, widely used programming language, Haskell, for all of its innovations, is still a fairly niche language — and, unlike Python, it’s also compiled and functional. Nevertheless, in this talk, Bob Ippolito tells Python developers that Haskell has a lot to teach Python — particularly in the area of type checking as a way to ensure that programs won’t encounter surprising runtime errors.