[Zope3-dev] Re: interview for my diploma thesis about Zope 3 in education

Martijn Faassen faassen at startifact.com
Tue Feb 13 07:27:59 EST 2007


Hey,

Dominique Lederer wrote:
> a week ago i posted this (
> http://mail.zope.org/pipermail/zope3-users/2007-January/005348.html) at
> 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
> recommend? Why?

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
> curriculum?

* 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
> http://mail.zope.org/pipermail/zope3-users/2007-January/005365.html :
> 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 
is doing.

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
> years?

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.

Regards,

Martijn



More information about the Zope3-dev mailing list