Book review: Zope 3 Developer’s Handbook <i>by Stephan Richter</i>

Like its subject matter, the Zope 3 Developer’s Handbook, has benefited from the mistakes of its predecessor, “The Zope Book”, and is a finely-engineered work. It is written in an extremely concise and carefully thought-out style, to make the immensely complex machinery of Zope 3 understandable to the reader in a mere 456 pages. It's easy to imagine a less-well-written book needing three times the volume to cover this material half as well. As a result, however, it is not a very casual book—you will need to read slowly and pay attention, if you want to get the most out of it.

The Zope 3 Developer’s Handbook is, like its subject, a big improvement over the original

It is written in an extremely concise and carefully thought-out style, to make the immensely complex machinery of Zope 3 understandable to the reader in a mere 456 pages

The contents

Structurally, the book is broken into major sections, with a few chapters for each. It’s possible to read the book in a non-linear order, but I can’t recommend it. There’s too much important material to be learned along the way. The first chapters describe how to set up your own Zope 3 server, which will of course be necessary before you can try any of the exercises or experiment with the ideas in the book.

The second section was, for me, the most interesting reading, albeit very tightly written. What the author calls “The Ten-Thousand Foot View” is full of insights into the minds of the Zope 3 developers—something which takes advantage of Richter’s privileged position as a member of that team—and makes much more clear the fundamental “whys” of the project. It describes what went wrong in the Zope 2 design, what people wanted to do to make it better, and how the Zope 3 team opted to handle the problem.

After that, the style settles down a bit, and the book gets into a tutorial mode, walking you through the creation of a sample web application built with Zope 3. Finally, a variety of more esoteric techniques are introduced for more ambitious Zope 3 developers to use.

Who’s this book for?

There is no question that this book is for people who want to develop web applications using the new Zope 3 component architecture and framework. You’ll find all the needed material here from basic concepts to an explicit tutorial.

Relevance to free software

Zope is a major free software success story. Releasing the Zope source code under a free-license was the thing that made then Digital Creations (now Zope Corporation) financially. The project has been a major source of free software innovation in software engineering techniques, and may well be one of the most ambitious free software projects ever attempted in the Python programming language.

Pros

So far, this is the book on Zope 3. However, even if there were a dozen, I would have to recommend this one. Richter’s inside knowledge of Zope 3 provides a currency and insight into the project that would be hard to beat, and it’s clear that he has put a lot of work into this book.

Cons

The only negative thing I can say about this book is that it is so tightly written, that you feel a bit like you’ll miss something if you blink. It’s not a book you can skim. You may also get the feeling that the book is a bit pedantic, because it shares the same evangelical obsession with “best practice” software engineering technique that you will find throughout the Zope 3 development team.

Title Zope 3 Developer’s Handbook
Author Stephan Richter
Publisher Sams Publishing
ISBN 0672326175
Year 2005
Pages 456
CD included No
FS Oriented 10
Over all score 9

In short

License

This work is licensed under a Creative Commons Attribution 3.0 Unported License.