Learn functional programming
without the jargon

From the educator who's taught thousands of developers: a practical guide that makes functional programming click using real-world examples and zero intimidating terminology.

Author of weekly functional programming insights, read by 5,000+ developers worldwide

Available now in print, Kindle, and audiobook formats

I’d recommend getting the book. It’s one of the most well structured instructional books I’ve ever seen. I wouldn’t be surprised if this becomes required reading for students.
John Funk profile picture
John Funk

Why this book surprises both beginners and experts

Most functional programming books drown you in academic terms like monads and functors. As someone who's taught FP to working developers since 2007, I take a different approach in Grokking Simplicity—teaching you to think functionally using simple concepts you already understand: Actions, Calculations, and Data.

This proven framework has helped thousands of developers write cleaner, more maintainable code without learning intimidating terminology or switching programming languages. This book distills years of teaching experience from my courses, newsletter, and consulting work into a comprehensive guide that bridges academic theory with industrial practice.

For Beginners

You'll discover that functional programming isn't intimidating academic theory—it's a practical approach to solving everyday coding problems. The book's Actions/Calculations/Data framework makes concepts immediately understandable.

For Experienced Developers

Even seasoned programmers find fresh perspectives in the advanced sections on timeline coordination and stratified design. The book's industrial focus shows how FP directly improves engineering outcomes.

Key Benefits

  • Practical techniques proven in real consulting engagements
  • 500+ diagrams developed through years of teaching experience
  • Real-world examples from actual business applications
  • Immediate applicability to your existing codebase

See the jargon-free approach in action

From 15+ years of teaching functional programming to working developers

I've taught functional programming to developers at companies from startups to Fortune 500s since 2007, helping teams adopt FP practices that improve their bottom line. Through my newsletter, courses, and consulting work, I've refined an approach that makes functional programming accessible to working developers without academic intimidation.

15+ years of functional programming experience
Author of weekly functional programming newsletter
International conference speaker and workshop leader
Proven track record helping real companies improve code quality

Explore my functional programming articles and newsletter archive to see the teaching approach that shaped this book.

Photo of Eric Normand

What you'll learn from 550 pages of battle-tested guidance

Actions, Calculations & Data Framework

Learn the foundational concepts that make functional programming accessible and practical for any codebase.

Timeline Diagrams

Master visualization techniques for understanding concurrent and asynchronous code behavior.

Stratified Design

Apply architectural principles that create maintainable, scalable systems using functional approaches.

What the community is saying

