Exploring Zope

John Maxwell jmax at sfu.ca
Mon Oct 27 23:57:35 UTC 2003


Giovanni Giorgi  wrote:

> In Zope? Someone can show some successful stories?
> The lack of a debugger is not a big problem if Zope could provide a
> goood dev env,
> but the Browser-based interface is difficult to use for editing python
> scripts.

In defense of Zope (I have been working with it for years)...

I'm interested to hear the ST/Squeak community's (often negative) 
reaction to Zope, coming from a "cleaner" model, but it is important to 
appreciate what Zope presents from another angle, that is comparing it 
to the common script+database web applications environments (PHP, ASP, 
mod_perl, etc).

What Zope offers, significantly, is an OO model that is entirely 
web-oriented. Where a system like Squeak gives you an OO playground 
based on a desktop-and-widgets working environment (not that you're 
confined to that, just that this is what's offered as the starting 
platform), Zope begins with a webserver's file-and-folders as the 
working environment. For someone whose business card says "webmaster," 
this is a comfortable place to begin; once that "webmaster" then begins 
to explore the advantages of having a comphrensive object model, you 
indeed get a wonderful system (Zope's inheritance and aquisition alone 
are worth the price of admission, compared with most other web app 
environments).

Admittedly, Zope is imperfect. It's learning curve isn't so much steep 
as "jagged" (parts of it as easliy learned, others are learned at the 
expense of handfuls of hair from one's scalp). The comprehensiveness of 
the Zope object model is currently being severely tested, as the 
version 2 line reaches the end of its usefulness. The challenge for 
Zope.corp is to come up with a cleaner model with v3.

It may not look stellar to the computer scientists among you, nor to 
those of you steeped in "purer" OOP systems, but Zope represents a huge 
leap in conceptual elegance compared with most of its rivals.

BTW, on the detail level, you can indent Python with spaces (as long as 
you're consistent and don't mix with tabs). Plus, Zope's support for 
DAV and FTP mean you're not at all restricted to the browser for 
development.


  - John Maxwell
    jmax at sfu.ca




More information about the Squeak-dev mailing list