python-dev Summary for 2004-08-01 through 2004-08-15

Brett C. brett at python.org
Wed Aug 25 15:03:49 EDT 2004


Arthur <ajsiegel at optonline.com> wrote in message news:<3l3pi0pgmgu0uir1ucnj0rlfo355c6i5cp at 4ax.com>...
> On Mon, 23 Aug 2004 21:50:48 -0700, Brett Cannon
> <bac at OCF.Berkeley.EDU> wrote:
> >
> >But then Guido decided to make my life difficult by saying that if the 
> >community could come up with an agreed-upon alternative syntax to 
> >propose to him he would consider ripping out the '@' syntax; decorators 
> >have always been experimental and '@' was checked in so people had 
> >*something* to play with.  This meant everyone and their mother started 
> >to propose both new and old syntaxes for decorators.  This led to a 
> >record amount of email on python-dev (at least compared to what we have 
> >archives for; back to April 1999).
> 
> <SNIP>
> 
> >"In the old days, Guido would Pronounce, and we'd all bite our tongues 
> >(although not necessarily each his own).  The less time Guido can make 
> >for Python, the more important becomes graceful capitulation."  Tim said 
> >this and it makes me wish for the old days.  People had *months* to 
> >comment on decorators and no one spoke up until something went into the 
> >language.  Procrastination is not a virtue when it comes to major 
> >language evolution discussions.  What was worse was when the emails 
> >started repeating themselves (which was pretty much from the get-go when 
> >this exploded).  Seemed like people decided to start talking without 
> >doing some research.  Granted the PEP was outdated and the wiki page was 
> >not up yet, but this stuff was covered in the Summaries before and you 
> >could have just Googled for the previous threads.
> 
> Perhaps you could clarify your position a bit.  I think the
> "community" understands some fundamental difference between posting to
> python-dev and to python-list.

python-dev is meant for discussing details about  Python's evolution. 
The idea is that pie-in-the-sky ideas get hashed out in the community
(which c.l.py is the gateway), once it gets clarified and has
community support it moves over to python-dev, it gets discussed
there, and either gets accepted, canned, or revised and sent back out
to the community for more refinement.

Obviously this is not hard and fast, but in general that is how it is
supposed to work.

>  If not Aahz is normally there to
> remind them.
> 

=)

> Guido's "genius" extends to marketing, IMO.
> 
> Having some sense of participation in the fate of Python, even if bit
> hullicinatory, is fundamental to the development of its following.  A
> clasic form of guerilla marketing.  Considering that the Python
> markteing budget in $ is 0, I think it would be a mistake to have the
> community believe that their only role is to read the release notes.
> 

But the community shouldn't think that.  Just read the developer intro
(http://www.python.org/dev/dev_intro.html) and you  can see how many
mentions there are of the community in it.  Participation is
practically required for a PEP to even be considered  being looked at,
for instance.

> >
> >Personally, if I was Guido, I would have said that the community had 
> >their chance to speak up and they just didn't take it. 
> 
> I think you are inadvertently going somewhere dangerous here.  A
> significant part of the community finds that their first appropriate
> opportunity to comment to be after some initial decision at python-dev
> - the Senate.  It then goes to the People. We the rowdy poeple then do
> our rowdy thing.
> 
> You see the point...
> 
> I don't think you want to say to the People, either to crash the
> Senate floor, or hold their peace,
> 

Just to start off, I hope everyone realizes this is my opinion and in
no way do I represent python-dev in any official way.  Even with the
Summaries I just happen to be dumb enough to do them so they just let
me play in my little corner while I write up the history book.  =)

OK, with that disclaimer out of the way...

That is the reverse order of things are supposed to be.  It should go:
the idea being put before the people, they let their collective voice
be known, and then the Senate takes a look and has a vote.  We try to
use the community as a basic filter for feature ideas, python-dev
hashes out  the details.  Trust me, you don't want python-dev
involvement unless you want really nitty-gritty arguments over things
as small as function names and stdlib coding style.  It is not a party
with Barry getting plastered on beer, Tim with a lady on each arm, and
me getting stoned in a corner with the crack that Barry gave me
earlier while Raymond is tweaking out on Speed

I am sure people are going to be sick of my political system
analogies, but my bachelors is in philosophy so it's how I think.  =) 
Think of c.l.py as the general public.  Its role is to come up with
ideas and to voice its opinion on those ideas.  python-dev is the
advising committee to the BDFL.  Its role is to take ideas from the
community and to generate its own in terms of running PythonLand in
terms of day-to-day details; it's Guido's cabinet.  Guido, the
dictator, holds absolute power and makes final decisions on things
that the cabinet brings in front of him.  It actually mirrors the US
government fairly well sans the ability to overturn the dictator  =) .

Although it is in no way a direct, or even indirect democracy (then
again it  could be argued neither is  the US with the amount of
political passivity in the country).  People live in PythonLand if
they are happy but really have no direct vote unless the dictator
gives it to them on some specific issue.  And if people really don't
like that they are free to leave although no one wants that to happen.
 Yes, we try to listen to what people want, but in the end we all rely
on Guido's gut to lead us.

And that is the order that things are supposed to flow.  Public voices
opinion on idea, cabinet fiddles, dictator decides.  Usually it goes
that way unless someone from the public skips dealing with the public
forum and goes straight to the cabinet.  If it is a small, simple idea
that is fine, but if the idea has any form of complexity the person
gets kicked out and told to talk to his fellow man first to see if
they like the idea.

And this is essentially how it went when decorators were first brought
up.  But then the public decided to throw a little mutiny over the
dictator's decision.  It's the first time I know of where the
community came back to really snap at Guido for his decision (all
other times has been people whining but eventually people said, "I
wish you had not done that, but  I will just deal with it and trust
you").  I think everyone (community, python-dev, maybe even Guido) has
learned some lessons from this whole experience.

I just don't want people to suddenly get the impression that they can
always just throw a little mutiny every time Guido makes a decision. 
Do that and he will just ignore what people want period and never even
give people a chance to propose an alternative once it reaches
python-dev.

And I want people to realize my tirade was just that, a personal
tirade.  It was out of frustration and thus should be taken with a
grain of salt.

And that frustration came from the feeling that the Python community,
which I love, seemed to suddenly form a mob, grab pitchforks and
torches, and started screaming.  And then they seemed to hold a public
meeting with *everyone* proposing their idea and not completely
listening to initial decisions.

I truly hope that next time Guido makes a decision that people as a
whole disagree with everyone involved can get together and discuss it
calmly without flooding my inbox.  =)

-Brett



More information about the Python-list mailing list