November 9, 2004

Is it me, or is it Zope?

Some software installations can make you feel really stupid, just by not providing specific instructions.

I was pleased to see that Zope 3 had been published, so I downloaded a copy of the Windows installer and went through the (very simple) installation. Fine. Then I began to wonder just how the heck I'm supposed to run this amazing new piece of software I've just downloaded.
netstat -a
doesn't appear to tell me anything, so I assume that Zope isn't running.

Funny, nothing on the Start menu, which is where you'd logically expect the new items to appear. Nothing new has appeared in the C:\Program Files directory (hardly surprising, since I wasn't asked where the stuff was supposed to be installed). So, over to C:\Python23\Lib\site-packages\zope, and lo! - there is everything that's been installed.

Only there isn't, as far as I can see, anything to run. There is a server directory, but nothing obvious to run. There are a few README files, none of which contain instructions for how to start the software. Clearly this is just me being incompetent, right?

Well, Google is your friend, so I run a search for "How to start Zope". This gives me a huge amount of stuff related to Zope 2.everything. Most of it obviously doesn't apply, and much of it contains dead links that are clearly not being spidered on a regular basis.

I've noticed in the past that Zope documentation tends to be less than complete. Should we say "confusing"? It's surprising that an industry can be spawned on the basis of something that is so far from intuitively obvious. How steep can a learning curve be?

Here's an example from Zope 2.7, which Zope enthusiasts have told me to stick with for a while. So I'm noodling around and I decide to try to create a bunch of pages whose content comes from a database. Seems like what I need is a "Zope SQL method". So I select "Zope SQL Method" in the management drop down and click the "Create" button, to be presented with the message "There are no SQL database connections. You need to add a Zope SQL database connection before you can create a Zope SQL Method."

Now, can anyone guess where to find the information about how to create a Zope SQL database connection? Can I find it in the Zope web site? Can I find it using Google? Does the Z SQL Methods FAQ tell me how to create a Zope SQL database connection? What gives with this software? Do I have to be psychic?

We are talking about one of the flagship products of the Python world, and while I may not be Superman I do have quite enough experience to be able to run a program. Come on, people, let's have a few simple instructions that will give me the basic satisfaction of seeing a Zope web page served from my machine. As I write this I am feeling disillusioned with Zope, even though I know that there's some superb stuff in there. If only I could unlock the magic. Instead I'm left feeling slightly stupid, not a good place for a new uiser to be.


Anonymous said...

Just to letyou know that you are not alone out there. I still haven't figured out how to do a "Zope SQL database connection

Anonymous said...

Me too... I've spent hours on the web trying to get a Zope database connection, and I'm not new to computer either...

Anonymous said...

I've finally decided Zope is utterly hopeless. I've given up. I've made it work before, but now I need to install elsewhere and I can't coax it in to connecting to MySQL -- which isn't really that exotic a demand when you get down to it. Google doesn't help. It should be taken for granted that doesn't help. Does it not cross anyone's mind to publish basic documentation? And why isn't this already more-or-less integrated in to Zope? MySQL is, after all, the single most common database on the planet for interfacing with web applications...ugh.

Steve said...

It doesn't make me happy to raise this issue, but I am beginning to wonder whether Zope isn't suffering from terminal bit-rot.