Skip to Content.
Sympa Menu

pcplantdb - [pcplantdb] Thoughts on Zope

pcplantdb@lists.ibiblio.org

Subject: pcplantdb

List archive

Chronological Thread  
  • From: Chad Knepp <pyg@galatea.org>
  • To: pcplantdb@lists.ibiblio.org
  • Subject: [pcplantdb] Thoughts on Zope
  • Date: Wed, 11 Aug 2004 15:13:22 -0500

Richard Morris writes:
> Hi Folks,
> Just a bit of stream of conciousness on my first
> play with Zope.
>
> Yes it seems to be the all singing all dancing product which can do
> session managment, and indexed objects and good page templates.
>
> But I don't feel compleatly easy about this. For a number of
> not very well found reasons.
>
> 1) Everything seems to be placed in a giant object database
> Zope-Instance\var\Data.fs
> thats the page templates, scripts, and our actual data.
>
> 2) All work needs to be done via the web interface.
>
> 3) It does not (by default) work through the web server, instead
> creating its own server with a different port.
>
> As an old unix hack who likes to keep things close to the metal this
> approach make me go ug.
>
> I like to be able to see whats there in the file system so I can see the
> different scripts
> wwwroot/index.html
> wwwroot/index.css
> this allows me to access the files in lots of different ways.
> I can use my favorite editor, I can backup individual scripts,
> I can attach a script to an email, I can do
> ls -ltr
> to show which scripts were most easily changed. I can run a script
> through a spell checker, html validatior. I can submit the script via
> cvs. I can grep, sed, awk, sort, uniq, find ...
> I can use perl to parse and generate datafiles and pipe them through
> mysql/bin/mysql to generate a table.
>
> At the moment it seems like using zope, I loose all the power of unix
> instead I'm stuck with the html forms textarea widget which has all the
> facilities of notepad. And I can only have one edit window open at a time.
>
> Some I feel important questions
>
> 1) can we easily extract scripts from zope so we can back them up to CVS.
>
> 2) Can we make it work with content outside the Zope sphere, for
> instance I'd quite like to index the permaculture mailing lists archive,
> which are stored in their own manor without having to import the whole lot.
>
> 3) I have 1000 photos to upload. Can I automate the process?
> I'm going to get very board (and give up) if I need to use a
> file upload 1000 times.
>
> 4) What if the database gets corrupted? With a monolithic file we could
> be in danger of loosing everything.
>
> 5) Can my rich client (say a java applet) easilly extract data from
> zope. I might for example want to find the height of all the different
> willows, but rather than using stateless protocols (http) use a unix
> socket which will keep the connection alive.

Hmmm... this would have to be a custom server in any case but an
interesting idea.

> I supose all of these are power user questions. Zope seems great for
> casual users, but can I do stuff outside the Zope mindset?
>
> There may be stuff which at first seems to be easy using zope, but could
> have unforsean consequences. For instance in the Zope tutorial (leason 8
> on images) it happly let me upload a non image file (warez.exe). This
> could be a gaping hole.

This is an issue on any system, and letting anonymous users upload is a
bad idea regardless. If you look farther I wouldn't be surprised if
Zope had built in typechecking as well.

> Another example is the image object, looks great at first sight, but not
> exactly what we need as we probably want to add more indexing items,
> such as a list of plant names show in the image, author information, a
> rating. (Yes we can use properties).
>
> To summerise
> Zope very nice system
> Worries about power user access
> Will it end up being limiting at end of the day
> We could probably do what we need in zope
> We could just as easilly do what we want in many other systems
> It won't really save us much development time
> Initially it will slow development as it will (understandably)
> be some time before ibiblio get it running.
>
> Anyway appologies for the rant, hitting the learning curve.

Well, you have skimmed the top of Zope capabilities. Zope can be
programmed through the (IMO lossy) ZMI web interface. That is really
the path for less technical oriented folks. There are also External
Methods but to really program Zope you build Products. This is the
thing that you were looking for but did not find. I would rather
'shave my head with a cheese grater' than use ZMI to do this project,
so I totally get where you are coming from. Products live in the
$ZOPEINSTANCE/Products directory. You can download lots of examples
from the zope.org site.

To Zope or not to Zope, that is the question. Whether tis nobler to
have OO throughout or to use SQL on ibiblio....

--
Chad Knepp
python -c 'import base64;print base64.decodestring("cHlnQGdhbGF0ZWEub3Jn")'




Archive powered by MHonArc 2.6.24.

Top of Page