[Zope] SmartWorker

Jay, Dylan djay@lucent.com
Wed, 27 Oct 1999 11:17:37 +1000


> -----Original Message-----
> From: Oleg Broytmann [mailto:phd@phd.russ.ru]
> Sent: Wednesday, October 27, 1999 02:26
> To: Zope Mailing List
> Subject: [Zope] SmartWorker
> 
> 
> Hi!
> 
>    While browsing the Web, just found Yet Another Web Application
> Development Platform. Now it is SmartWorker, and it is based on Perl:
>    http://www.smartworker.org/
> License will change in near future for (I think) more open.
> 
>    Web Developmnet Platforms? Aren't there a little too many 
> of them? :)

Looks like some neat ideas. I like the idea of abstracting html controls
into cross-browser(environment) widgets but I don't think it will work very
well in the same way that java AWT didn't work. To get it to work will mean
the lowest common denominator of all rendered platforms is used. Also people
care to much about presentation and want to get under the covers. However
for those that don't a class library of complicated controls would be cool,
like the calander control that exists already. One I'd like to see is a add
and remove control (the one with two lists like in the ZClass inheritance
dialog). The problem with dialogs like this is to create them without
javascript or DHTML you would need to abstract over more than one
transaction.

Even more impressive is multiligual idea. Zope can supposedly handle this by
aquisition but does this work? I imagine to do this it would be something
like

root
  folder1
     doc1.html
  folder2
     doc2.html
     method
anotherlang
  folder1
     doc1.html
  folder2
     doc2.html
     method

And calling with /root/folder1/doc1.html or
/root/anotherlang/folder1/doc1.html
depending on the language.

Another way of doing all this is to say that anyone object can have multiple
alternative forms. Then have something in the context determine that form.
Maybe each object has a small method that can get overridden to determine
which form to return at any one request. This would work for images for
instance with high and low bandwidth versions. 
The bigest advantage of this I think is that your then modifying one
hierachy instead of many and therefore are less likely to make mistakes
about propagating changes.