Dominique Lederer wrote:
a week ago i posted this (
the Zope3-users mailinglist, but got nearly no response. Maybe here i
get more attention :)
I will post my questions again, if you could spare some time, please try
to answer them, so i can give something back to the community in form of
my diploma thesis. I will cite the responses in my work.
currently i am writing my diploma thesis at the University of Applied
Science in Austria, Vienna.
The topic is about the usage of Python and Zope (3) in education.
There are a lot of papers concerning Python and education, but i found
not much about Zope there. So this seems an interesting topic to discuss.
So here are my questions:
* Do you think Zope (3) can be used at school or university level to
support topics in computer science education? What topics would you
It could potentially be interesting in the following topics:
* web application construction. Drawback is that it's way more
complicated than some other approaches for small scale applications
which typically would be what a student would be working with, so this
might turn them off. Unless grok is used, but that's rather new.
* patterns in application architecture. The component architecture is an
interesting way to construct applications. Not by far the only way, but
it could be used as an example of how complicated extensible
applications could be built.
* How would you convince someone who is in charge to use Zope 3 in his
* Zope is about 10 years old as a web application platform, so there's
tons of experience in it.
* Zope 3 takes interesting approaches to extensibility.
* How do you see Component Based Software Engineering (CBSE) or other
Component Frameworks related to
Zope 3? What are the differences? Is Zope 3 an alternative for other
component based frameworks in the industry and why?
Hm, someone else who knows more about what alternatives exist in the
industry should answer this one... I'll try below...
(to this question see my follow-up at
This question has a litle bit historical background. At my university
they taught us Component Based Software Engineering (CBSE), and how this
will change the way, software will be developed. Software development
will(may) change to an industry where focus is on components, reuse and
testing (at the moment thousends of developers code the same stuff)
In the same course they talked about CORBA, COM+ and EJB. My question
is: Can they also talk about Zope 3 there? )
The above component frameworks are in some ways quite different in what
they try to accomplish, compared to what Zope 3's component architecture
CORBA and COM are both explicitly trying to be language neutral. CORBA
in addition tries to be network transparent. The Zope 3 component
architecture is trying none of these things.
Compared to EJB (and the others), I believe the Z3 CA is a lot more
lightweight. It's components for dynamic languages.
I do not know whether the other component frameworks have much focus on
adapters. Zope 3's CA is oriented around dynamic adapter lookup. This
might place it more in the realm of type-based dispatch mechanisms you
find in some typed functional languages (Caml, Haskell, etc) than in the
realm of component systems like the ones you list. The CA brings some of
the power of typed (multiple) dispatch to a dynamically typed object
oriented language (Python).
* How do you see the future of Zope? Where do you (want to) see it in 2
Zope 2 applications will continue to evolve using Five towards using
Zope 3 technology. The platforms Zope 2 and Zope 3 will continue to merge.
I hope with Grok we will have drastically increased the approachability
of Zope 3. This will hopefully make it the web framework of choice for
more web developers (Python), even given the intense competition.
I also hope that Zope 3 will continue to adopt technologies from outside
the Zope realm, sharing code and concepts with other Python-based web
frameworks. At the same time, Zope 3's components will become more
separate from a monolithic application server and will start to be
reused more within other web frameworks.
Zope3-dev mailing list