RV: [Long] Development in Zope (Was: Re: [Zope] data point on ease of learning Zope -- I give up.)

Ernesto Revilla aerd@retemail.es
Fri, 16 Mar 2001 16:11:24 +0100


Hi Cees, hi Stefano,

I have the very same problem. I think we would enjoy an IDE like
VisualStudio or Delphi for development and deploy the results under Zope.
Still this is not the case. A tighter union between ActiveState and DigiCool
could give such results. ActiveState has the IDE and DigiCool has the
Application Server. I still haven't seen the Komodo or the Wing packeges
working.

Also, the documentation for developers (say the class/package model and the
function-call interfaces and semantics) is scarce, but I've read that this
is now in development. This should be directly accesible by an IDE or a
Documentation browser with search capabilities and so on. Of course, could
be Zope, but Zope is not an IDE, and I need the docs accesible from the
window where I write my source code.

I can identify some more features I'm would enjoy in a development
framework:
* A data modeller, object oriented, with adaptors to real-world storage
systems. UML-modelling would nice. I know that some of these exist but I
still didn't see one working. I would like to model my (persistent) classes
visually, designing the inheritance relations and the properties a class
has. Also I would put modification info, such as: if attribute x of class
instance y changes, change also attribute z of class instance w. This data
schema would be translated to a OODMBS with some updating logic or into a
RDBMS with all the referential integerity rules and triggers to maintain
data cosistent.
* A document-framework. This is a good way to abstract all type of
real-world logic. The document framework would make it possible to search
and recover document, and to update one or more class instances in one
transaction, and treat any multiuser access problems.
* A GUI-builder, which could work in a generic way, having some types of
widgets and wich could help to build the GUI graphically. I saw this is
VisualAge for Java and I liked it very much. But now, there should be local
calls and remote procedure call based e.g. on XML-RPC. The interfaces could
translate to Java, HTML/JavaScript and other languages. It would be like a
visual modeller for the Mozilla framework which separates contents (what
elements will be on the screen), behaviour (what action will perform
whatever event), locales and layout (where will be put each of the elements,
what colour, etc.). This should be completed with guidelines for designing
GUI and integrate them with the business logic (and a document framework)
running on the application server.

All these ideas come from the wishes to get a higher level of abstraction.
We need persistent classes, we need a data-modeller and we need a way to
change data schemas in a fast and flexible manner. Also do we need to
separate data-model aspects from representation on the screen, so we can
make good projects dividing software departments into backend and frontend
engineers (and possible these into programmers and visual designers). But
frontend and backend are very related and so backend engineers should have
an easy way to write documentation for the classes and their methods, and
frontend engineer should have an easy way to access the necessary
documentation.

The power of the GUI will directly affect the successfullness of the
software. It's the same as the use of natural language: If it has a lot of
words which effectively describe the concepts I need (in an easy way) and I
use them in the right manner, communication with other people will be very
effective and efficient, the degree of communication is one of the most
important factors of business success.

I have a ERP solution (made with MS-Access) for small companies and want to
migrate to another platform, but I don't know how to start. I would like to
use standard browser technologies, but sometimes it seems not to be
sufficient. Also I would like to have a O(bject)Q(uery)L(anguage) Object
Store to access efficiently thousand of objects, but I still haven't found /
experienced a good solution. The same thing with the data-modeller and
document-framework. So I spend really a lot of time browsing through the
Web.

What should we do?

Erny



> Hello Cees
>
> the problem you raised is exactly the same problem I am facing. Allow me
to
> list my problems:
>
> - I am an experienced Java programmer, as well as many other -win-
languages
> - I want to build a big site with lots of logic
> - I want to have a comfortable tool
> - I do not want to build tons of classes from scratch.
>
> I have been evaluating a lot of other solutions, including ColdFusion,
> Enhydra as app servers, PHP, ASP, and other as languages. After a lot of
> headaches, I came out with the idea that unfortunately there are no "all
in
> one out of the box" solutions. From product A you get abc tools/solutions,
> from B you get def and so on. So at the end I decided to stick with Zope,
> for many reasons including:
>
> - Perl, maybe IMHO not the best, but terribly efficient and widespread.
> - Python, even if I do not like it at all, but after all the important is
> that it does it work :))
> - XML-RPC so Java for me
> - you can hide Zope behind Apache, so you can also use Tomcat, PHP and
> whatever.
>
> In the end, a mig mix. But please tell me, where in world can you find an
> all in one? I did not, so at least, I will take the advantage of the great
> manageabilty of Zope, those tons of "speed-of-light" tools like DTML-IN
and
> ZSQL methods, and do the rest in the tool I like most for that specific
> work.
>
> I do not like it, however, because it lacks consistency, but at least I
will
> not end up reinventing the weel that somebody has already invented, and
> debugged veeeery well, seen the tons of peple using Zope.
>
> Regards
> Stefano
>