[<<] Industrie Toulouse

January 18, 2004

While Zope 2.7 is still not out yet, the milestone plan for Zope 2.8 has been posted online. There have also been talks about Zope 2.9 floating around recently. Near as I can understand them, these are the differences:

Zope 2.7, among other things, brings a long overdue and very well done configuration and installation system. It's also officially "blessed" to work with Python's 2.2 and 2.3, although you can't store new-style classes (define in Python 2.2) in the ZODB object database. Nonetheless, just having access to non-persistent Python 2.3 goodies will be very welcome. Zope, unfortunately, lags behind Python releases, mostly due to a couple of reasons. The 'Extension Class' system, which allow for Python code to subclass from C base classes (which Python now fully allows with its new-style classes introduced in Python 2.2), makes some internal changes and tweaks to Python (as used by Extension Class subclasses and instances) to support Acquisition and Persistence. There's also the security issue. Security is a very strong piece of the Zope story, and the amount of new features (iterators, properties, etc) in Python 2.2 and 2.3 (or any major new version) can introduce potential security holes. Zope 2.6.3, released recently, and the latest Zope 2.7 beta are results of deep security audit to ensure that the new Python features would be safe to use.

Zope 2.8 looks like its primary focus is to bring in recent ZODB features and to turn Extension Classes into New-style classes. (New style classes in Python were partially written so that Extension Classes could die). The primary importance here is so that migration work between Zope 2 and Zope 3 can really begin.

Zope 2.9, as far as I can tell, is going to be the release that starts bridging the two different universes of Zope 2 and Zope 3.

My main hope is that the scopes and deliverables of Zope 2.8 remain as seen in its milestone plan so that it doesn't suffer from the schedule humor that has plagued Zope 2.7. And my other main hope is that all of this delay for Zope 2.7 is from focus and care towards making a solid release.

J. Shell, January 18, 2004 08:59 PM, in Zope

OSDir interviews members of the core Plone team. This is a good interview, and Plone 2 is looking really good.

One (very small) beef that I have with the interview is that they make it seem as though Zope (the software) itself is lacking. I have to differ. Sure, the Content Management Framework and Plone add a lot of functionality, but only for certain types of applications. Zope (the software) is a base system for building web applications, but there are many kinds of web applications and content management (in particular, Plone's style of content management) is only one of those kinds. From my experiences, which primarily date from the Plone 1.0 release candidates, if your applications don't fit that model fairly well, you have a lot of work ahead of you to reconfigure and rework the model to fit. Plone has grown a lot since then, and frameworks that extend it even further, such as Archetypes, make customization even easier, but it can still be way too much sometimes. But even Zope (the software) suffers from this issue, albeit less. We have come across times in our little company where the resources and overhead required for Zope were just too much for a couple of forms and their handling.

Curiously enough, Plone reminds me of the problem that Principia (Zope before it was open source) was trying to solve initially - a common product that makes it easy to bring various different application types together in a common system. Principia unified a lot of common Zope Corporation (Digital Creations at the time) products, that were themselves built on the fundamental Bobo (now ZPublisher - the cool core piece of software that turns web requests into object calls), Document Template, and BoboPOS (which became the ZODB) pieces of software. CMF seems to be avoiding some of the issues that came up that have plagued Zope in the meantime - meaning that they have more defined set of audiences in their users and developers, whereas Zope is much more of a blank canvas and tougher to define (thankfully, for me).

But overall, the whole stack (Zope/CMF/Plone) is a very powerful system. The interview provides a good overview behind the philosophies behind Plone, and what differentiates it from Cocoon and PHP-Nuke and the like.

J. Shell, January 18, 2004 08:41 PM, in Zope