[EuroPython] What the heck does "pythonic" mean?

Michael Hudson mwh at python.net
Wed Apr 13 15:12:05 CEST 2005


Stephan Richter <stephan.richter at tufts.edu> writes:

> On Wednesday 13 April 2005 07:34, Michael Hudson wrote:
>> That something like ZCML is necessary to deploy large systems I'm not
>> prepared to dispute, but that it (seems to be?  currently?) is
>> necessary to do even toy development with zope 3 is a serious turn
>> off.
>>
>> When I got to the point in the Zope 3 Book where it says "simply type
>> these 70 lines of XML into browser/configure.zcml" I might have thrown
>> it out of the window if I wasn't reading it in PDF :):)
>
> Once you will develop longer with Zope 3

Also, "*if* I develop longer with Zope 3"...

> you will understand the reasons better. Once you do configuration in
> Python it becomes *much* harder to exchange components and being
> able to switch out components is considered very pythonic. ;-) 

But, from my, probably ignorant, POV I'm not doing any configuration!
I just have my silly web-app idea I want to implement to get a feel of
what Zope 3 is like.

> So you have to decide which one the lesser evil is. On the other
> hand, Jim has gradually worked on simplifying the usage of ZCML.

Yes, it seems that way.

>> Shane Hathaway put it very neatly in:
>>
>>     http://hathawaymix.org/Weblog/2005-01-26
>>
>> (especially his comment).
>
> But Shane was disputed by two people, Jim and Gary, intensively
> working on and with Zope 3.

Uh, I wouldn't say their comments disputed Shane, particularly.

> You should consider their points carefully. Also note that Jim is
> working on a new Bobo with which you will be able to write
> applications much like Shane suggested; but it is a simplification
> and does not cover all our use cases.

Of course.  I'm not saying ZCML should be scrapped or anything like
that.

> ZCML allows Python code to be simple. That means of course that ZCML
> will have a lot of the complexity that used to be in Python. If we
> make ZCML simpler, we will simply shift complexity back to Python.

But, and I guess you've heard this point before, I know Python really
very well already.

> I guess eventually we will find the right balance between the
> two. Personally, I have always argued that ZCML helps people
> understand on what's going on. I can just look at the interfaces and
> the ZCML and I can see exactly how the frameworks fit and work
> together.

I *think* I'm griping more about browser/configure.zcml more than
./configure.zcml.  This might be part of the reason for my reaction:

$ cd messageboard/step01/browser/
$ grep -c messageboard configure.zcml 
12

I'll get there, with sufficent determination.  But getting off the
ground isn't totally trivial.

Cheers,
mwh

-- 
  Also, remember to put the galaxy back when you've finished, or an
  angry mob of astronomers will come round and kneecap you with a
  small telescope for littering. 
       -- Simon Tatham, ucam.chat, from Owen Dunn's review of the year


More information about the EuroPython mailing list