[Seaside] Seaside2: separation between content and presentation

Avi Bryant seaside@lists.squeakfoundation.org
Mon, 2 Dec 2002 15:30:31 -0800 (PST)


On Tue, 3 Dec 2002 tblanchard@mac.com wrote:

> WO adds EOF.  EOF is a really amazing Object to Relational mapping
> architecture.
> Without EOF I probably wouldn't bother with WO but EOF is where the
> real value is.
>
> I'm looking at glorp but its rather intimidating (lots of this squeak
> stuff is - good examples are scarce).  WO provides nifty bindings to
> EOF via keypaths (which I noticed somewhere you have) and handles db
> connection pooling.  So that's a big advantage.

One of the things Colin and I are working on right now for Tantalus (the
O/R framework we use internally, but that occasionally sees open releases)
is the ability to use a .eomodeld to describe the mapping - this should
make migration a lot easier for EOF users.  Tantalus is not yet up to EOF
standards (one thing it sorely lacks is a good query facility, which
GLORP does have, I think...) but it'll get there eventually; if you're
interested in using/improving it, let us know.

> Those are two of the biggest items - getting db access and it feels a
> bit like the model view separation is still not quite cooked.

Can you elaborate?  I don't buy that WO has any more separation - does
anybody ever treat the template/bindings/class triad as anything but a
single unit?  The tools sure don't make that convenient.  If you wanted
more separation in Seaside, an obvious thing to do would be to pair each
component class with one or more view classes, and move the rendering
logic to the views - I don't see an advantage to enforcing that, however.

> One other nifty thing WO does is sit behind a conventional web server
> via a CGI, modapache, or nsapi adaptor that does load balancing across
> several application instances.  I don't know what the load balancing
> strategy for Seaside is.  How do you scale it up?  I'm also not
> convinced that Commanche is nearly as robust as apache both stability
> wise and performance wise.  For smaller sites, this isn't likely a big
> deal.  But I know how to scale huge WO apps - can't say I can say the
> same for Seaside.

This is work that will have to be done the first time someone needs to
scale a Seaside app up to that level.  It's not very hard work (I've
written such interfaces before), the need just hasn't come up yet.
There's nothing tying Seaside to Comanche but the single WAKom class, that
could easily be replaced by a WAFastCGI, for example, if someone took the
time to implement it.

Avi