[Zope3-dev] Re: Zope 3 Packages vs Python Packages

Barry Pederson barryp@medicine.nodak.edu
Fri, 17 Jan 2003 13:33:09 -0600


Paul Everitt wrote:

> 1) 95% of the people in Zopeland that encounter the thing currently 
> being discussed will be average schmoes.  They will *not* know or care 
> about the fine semantic details of Python packages.

I thought Zope3 was supposed to be geared more towards developers, who I 
would think would know about Python packages.  Making it difficult for Python 
programmers to contribute new functionality to Zope3 doesn't sound like a 
really great idea.

> 2) Inventing a new, unfamiliar term to avoid mental-collusion for the 5% 
> of insiders will help ensure we don't have to worry too much about the 
> 95%'ers. :)  ("Bundle, how cute, where did they come up with *that* word?")

"Bundle" is a perfectly good word, already used for describing how MacOSX 
apps are put together (which probably itself came from NextStep).  So that's 
not really a new or cute use of the word with respect to software.

> 3) Let's start thinking about how Zope 3 will portray itself to people 
> that aren't on zope3-dev.

I've been subscribed to zope3-dev for just over a year now, and I'm still 
confused.  The "package" thing was on my mind too after reading one of Jim's 
posts.  I believe it was this one...

-----------------------------------
I think the stubling block is the role of packages. Packages have two roles:

1. Distribution

2. workspace

That is, some package, especially the default package, are there just to 
provide a workplace for local configuration. Packages in service managers are 
a bit like folders in content space.

Other packages are for distribution. These packages may be packages you
create and put stuff into that you eventually distribute, or they may
be packages that you got from someone else.
-----------------------------------

When I saw the first post on this thread complaining about the name I thought 
"RIGHT ON!"

The otherwise very-useful Zope3 Newsletter doesn't define what a "package" 
is, the wiki ComponentArchitecture/Glossary doesn't mention it either.

If somebody stopped me in the hall and asked what it was, my take is that 
it's something that holds "service configurations" in a "service manager", 
and that there's a "default" one, but I have no idea why/when you'd need 
other ones, or how you decide which package to use in a given situation.

Maybe I just missed the right post that would clarify this - but it is 
difficult to get mental traction on what's going on with just abstract 
discussions using various uncertain/overlapping terms.

Some concrete examples of where/when/why/how you use various combinations of 
services/service-configurations/python-packages/zope-packages would be *very* 
helpful for people like me who know a fair amount of Python, have used with 
Zope2, but are having a trouble getting a grip on Zope3.

	Barry