Å·±¦ÓéÀÖ

Jump to ratings and reviews
Rate this book

Algebra-Driven Design

Rate this book
A how-to field guide on building leak-free abstractions and algebraically designing real-world applications.

340 pages, ebook

13 people are currently reading
186 people want to read

About the author

Sandy Maguire

3Ìýbooks192Ìýfollowers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
11 (47%)
4 stars
9 (39%)
3 stars
2 (8%)
2 stars
1 (4%)
1 star
0 (0%)
Displaying 1 - 9 of 9 reviews
Profile Image for Sandy Maguire.
AuthorÌý3 books192 followers
March 4, 2021
What a great book! The author must be really smart.
Profile Image for James Sinclair.
3 reviews18 followers
August 31, 2021
This book isn’t perfect. It has typos and occasionally introduces functions that aren’t defined until a chapter later. In the ePub version, chapter references don’t link to the chapters. The references have numbers, but the chapters don’t. And worst of all, you need to have some Haskell experience to read it. The author really does try to explain the basics of Haskell syntax, but then they throw the reader in the deep end—assuming you’ll be comfortable with idioms that aren’t obvious. This book isn’t for beginners.

And yet� I’m giving it a five star rating. Because the writing is good and the content is so very valuable. I’ve been looking for something to help me to bridge the gap between functional programming and software architecture for a long time. I had a strong intuition that Denotational Design would solve that problem. But I could never find any references that would break it down into a process I could apply to any problem. This book is the guide I’ve been looking for. I sincerely hope more people read it and apply it to their software engineering practice.
Profile Image for Matt Diephouse.
92 reviews39 followers
October 15, 2020
This was a fantastic, eye-opening read.

I don’t work with Haskell, although I’ve gotten reasonably comfortable reading it. Some of the examples were challenging to work through. But I learned a lot reading this.

The main revelation was QuickSpec, a Haskell library that can discover laws for your algebra and generate property tests. There’s a paper on it, so you can read that separately if you like (it’s interesting). But Algebra Driven Design shows how a library like this can be used to develop software.
9 reviews1 follower
January 16, 2021
Would require some good understanding of some basic functional programming language better be Haskell, other than that it goes straight to the point. And most of the time you'll be like "ooooh that's a great idea to use, Imma take that.". Now it's time to practice that in actual personal projects. Would definitely recommend to any functional programmer.
1 review1 follower
April 29, 2024
Imo most prophetic software book I’ve ever read, seriously. And very pragmatic. My favorite book ever written�. The big ideas could probably be expanded outside of programming. Tho I’ve read mostly CS books and probably should branch out into literature.
Profile Image for pluton.
300 reviews10 followers
June 22, 2022
Based on the title, the book describes the process of designing software features with respect to algebras, here not in the meaning of the standard math algebra, but in terms of algebraic laws that you define/infer about the design yourself. This is very much related to denotational design and is easier to understand if you have some experience with Haskell's algebras of monoids, functors, monads, etc. The book goes through two examples of different complexity, and I quickly got lost in the laws after some time � which is fine with me since it's impossible to understand everything on the first read. I don't know if it's the easiest book to understand the idea, but I like how it describes the process step by step, some suggestions, creating a basic implementation, using QuickSpec to test laws and generate QuickCheck property tests, which can then test a more optimized and complicated implementation.
32 reviews
January 6, 2022
Interesting as it brings a new way of thinking about how to model applications. The first example of a geocaching app is a bit poorly chosen, but the second example gets the idea across way better. Don't expect an easy read but it is thought provoking. It helps to know a bit of Haskell.
Profile Image for Alex Moreno.
2 reviews
Read
February 18, 2025
I picked this book to learn more about denotational design. I found the second running example a bit laborious with so many equations and put the book down after the designing algebras part. However, the book is full of useful advice and, given the scarcity of books covering semi-rigorous programming methodology, I might come back and read it again soon.
Displaying 1 - 9 of 9 reviews

Can't find what you're looking for?

Get help and learn more about the design.