ZopeX3 (was Re: [PEAK] GNU Enterprise)
Phillip J. Eby
pje at telecommunity.com
Thu Feb 3 12:04:24 EST 2005
At 06:40 PM 2/3/05 +0200, Andreas Pauley wrote:
>On Thu, 3 Feb 2005, Phillip J. Eby wrote:
>>GNU Enterprise is an effort to build specific enterprise applications
>>which are themselves open source; PEAK is an effort to build an open
>>source framework which can be used to create open or closed-source
>>applications. It gets used to develop closed-source applications, which
>>drive requirements for the framework, but the applications themselves
>>don't end up part of the package.
>>Technologically, there are some other differences, such as GNUe's
>>emphasis on CORBA.
>I've also been going through some of the documentation of ZopeX3 today.
>It seems that the Zope project has shifted from their web-centric focus to
>a more general application server backend in which one can build
>This sounds a lot like what PEAK is doing, what's the main differences here?
Zope X3 emphasizes "content-oriented" applications. For example, you'd be
rather hard-pressed to build an enterprise-class accounting or billing
system with it, because its object models and database system are tuned for
hierarchical collections of heterogeneous documents that are read more
frequently than they are updated. So, I don't think it's fair to call it
an all-purpose application server.
On the flip side, one thing that Zope X3 does that PEAK has no intention of
doing, is running "untrusted" code. Zope X3's security model is built to
provide a Java-style code sandbox for Python code. IMO this is a huge
investment of development effort for a very narrowly useful feature. If
you need such a sandbox in Python, don't look to PEAK for it, you need to
go with Zope.
Basically, the difference in emphasis between Zope and PEAK can be seen in
the fact that Zope believes everything should be persistable, including
modules, classes, and interfaces, because they want to support
through-the-web (TTW) development and believe that persistence is the way
to do it. But IMO enterprise developers don't need TTW, or else Java would
be a failure. Zope's real market is people who manage content and need
some scripting, and people who develop content management tools. If that's
your focus, you'll do better with Zope. If you deal more in "traditional"
applications that have complex business rules and work with gobs of
frequently-updated data, you may do better with PEAK's approaches to things.
More information about the PEAK