[Zope] Squishdot, Confera, ZDConfera and ZDiscussions....

Michel Pelletier michel@digicool.com
Mon, 29 Nov 1999 16:50:46 -0500


> -----Original Message-----
> From: Harry [mailto:mail-zope@fizbin.com]
> Sent: Monday, November 29, 1999 2:29 PM
> To: zope
> Subject: [Zope] Squishdot, Confera, ZDConfera and ZDiscussions....
> 
> 
> I'm currently in the rather thankless process of trying to 
> convert Squishdot
> to use the ZDConfera product, instead of the old Confera 
> product that it is
> based on. It was recommended that I heavily use ZClasses to that end.

I would recommend developing the base classes in python and subclassing
them with ZClasses that define the interfaces to the python objects.
I've found that patern the most useful.

> If anyone has dabbled in this, and has anything cool, or helpful to
> contribute, I'd be very appreciative, mostly because I know 
> next to zero
> about Zope or python when I started this, and am effectively 
> just trying to
> figure out the logic by comparing printouts of Squishdot.py, 
> Confera.py and
> ZDConfera.py.

Something to think about a bit is cataloging and indexing.  In fact,
these issues of searchability and findability will probably be the
deepest to think about and the easiest to over look.

Currently, Confera uses the *old* indexing code that was behind a
Product called ZTables (which is currently... hibernating...).  ZTables
was a bit like the Catalog, but different.  Confera has some simple,
hardwired field indexes and a hardwired text index.  Also, these index
types are simpler and less efficient then the ones Catalog are based on.

The Catalog, which comes with Zope, means that Squisdot doesn't need to
work nearly as hard as it does.  ZDConfera is, (this is a guess)
probably based on CatalogWareness, which means that it's articles and
threads are indexed automaticly by the stock Catalog.

You would probably need to take those protocols into consideration most.
Let me give you a tip, it might be more flexible, in the long run, to
not use CatalogAwareness, as it has some major drawbacks.  Second,
Squishdot is written in Python, and I think you should keep all of the
indexing and cataloging aspects in python, it's easier to deal with at
that level then the DTML level.  Unfortunatly, the ZCatalog model I
spend a lot of time on got toasted by the UML tool we use, so you'll
have alot of code to read.

Lastly, there is the yet to be released ZTopics which is a catalog like
catagorical tool that lets you create Yahoo like heirarchies of 'topics'
from a disperse set of objects.  Objects can be assigned a keyword list
of topics that get indexed inthe Catalog, and the ZTopic object does a
'canned query' to build the heirarchy dynamically.  It would probably be
a good idea to take that into consideration, ie, don't roll your own
catagory system cuz there's one coming down the pipe in the future.

> First, I'll be trying to replace all Confera parts in the 
> Squishdot.py code,
> by calls to the Confera product. Then, on my second pass, I plan on
> (hopefully) being able to replace calls to Confera with calls 
> to ZDConfera.

> I haven't figured out how ZDiscussions fits into all of this, 
> but I honestly
> won't concern myself with that right now.

I heard a rumor that ZDConfera adds backwards compatability to
ZDiscussions to make it Confera like.  

-Michel