Fantastic book. I think it's the best book on functional programming for programmers of any level. It uses the concepts of Actions, Data, and Calculations to reframe programming. I think it’s brilliant. I loved reading early drafts of your book — I would have called it a book on how to write valuable features that is liberated from the tar pits of astonishing amounts of complexity.
Gene Kim, author of The Unicorn Project profile picture
Gene Kim, author of The Unicorn Project
Thanks! I really enjoyed your book. Great job!
Yehuda Katz, founder of EmberJS profile picture
Yehuda Katz, founder of EmberJS
Can recommend this book without reservation. And it's not even finished yet.
Neil Gall profile picture
Neil Gall
Really enjoying Grokking Simplicity by @ericnormand . The way the book is constantly changing and highlighting sections of code make me feel it would make a great @scrimba course.
Nate Clark profile picture
Nate Clark
Just finished #GrokkingSimplicity. It's not a book, it's a journal that every software engineer should give a shot. Every single page will change your mind, from computer thinking to how to show people what to do next. Thank you @ericnormand.
Alex profile picture
Alex
Hats off to @ericnormand and his book Grokking Simplicity. It's been a journey to discover how ideas I thought I knew well are dissected and explained beautifully step by step. This book made me a better code writer. Thanks!
Alan Andrade profile picture
Alan Andrade
I just bought a very good book on #Functional #Programming called "Grokking Simplicity" written by @ericnormand. It's really an awesome book. I am going to finish it during my Christmas holidays. ✌️
FeStack profile picture
FeStack
Just finished chapter 7 of Grokking Simplicity by @ericnormand and I'm certain now that buying this book would be one of my best choices of 2021! Highly recommended even if you are not doing FP.
Khanh Le profile picture
Khanh Le
Grokking Simplicity by @ericnormand is one of the most interesting books I've read about shaping your mind to think in a functional way. Every JavaScripter should read this book. Thank you @ericnormand , Eric! ♥️♥️♥️
Eduardo Vedes profile picture
Eduardo Vedes
Eric, I've read the six first chapters and it's amazing how you approached design principles. It teach me something I was looking for a long time. Let it grow, and write more about.
Pietro Verdile profile picture
Pietro Verdile
For me it is great book so far. You're explaining stuff usually not available in programming books.
Grzegorz Laszczyk profile picture
Grzegorz Laszczyk
Excellent book! Highly recommended to anyone who wants to improve their programming skills.
Rares Portan profile picture
Rares Portan
I recently came across your book and I think it is simply great. For quite some time I have been struggling with introducing some clean code principles to my teammates. It was not easy to find some concrete examples on the web. Your book just hits the sweet spots on multiple levels and it pretty much contains all I want my teammates to know. Also, kudos to the heads-first-like writing style. Love it so far. Keep up the great work!
Tomislav Hoborka profile picture
Tomislav Hoborka
I’ve found Grokking Simplicity to be a great, pragmatic introduction to solving real-world problems with “functional thinking”. All the code is JavaScript and it tries to walk you through how you might solve common, everyday business problems with a more functional approach. All without getting bogged down with terms like “monad” or “functor”. This book (along with Domain Driven Design made Functional, mentioned elsewhere) are both great resources for getting introduced to “useful” functional programming.
Adam Kreczko-Lenner profile picture
Adam Kreczko-Lenner
The teaching, guidance and wisdom from Grokking Simplicity by @ericnormand are the main reason I am about to reason and refactor my old messy code into this beauty. Thank you again, for the great book!
Kuan profile picture
Kuan
“Grokking Simplicity” by @ericnormand a functional programming #book that is practical for software engineering and focused on software design? WHAT? Really? I need to read this now! 😬
Yeradis P. Barbosa Marrero profile picture
Yeradis P. Barbosa Marrero
#GrokkingSimplicity is excellent beyond words. I finally took the time to go through it, making notes, absorbing as much as I could. There’s nothing I’ve read recently quite so helpful as the chapters from 13 onward. (Still have 17, 18, and 19 to go.) This is really good.
Ron Lusk profile picture
Ron Lusk
If you're looking for a book to read that's widely applicable to whatever you're doing in technology then this book should jump up to the top of your list!
Tim Visher profile picture
Tim Visher
CANT WAIT to dig into the final published version of Grokking Simplicity. Been reading the MEAP versions and for sure this has made me rethink the way I approach problem solving and system design. Kudos and props to @ericnormand. Read this. You won't regret it!
John Kreiter profile picture
John Kreiter
This book has changed how I write code in profound ways. Highly recommend it.
Thomas Eckert profile picture
Thomas Eckert
Eric Normand is so good at what he does that I've had multiple dreams where he teaches me Clojure and functional programming. I got his book, Grokking Simplicity, on my desk right now. He's so good.
APandaExplosion profile picture
APandaExplosion
Got my hands on "Grokking Simplicity" by @ericnormand and this book is such a revelation. You learn functional programming using practical scenarios and you relate it with what you do in your day to day work. Strongly recommended for anyone who needs great text on FP.
Naiyer Asif profile picture
Naiyer Asif
If you're interested in learning more about functional programming and how to apply it in day-to-day software development, highly recommend checking out @ericnormand's book Grokking Simplicity!
Anjana Vakil profile picture
Anjana Vakil
I’d recommend getting the book. It’s one of the most well structured instructional books I’ve ever seen. I wouldn’t be surprised if this becomes required reading for students.
John Funk profile picture
John Funk
If functional programming gives you a headache or you need to sell functional concepts to your team, Grokking Simplicity by ⁦ @ericnormand ⁩ is for you.
Michael Nisi profile picture
Michael Nisi
Reading Grokking Simplicity by @ericnormand, and I really enjoy the clean introduction to the concept of recursion. It was one of the things that took a bit to wrap my head around back when I started coding.
Tomasz Tarczyński profile picture
Tomasz Tarczyński
Enjoying Grokking Simplicity by @ericnormand! Great book for those unfamiliar with functional programming.
Logan Lowder profile picture
Logan Lowder
One of the better additions to the thinking programmer's bookshelf.
Simon Belak profile picture
Simon Belak

Ready to simplify your approach to functional programming?

Join thousands of developers who've discovered a practical path to cleaner, more maintainable code.

Get FREE ebook editions with print purchase from Manning