[Zope] Prerequisites for a desktop IDE, or any desktop app w/ Zope

sean.upton@uniontrib.com sean.upton@uniontrib.com
Mon, 21 May 2001 16:51:47 -0700


I agree on the 'view' concept for classes versus the traditional UML / IDE
integration concepts... 

Implementing a ZEO client core for a front-end GUI toolkit does make more
sense; it would perform better, have full access to the server, and still be
relatively x-platform (Win/Unix/MacOSX).  I still have some questions: 

- Wouldn't there be an advantage to having software products be installed on
the server (instead of a really FAT client)?
- By going the ZEO client route, don't you lose a lot of the things you
would get with Zope like the security model?  Or would this be different?
- The level of complexity there to develop such a thing grows quite a bit,
though, especially for those of us who remain ignorant (and perhaps a bit
fearful ;) ) of what is really running underneath the hood when it comes to
the ODB and ZEO... XMLRPC has both the advantage and disadvantage of
simplicity, for whatever that is worth...

Sean

-----Original Message-----
From: Michel Pelletier [mailto:michel@digicool.com]
Sent: Monday, May 21, 2001 3:53 PM
To: sean.upton@uniontrib.com
Cc: zope@zope.org
Subject: Re: [Zope] Prerequisites for a desktop IDE, or any desktop app
w/ Zope


On Mon, 21 May 2001 sean.upton@uniontrib.com wrote:

> 4. I'm not sure I would pay for an IDE versus using traditional tools, but
I
> WOULD PAY FOR CASE TOOL INTEGRATION.  I want forward/reverse engineering
> from UML; this would require the ability to have the CASE tool plugin

I'm not sure how important a J-together like IDE would pay off in this
respect, but I would love to see a UML-ish like visualization tool that is
totally isomorphic to python.  The object's under the hood are all python,
the visualization is just a 'view', no need to go back and forth.  
Changing the code or run time object model changes the visualization
immediately.

> Zope, via XML-RPC, could be a very good platform for creating an
extensible
> toolkit for desktop access to Zope, wrapping XML-RPC calls to Zope
machinery
> to do certain tasks. 

XMLRPC could do this, but I'm afraid it would be seriously
limited.  XMLRPC is very useful, but it does not map as well as it could
onto the python object model.  I would prefer to see a GUI client running
in the same process space as a ZEO client, this way the GUI client could
do everything that Zope could do and re-use alot of the existing
interfaces (like security, acquisition, script objects, etc).

The upshot of xmlrpc is that you could write front-ends in various
languages and platforms.

> I'm currently doing a bit of playing around with wxPython, which
reminds me
> a lot of my days programming with the Borland OWL class libraries, so I
> might be partial to such a solution using wxPython instead of tkinter (tcl
> interpreter - blech!  motif-style widgets - yuck!).  An IDE built with a
> decent (modern) widget set / UI class library, with extended toolkit
> functions, like data-bound controls, might make for an interesting
> user-extensible means of creating custom-tweaked IDEs, not to mention
other
> desktop software that accesses Zope...

wxPython is indeed very cool.

> In addition to an IDE, I want to be able to have some good guidelines
and
> documentation for standardized UML in Zope, so that when I share designs
> with colleagues, I don't have to use a ridiculous amount of my own flavor
of
> stereotypes, just because I don't know any better.  Once I have that, I
want
> CASE->CODE->CASE tools with an existing tool (even if it is a Visio
> extension hacked with VBscript),

blech.  it would take you just as long to hack one up with xwPython and
have a real object model underneath and it would be x-platform.

-Michel