PHP Developer highly interested in Python (web development) with some open questions...

Gabriel Genellina gagsl-py2 at yahoo.com.ar
Tue Feb 26 07:39:38 CET 2008


En Mon, 25 Feb 2008 06:42:39 -0200, Bruno Desthuilliers  
<bruno.42.desthuilliers at wtf.websiteburo.oops.com> escribió:

> Diez B. Roggisch a écrit :
>>>
>>> It's also some kind of a Rube Goldberg thingie...
>>> http://en.wikipedia.org/wiki/Rube_Goldberg_machine
>>>
>>> If you're into web applications, better to have a look at Pylons or
>>> Django IMHO.
>>
>> You are entitled to your opinion, but calling Zope a
>> Rube-Goldberg-machine is strong. To put it mildly. How about sharing
>> some of the reasons for this?
>
> A few years experience with it - both using it 'barebones' and working
> with cmf-based apps like Plone and CPS. There are quite a few very
> interesting and/or clever things in Zope, and a lot to learn from it's
> strong and weak spots, but in it's current state, Zope2.x is layers
> above layers of ill-documented base classes and not-always-that-clever
> hacks. And Zope3 - which is indeed way cleaner - seems to be wanting to
> be more xmlish than any Java thingie ever.

I completely agree. Zope had a strong and powerful idea in the beginnings:  
let's publish objects on the Web! let's make a URL to invoke an object's  
methods with arguments! let's use persistent objects!
Compared with the CGI spaghetti code mixing HTML and application logic and  
infrastructure in the same script (PHP/perl/ASP/whatever) that was so  
common some years ago, Zope was a blessing.
But the original idea degenerated in a mamooth-like framework, rigid,  
convoluted, and hard to use. In Zope2 there is an extremely deep class  
hierarchy almost for anything (30 and more base classes wasn't uncommon -  
who can tell from *where* an attribute comes from?). And so much black  
magic - strange name conventions for all, that probably originated from  
the stone age, when Python had no decorators, no writeable function  
attributes, no metaclasses... and that lasted for a long time, Zope was  
stuck at using old-style classes years after they were introduced in  
Python 2.2
I might consider using Plone -not Zope alone!- if I had to build a portal  
exactly like Plone likes it. But nothing more. There are many other  
alternatives right now so I can stay far away from Zope, even given my  
masochistic tendencies.

-- 
Gabriel Genellina




More information about the Python-list mailing list