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

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.

Clojure vs. The Static Typing World

Rich Hickey explained the design choices behind Clojure and made many statements about static typing along the way. I share an interesting perspective and some stories from my time as a Haskell programmer. I conclude with a design challenge for the statically typed world.

Programming Paradigms and the Procedural Paradox

I break down two perspectives (their features and their methodologies) for the three most common paradigms. I also explore why paradigms are so easy to argue about, and what we can do about it.

Read more