[Zope] General information

Paul Everitt paul@digicool.com
Thu, 22 Apr 1999 08:49:39 -0400


Tom Deprez wrote:
> Yesterday, I've seen a demo of Lotus Notes, quiet impressive too. Most
> people have seen this demo too. So I should make a comparison between these
> two and also a little bit with other same alike applications.

I have a bit of experience with notes.  Rob Page here has a LOT of
experience (he's a certified Notes instructor from a previous life).

Notes certainly makes for an impressive demo :^)
 
> I know Zope is Open Source and free. Offcourse this is a great benefit, but
> I need also some info on usage by experts on the web, usage by people who
> just want to put an article on the web (no experience however).
> 
> 1. Other available applications?
>     I know of ColdFusion, Lotus Notes (it's web & database part), ...

Since we're entering the portal toolkit arena, some things like Portera
are good things to compare to.  We are often compared against Vignette
StoryServer (for publishing) and Frontier.
 
> 2. Why using Zope above the other?
>     Pro's & Con's of these applications and Zope.
> 
> 3. Looking at Lotus Notes, they don't need an external database. Can Zope's
> database be also used like the one in Lotus Notes? (ie. Storing records,
> etc..) How can this be done. Is this database capable of storing large data
> amounts? Huge pictures?

Martijn partially answered this.  Notes has an object database that is
very neat...until you want to do something different.  Its concept of
objects being instances of forms, with both the forms and the
filled-in-forms being stored in the database, is quite neat.  Also,
designing the app and storing the app in the database is really useful
for deployment.  Its views mechanism is quite impressive as well.

Probably the biggest thing that people think of on Notes' database is
replication.  These folks have been doing it for a _long_ time and
certainly have designed through most conceivable requirements.

Having RSA as a key approach with access control on everything makes for
a pretty coherent security model, though not extensible.

Notes is pretty awful at being a "data" database rather than a document
database.  Having hundreds of thousands of things in a Notes database,
last time I looked, was frighteningly slow.

Notes is a _huge_ application, taking up significant resources.  I
imagine a Zope binary distribution could fit on a floppy if we tried.

Let's see, Notes shares the same strength/weakness as ColdFusion,
Frontier, et al. in that it has a sophisticated design environment based
as a thick client (the Notes client).  The only people that can
"program" are people that have forked over the dough for the Notes
client and installed the monster.  The idea of lightweight programming
through the web (e.g. DTML scripting) is completely foreing to them. 
This is one of the focal points of our "unleashing potential" story.

Last time we tried to do an app (a customer management system) I wound
up getting pretty shocked at its feeble object orientation.  I longed to
hook it up to DTML...which we did via ODBC.  In fact, using our Network
Client, we hooked our Linux Zope web server up to an NT Notes database.

I'd say DTML and LotusScript are equally frightening.  I'd say that
Zope's use of Python and C as extension languages profoundly beats
Notes' use of C/C++/Java for extensions.  And of course in Zope you can
actually look at the source code (cause it is Open Source) and
understand it (cause it is Python).  Really, changing Zope is
mind-numbingly easy -- even _I_ could do it and I'm not much of a
programmer.

> 4. If you need to make a knowledge base from start. Should we better use a
> database like Oracle, SyBase, PostgreSQL, ... or use the Zope database?

Until the Catalog lands, our searchability story is poor.  Fortunately
the Catalog, when paired with Z Classes and Property Sheets, is turning
out to be something that I think surpasses Notes' forms and searches. 
This will be shown and LinuxExpo and released thereafter.  It will
hopefully appear on zope.org before then.  And yes, it will be below the
line.
 
> 5. The search in Lotus Notes is fast... How fast can Zope search?

Notes uses Verity for its search engine.  They've had Verity integrated
for as long as I can remember (certainly before 1993).

Without the Catalog, Zope searches currently are a grep style "traverse
everything on every request".  With the Catalog, you should expect
full-text/fielded searches on a 100,000 object Zope system to take about
0.2-0.8 seconds (rough guess, lots of variables involved).

The Catalog is based on Z Tables (a currently "above the line" piece of
software).  If you want to see Z Tables in action, join the Zope
Documentation Project and write a bunch of docs, then index it :^)

Hope this helps.

--Paul