[Zope3-dev] Re: Reflections on the Zope 2 to Zope 3 transition

Philipp von Weitershausen philipp at weitershausen.de
Thu Apr 22 12:05:39 EDT 2004


Jim Fulton wrote:
> So your concerns are really about the Z2 to Z3 transition plan, not about
> the Zope release process.

I have some criticism on the Zope 2 release process as well, but I'm not 
as involved into Zope2 anymore, so I really didn't mind too much. Zope 
2.7 definitely took too long which is not so much ZC's fault. Getting 
rid of String Exceptions at the last minute was, though. I know that it 
got a couple of people a little mad.
Anyway, as we say in German, "yesterday's snow".

> Before I get into the main topic of my response, I'll note that I'm a
> good bit more optimistic about backward compatability than you are.

Good for you. I'll rather stay pessimistic and be positively surprised 
in the end, maybe.

> Zope 3 has always been a relatively small project.  Within Zope
> Corporation, I'm the only one that has worked on Zope 3 full time
> for any length of time.  As CTO, even my time on Zope 3 is
> not truly full time, but it's closer than for anyone else at ZC.
> Customer work (Zope 2), important community issues (like this thread,
> or like the security issues we uncovered last fall) take precedent.
> 
> Other people working on Zope 3 have "day" jobs.  They have to go to
> school or or do customer work (usually in Zope 2) to make a living.
> (Of course, you know this Philipp. :)

Yes, of course. Like you, I see the problem of lacking contributions and 
at the same time the lack of time to contribute.

> I made two choices that were controversial:
> 
> 1. I decided not to be encumbered by backward compatability.  This was
>    refactoring mercelessly" applied in the extreme. This had the result
>    that, except in a few areas, we did start from scratch.

When I look back, there's only little I would have kept myself. ZODB, 
maybe ZServer. I agree with your decision and if I were you know, I 
would do the same thing, too. Too heavy is the cruft that resides in Zope2.

> 2. I decided not to think much about the transition until Zope 3 has 
> gotten farther along.

I guess this was the main thing I do not feel comfortable with. I'm not 
saying you decided wrong. I'm just wondering whether the current 
situation could have been avoided.

> My main regret is so badly underestimating how long it would take to 
> reach where we are.

I guess we all did in one way or another. But yes, Zope3 has come a long 
way. So long that many people don't believe that it'll arrive anymore.

> There are a lot of reasons for being so far off.  One important
> reason is that we created a different culture, one that is far more
> quality driven.  We are being very picky about what we put in the
> Zope 3 baseline.  We're willing to take the time to get it right, or
> at least as right as we can make it.  We couldn't do this if it 
> wasn't for Zope 2. Ultimately, I think that this cultural shift will
> provide us with great benefits.

Yes it has and I wouldn't want to miss a single geddon we've done. I 
just wish it would have been possible to adapt this shifted culture in 
Zope2 as well, in the form of the CA for example. This wouldn't so much 
have affected Zope itself, since no new big features were added in 2.7 
except ZConfig, but third party products such as Plone. Those in turn 
seem to have the resources to maintain a large codebase and we've seen 
code floating back, mainly into CMF.

I am quite confident about Zope3's success nonetheless. If we indeed 
manage to put FrankenZope into reality in releases 2.8 and 2.9, we can 
give smaller projects the chance to do a gradual migration. I still 
think there will be a point where they'll have to invest some time into 
a larger refactoring to make it run in Zope3, but that's something they 
choose to do or not. Large projects like Plone have shown to have the 
resources to migrate their whole application at some point anyway.

Philipp



More information about the Zope3-dev mailing list