I got to this book from a post on the "Lambda weblog", that mentioned that Mr. Gabriel released it for free in a soft-copy.

On one hand, it took me 2.5 days to finish it, which says something, on the other hand, I'm not sure how much it really measured against my expectations for it.

The name is a little misleading - out of 240 pages, Gabriel talks about patterns in only 90 or so. The secondary title - "tales from the software community" also takes only about 1/3 of the book.

The book is a collection of articles and essays Gabriel wrote, and it feels like just a lump of stuff he thought of and wanted to share with the world. Which is nice, as the writer is an authority in the Lisp and OOP worlds, and is a great writer - his style is excellent: interesting and very readable.

Gabriel tells about "patterns" in a very general term, as developed by the architect Alexander. He applies these patters to software, though in many places his metaphores are unclear and too far-fetched (he writes poems, after all). Then, he proceeds to tell a little about the history of programming languages, which is a mixture of historic and philosophic conjurings, and is quite educating. Gabriel clearly has a great understanding of the topic, he's been there for a long time.

Gabriel proceeds with a couple of essays on writing, which are very interesting if you're interesting in writing. I am, so I've read these essays eagerly - they're well written, which is appropriate. He asserts that developers must learn the art of writing and do it well, and I agree with this entirely !

Then, the "tales from the software community" part. It's the less technical, 90% biographical, and the most readable part of the book. The author tells about his bio from high school, through the universities of Northeastern, MIT, Illinois and eventually Stanford, where he got a (little controvercial, and not entirely successful) PhD. Gabriel is not ashame of describing his failures (many of them) and feelings, which is inspiring.

After his academical part, he proceeds to start a company, named Lucid (I still wonder if the Lucid Emacs modules have anything to do with it). The company first rides on the wave of Lisp, trying to build a portable implementation, and then rides on the wave of C++, trying to build a complete and a little Lisp-like environment to the then-popular language. This is an interesting account of a technological start-up, from its inception and until its death.

Overall, I liked the book, but I'm glad I haven't paid money for it. It's the kind of books you read in a couple of days, get a little inspiration and thinking-material, and never come back to later. But the book is generally good, and as it is available for free (in a nicely formatted PDF), go on and read it.