Grokking Simplicity

Taming complex software with functional thinking
Eric Normand
  • April 2021
  • ISBN 9781617296208
  • 592 pages
  • printed in black & white

placing your order...

Don't refresh or navigate away from the page.
print book Receive a print copy shipped to your door + the eBook in Kindle, ePub, & PDF formats + liveBook, our enhanced eBook format accessible from any web browser. $32.49 $49.99 you save: $17 (35%) pBook + eBook + liveBook
Additional shipping charges may apply
FREE domestic shipping on orders of three or more print books
Grokking Simplicity (print book) added to cart
continue shopping
go to cart

eBook Our eBooks come in Kindle, ePub, and DRM-free PDF formats + liveBook, our enhanced eBook format accessible from any web browser. $25.99 $39.99 you save: $14 (35%) 3 formats + liveBook
FREE domestic shipping on orders of three or more print books
Grokking Simplicity (eBook) added to cart
continue shopping
go to cart

The most insightful and intuitive guide to clean and simple software. I recommend this to all software developers.

Rob Pacheco, Vision Government Solutions
Look inside
Distributed across servers, difficult to test, and resistant to modification—modern software is complex. Grokking Simplicity is a friendly, practical guide that will change the way you approach software design and development. It introduces a unique approach to functional programming that explains why certain features of software are prone to complexity, and teaches you the functional techniques you can use to simplify these systems so that they’re easier to test and debug.

about the technology

Developers rightly fear the unintended complexity that infects most code. This book shows you how to write software that keeps complexity close to its inherent minimum. As you write software you should distinguish between code that alters your system’s state, and code that does not. Once you learn to make that distinction, you can refactor much of your state-altering “actions” into stateless “calculations.” Your software will be simpler.

about the book

The book also teaches you to solve the complex timing bugs that inevitably creep into asynchronous and multithreaded code. In ad­vanced sections of the book you learn how composable abstractions help avoid repeating code and open up new levels of expressivity.

what's inside

  • Patterns for simpler code
  • Powerful time modeling approaches to simplify asynchronous code
  • How higher-order functions can make code reusable and composable

about the reader

For intermediate and advanced developers building complex software. Exercises, illustrations, self-assessments, and hands-on examples lock in each new idea.

about the author

Eric Normand is an expert software developer who has been an influential teacher of functional programming since 2007.

FREE domestic shipping on orders of three or more print books

This book is a must-read for taming complex software. One of the most engaging titles in years.

Michael Aydinbas, EXXETAAG

A great resource for learning functional thinking and the practical programming tech­niques derived from it. I can recommend to my colleagues with confidence.

Joel Luukka, Geniem

An indispensable guide to identifying and conquering complexity.

Bryan Miller, Petrolitix
RECENTLY VIEWED