On Mon, 2006-02-27 at 10:37 -0500, 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
- There will be lots of overlap between the Zope 2 and Zope 3 lifetimes. (Zope 2 might be supported more or less forever.)
- Eventually, the gap between Zope 2 and will become very small. requiring a small leap.
In this vision, Zope 3 would have to become a lot more like Zope 2, or we would lose features. -1
2) In an alternate vision, Zope 2 evolves to Zope 5.
- Zope 5 will be the application server generally known as Zope. It will be backward compatible (to the same degree that Zope 2 releases are currently backward compatible with previous Zope 2 releases) with Zope 2. Zope 5 will similarly be backward compatible with Zope 3 applications built on top of the current Zope 3 application server.
Note that Zope 5 will leverage Zope 3 technologies to allow a variety of configurations, including a Zope 2-like configuration with implicit acquisition and through-the-web development, and a Zope 3-like configuration that looks a lot like the current Zope 3 application server. Maybe, there will be a configuration that allows Zope 2 and Zope 3 applications to be combined to a significant degree.
- Zope 3 will explode. :)
For many people, Zope 3 is first a collection of technologies that can be assembled into a variety of different applications. It is second a Zope 2-like application server. I think that these folks aren't really interested in the (Zope 2-like) application server.
Zope 3 will continue as a project (or projects) for creating and refining these technologies.
(It would probably make sense for this activity to to have some name other than "Zope". On some level, the logical name would be "Z" (pronounced "Zed" :). An argument against "Z" is that it would be hard to google for, but Google handles such queries quite well and I'd expect that we'd move to the top of Google Z search results fairly quickly. However, I'll leave naming decisions to experts. ;)
Advantages of this vision:
- Zope 2 users don't need to leave Zope 2.
- Zope 3 doesn't have to reproduce all Zope 2 features.
- There wouldn't be confusion about 2 Zopes.
It is important that Zope 5 be backward compatible with both Zope 2 and Zope 3, although not necessarily in the same configuration. Many people are building Zope 3 applications today and they should not be penalized.
Thoughts?
+2 I personally think that one of the great things about what has come out of Zope 3 development: other projects can use the technologies without taking Zope 3 lock stock and barrel. I'd hate to see Zope 3 get more girth and loose future traction because it had to be fully backwards compatible with Zope 2. For those who wish to slowly migrate to using Zope 3 technologies without completely rewriting their software, evolving via Five is a fair approach. To quote a blog I'd read earlier today: Doing little things well is a step towards doing big things better. Allowing others to assist in refining the little technologies which make up Zope 3 can achieve this goal. I would fear this would be impossible if the first vision was followed. Andrew Sawyers
Jim