[Zope] - Slashdot on Zope

Guido Sohne guido@webstar.com.gh
Sat, 16 Jan 1999 12:26:55 +0000


Gabe Wachob wrote:
> 
> I wanted to ask the list what people's thoughts were on the
> appropriateness of implementing a Slashdot-like site in Zope.

I think that would be a very good idea. I am currently working
on implementing a news delivery site using a combination of 
Perl and Zope. I only have until Monday to complete a prototype
so I guess it will be mostly based on the slashdot source which
as you correctly noted is a bit messy :-)

I plan to use Zope to implement features not in the slashdot
code base to enable the users of the site to add features, which
can be managed very well and very easily using the file upload /
Netscape publishing capabilities of Zope.

> I have looked at the Slashdot source code (in perl) and its pretty messy
> (to put it mildy). I hacked at it to get it to work with the free Sybase
> server  on linux and it works reasonably well, but I haven't gone much
> beyond that.
> 
> If a slashdot-like site were implemented on Zope, would an external SQL
> database be neccesary, or would the internal object database be
> enough? For searching?

I am also curious to know this. I suspect an external database would be
a better approach, simply because for the volume of articles / comments
that could be in the site would make a Zope folder/document approach a
bit unwieldy. 

I don't yet know enough about Zope to make any meaningful judgement
call on this. What I am curious to know is how a more experienced Zope
developer would go about this and how he would architect the site.
 
> Building the Slashdot-style site on Zope has the attractive feature of
> being very customizable and modular from the get-go (something which
> Slashdot source code is trying to get to). Slashdot (the site) gets a
> LOT of traffic -- would a zope server be able to handle the (what I'm
> guessing is) hundreds of thousands of hits per day? Do we have to wait
> until the Medusa integration is complete (not that throwing together a
> slashdot clone can be done before digicool folks can get that done).

If you are looking for a quick hack, you may want to look at HTML::Mason
which can do modular/component based stuff. I don't like that approach
because code is mixed with data in their templates. 

If you want to do it right, then Zope + External DB + Apache might be 
nice. I haven't tried Medusa yet so caveat emtor.
 
> One thing I'm wondering about is upgrading. Assuming that the slashdot
> clone is upgraded regularly, how does this affect product instances
> already in the object store (this is a general zope question). My
> understanding is that straight pickling is done -- only data is
> serialized, so if I change methods, I should be able to use new versions
> of products with objects created by older versions of a product.. But if
> I add or delete attributes, then I have to be careful...
> 
> Finally, does the concept of a slashdot-like Product (or set of
> products) interest anyone?

Oh very yes! And I can think of quite a few improvements !
 
>     -Gabe