Main Content

Functional Programming
Speaking · Training · Consulting

Eric Normand makes Functional Programming accessible, taking complex academic ideas and making them useful for the software industry.

Eric is a sought-after speaker and trainer. He consults with companies and organizations to bring Functional Programming to their teams. His thoughtful essays help steer the FP conversation.

Recent Essays

The User Wizard Scenario

We start with a Haskell type that models a feature very well. As the feature changes, the data model eventually evolves into something like Clojure’s hash maps. Discussion follows.

3 models of software development as a factory

Agile software development came from borrowing processes and ideas from manufacturing. Is software engineering like factory work? I examine three metaphors of software engineering as a factory.

A Model of Interceptors

I’ve been gearing up for what I think will be a fun and fruitful project. I wanted to review some of the fundamental abstractions we use in Clojure for building web applications, and see if I can’t find something super robust for building on top of. The “classical” model is Ring, which defines Adapters, Middleware, […]

Clojure Error Messages are Accidental

I’ve recently shifted my thinking about Clojure error messages. It is more useful to think of them as non-existent than to think of them as bad. We end with the role Spec can play in improving error messages.

Read more