Final Zope Book released

Posted 1 May 2001 at 20:55 UTC by mvw Share This

Zope is an interesting piece of software that allows the creation and management of dynamic web sites. Perhaps you have used a ZWiki already, an application that offers and invites modifications of its web pages by its user community. Next to the new 2.3.2 version of Zope, the final version of the Zope book is out.

You can download the online version from

The book is published by New Riders Publishing, in the same generous way like Pennington's GTK+ book, or the Goat Book on the GNU autotools. If you like it, support these folks by buying the dead tree version!

On a related note... ZODB, posted 5 May 2001 at 03:25 UTC by hathawsh » (Master)

Today (Friday, May 4, 2001) Slashdot posted an article that outlines the benefits of an OODBMS. There were a lot of posts, most of which shot down the idea of using an OODBMS, giving a number of reasons why it is impractical.

Well, I'm here to explain that an object-oriented database really does work, specifically ZODB, which is a component of Zope.

  • To write RDBMS oriented software I have to write the schema and the application. With ZODB I only have to write the application.

  • Schema changes: Python deals so gracefully with changes to the application classes that in practice, it is rare to need to update the database to match the schema. Sometimes a "live update" trick is needed, but if you grep for "__setstate__" in the Zope source code (which has been evolving for years now) I think you'll find the need is quite rare.

  • Skills availability: To the programmer, ZODB is but a thin layer above Python. Python is easy to learn and rapidly growing in popularity.

  • Scaleability: ZODB includes a "BTrees" module which lets you store and retrieve individual records of large data sets. And of course there is ZEO, now open source, which turns ZODB into a fully distributed database.

  • Pluggable backends: ZODB can use a flat file for storage, an Oracle database, or (recently available) Sleepycat's popular BerkeleyDB. An object-relational mapping will probably be another backend in the future.

Now, I can see that an OODB would have major problems with more tightly constrained languages. Both C++ and Java would probably throw a fit if you tried to deserialize an object that was created with an older version of a class. But Python merrily lets you do it, and that makes all the difference IMHO.

If you'd like to use ZODB independently of Zope, I recommend you take a look at Andrew M. Kuchling's programming guide. But you should also try Zope itself to see that an OODBMS really is a good idea.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

Share this page