[Zope3-dev] Two visions

Martijn Faassen faassen at infrae.com
Tue Feb 28 06:51:28 EST 2006

Jim Fulton wrote:
> I'd like to get feedback on two possible visions for the future of
> Zope 2 and Zope 3.  
> 1) Our current vision (AFAIK) is that Zope 3 will eventually
>    replace Zope 2

> 2) In an alternate vision, Zope 2 evolves to Zope 5.

> Thoughts?

My initial reaction is: don't change the names (or at least be extremely 
careful about this). Zope 3 has a brand and we'd risk throwing it all 
away. We also risk being seen as wavering on the course.

I don't see the two proposals as mutually exclusive, and I think both 
are true right now. Zope 3 is replacing Zope 2 for some new 
applications. Zope 2 is evolving towards Zope 3 for existing applications.

I wrote a piece of text about the relationship between Zope 2 and Zope 3 
that might help in this discussion:

[snip section about Zope being mature]

Going forward

We are applying our hard-earned lessons by making Zope better. The web
is evolving and so is Zope, continuously striving to further increase
Zope's power, flexibility and functionality.

A visionary project was started in 2001 to build the next generation
of Zope software, `Zope 3`_. Zope 3 uses powerful component technology
to further increase the already strong extensibility and flexibility
of the Zope platform. The Zope 3 project is benefiting in this from
the deep experience of a large community of Zope 2 developers.

Zope 2 is not being left behind however: the Zope community initiated
a project called Five_ (2 + 3) to bring Zope 3 technology, where
mature technology is ported back into the Zope 2 platform to obtain
the best of both worlds. Zope 2 now contains Zope 3 technology and
will go forward on this path with every release, while Zope 3 is
forging ahead to explore new possibilities.

Zope 2 and Zope 3 are evolving together this way, both benefiting from
each other's strengths, until the differences between the two
eventually disappear.

Zope 2 and Zope 3

Zope comes in two flavors, Zope 2 and Zope 3. Zope 2 is a mature,
compatible and reliable platform that supports an enormous amounts of
features. It's the workhorse of our community. Zope 3 provides a
powerful component architecture and a clean, elegant architecture that
is a developer's dream. It's our community's thoroughbred.

It can be hard to choose between the two. Eventually you won't have to
as they're evolving towards each other [Going Forward]. But how do you
choose now? Here are some rough guidelines:

If you are a hard-core developer, looking for power and flexibility in
a clean architecture, and if you are building a new web application,
you may want to consider Zope 3.

If you want to make use of the rich variety of powerful Zope 2
software, need community, support and stability, consider Zope 2. And
don't forget that with the Five_ (2 + 3) project, you can already
start using Zope 3 technologies from within the safety of Zope 2.

Whether you choose Zope 2 or Zope 3 for your project, you will reach
the same future, just by a different path. Which path is better for
you we leave up to you.


I think the right way to go forward is to stay the course on this. Zope 
3 is the future of Zope 2. Zope 2 will continue to evolve in the 
direction of Zope 3, while Zope 3 forges ahead. The difference between 
themselves will eventually disappear.

Perhaps what I'm describing is already what you describe for Zope 5. I 
just don't see the reason to actually change the names, or to imply that 
Zope 3 does *not* have a future as a platform to build on, which could 
be seen as an implication of going with Zope 5.

Changing names and version numbers around is not going to help anyone 
very much and I think could in fact be damaging. I think we're actually 
reaching some clarity of where we are going, people are starting to get 
the idea, and we just need to communicate it better to the wider world, 
not change our message.

The pent-up demand for Zope 3 technology from Zope 2 developers that 
existed for a long time in the Zope 2 world while Zope 3 was under 
development has now been safely channeled into Five-related projects - 
people can actually use Zope 3 technology right now and worry less about 
the future. The meme "Evolution not revolution" which I have tried to 
spread along with Five has taken hold in the various Zope subcommunities.

Here's some more of what I wrote:

:Q: What's Zope? What's it good for?
:A: It's a web application platform that can be used to build web
     applications, CMSes, etc.

:Q: Where's zope coming from? is this some new thing?
:A: No, it's mature. We got tons of experience and community and stuff.

:Q: By 'mature' do you mean Zope is old cruft?
:A: Nope, it's going forward, and has been working on this for
     years. (Zope 3)

:Q: Well what's all this Zope 2 and zope 3 then? should I worry?
:A: Nope, we are managing this, you can use either, and get the
     benefits of both.  (Five)

I think we can just carry on this message.



More information about the Zope3-dev mailing list