All direct links to Zope.org have been removed, in the hope that others will not fall prey to this evil.
4am, Tuesday, May 16, 2000:
This is a silly document I wrote one night after yet another frustrating day dealing with badly written open source programs. The primary metaphor to hold (firmly) in your mind is that of Adventure: remember? "You are in a maze of twisty little passages, all alike."
I was moved to write this directly by considerations of Zope that flitted through my mind as I was trying to integrate Zope with PyWX. In particular, what recurringly traveled at high velocities through my gray matter was the thought, "This sucks."
You can either share my pain by following the path outlined below, which started with me trying to find some documentation on how things actually worked and ended in me weeping, or you can just skip right to the bottom.
Note that I had already decided the Zope was evil long before looking into this. Now I was merely trying to figure out how it worked well enough to connect to it from a program that the Zope developers didn't write. long story short: this is impossible, no matter how many chickens you sacrifice.
Shall I enter? This promises to be the well-lit entrance - but I know from my previous experiences that it's probably too good to be true. Going against my better judgement, risking frustration, I click on it.
This is an odd occurrence -- normally, a doorway leads somewhere new -- but I am willing to test the limits of this fetishistic system.
The Zope Administrators Guide looks interesting -- surely it will be technical!
What's this? It's not visible! I see a box - tightly compressed. Nothing else.
I open it.
I ponder the wisdom of the ancients:
Nope, still doesn't make sense.
Gamely, I read on.
But that is irrelevant -- I move on to the critical section, which discusses how to run Zope from a different Web server.
I decide to drill deep into the construction of this bizarre maze; perhaps going through the walls will be faster?
Once again, I ponder the wisdom of the ancients -- developing a Web/Application server in Python, which is ideal for socket programming, while coding the PersistentCGI client in C seems... strange -- and once again I am mystified.
Yet, after consideration of knowledge gained vs. time spent gaining it, I give up. Clearly an infinite amount of time would be needed.
Sob.
Thus, Zope sucks, either because it's badly designed or its documentation is badly written.
Thus, Zope sucks, because I have to figure out how everything works before I can use it to do advanced stuff.
OK, I'll admit it -- I'm impressed with ZODB. It looks well thought through, from the class hierarchy. So why on earth haven't they divorced it a bit more from Zope and made it usable to the hungry masses crying out for an OODBMS??
Thus, Zope sucks, because clearly the authors have not thought about how people are actually going to use their site.
Thus, Zope sucks, because they are producing a badly documented monolothic software architecture that has one entry point for sytems administrators.
Zope is evil because it is a beta-level software project masquerading as a complete development environment, and, as this is not admitted in open air, newbies are sucked in expecting something easy to use and expand.
Good night, and I hope you enjoyed this... Evening with Titus.
P.S. Enter the Zdragon... you've been warned!
1:30pm, the morning after.
I just found this on Byte: Zope is Python's Killer App. Whimper.
Counter: there are some cute opinions on Zope in the pywx advocacy area.
1:30pm, May 23rd, 2000.
This piece has now come in handy!! Zome poor fella wrote an article on why Zope is "better" than the ACS -- check out http://www.zope.org/Members/tazzzzz/ACSandZope. Personally, I figure he chose Zope so that he could use the name 'tazzzzz' without people asking him about it.
Let's see how long this server stands up to the (inevitable) denial-of-service attack... Ah, well, the only things that'll crash are Apache and Zope, not AOLserver!
For you Zopes who have been referred here by some inflammatory posting on the Zope-Dev mailing list, you can check out a couple of reasoned responses on the OpenACS bboard.
(Note that I don't have a community college degree in C++ -- that must be why I don't understand Zope, despite the complete lack of intelligible documentation. Sigh.)
Also, you should check out PyWX so that our advertisers will get more page counts.
July 17th, 2001.
Due to popular demand (about 4 people asked) I resurrected this page and moved it to a new server. I couldn't keep Zope running on the old one, and I didn't want to have to keep up with the bug fixes for Yet Another Web Service, so it's now running under Apache.
A number of things have happened in the Zope/Python world since then. In no particular order:
It is not yet clear if this is a Bad Thing.
Bug me if you don't like it, but don't expect an answer; if I wanted other people's comments, I'd have put a link to add them on the bottom of this page.
Disclaimer: Zope will, no doubt, turn into a fine, easy-to-use, wonderful product some day. I may even use it before then (I'm thinking about hosting this page on the software, actually ;). But at the moment it's a serious pain in the ass, and it's the most serious Web application available for Python, and the combination means that it's overproselytized and overpresent.