Python decorators and the whining about the whining

by Uche Ogbuji

Related link:

The whole Python decorators imbroglio has everything going for it: pity, terror and farce. The players flounce from duelling polls and patches to advocacy pieces born of excessive free time. Mix in all the hand-wringing about what this means about the state of the Python community and there's my cue to mix myself a cocktail. Brett Cannon says:

"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.

'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. But Guido is a
nicer guy than that so people are getting a second chance with this.
Personally this came off a great case of the tyranny of the majority in
my eyes. There is a reason why Python is a dictatorship.

At this point people should be hashing out which syntax alternative they
want to present to Guido on comp.lang.python_. No more talking on
python-dev, no more syntax proposals. The community should set a goal
date (Sept. 1 seems good) and just choose a bloody alternative. Then
when Guido makes his choice people accept it or just go to another
language. No one had better voice their disappoint once Guido chooses
his syntax or I will personally come beat you over with a stick for
being a whiner.

This does seem to read like whining about whining, though. After all, people want Python to be popular, and it is. This means that debates in Python will involve ghetto-blaster volume and heavy noise per unit of signal. That's success, and it's glorious. Not to pick on Cannon, but his comments sounds like so much Pining for the Days of Great Greeks when Guido was dictator of the Peloponnese through Mycenae. "Alas", the bard says, "Now we condescend to this garrulous Athenian democracy". This cacophony may be irksome to the annalists, but in this case it's the product of a great culture.

I've always been happy with Python's development. It worked well when there was a relatively small core that quickly hashed out key decisions in relative obscurity. I still think it still works well now that marathon newsgroup threads, blog jousts and Wikis string together a chaos of comment on what direction the language should take. Python has a solid foundation, and this flame war exposes more of the strengths than the weaknesses of the language and community.

What do you think about how the decorators discussion reflects on Python?


2004-08-25 06:50:50
right on!
I think people forget that a "democracy" involves a bunch of different voices and those different voices come from very different backgrounds and experiences and cultures. And they're trying to solve different problems as well. And they have different visions of Python as it exists today and what it should look like tomorrow. What appears to be the best approach for one person is the next person's "most terrible idea ever!"

I just wish people were nicer about their differing ideas. Some of the vitriolic hooplah is kind of sad and grotesque.

On the flip side, you're right on: this is what makes the Python community so neat and it's definitely a big indicator of Python's success. Java has its crowd of unruly armchair language experts. I don't think our crowd is any less vocal than theirs. That's a good sign. :)

2004-08-25 19:47:58
"good old days" not that old
You can label what I said as "Pining for the Days of Great Greeks" but it was not that long ago that people *did* go with Guido's decisions. This is not like it has been a consistent problem. You can look at introducing booleans or generator expressions when a big discussion broke out but this level of outrage did not occur. It is not like we are trying to go back a couple years to when Python was a small language and it was just PythonLabs running the show.

And don't forget to share the cocktails. =)

2004-08-25 20:51:16
"good old days" not that old
WHy *should* people "go with Guido's decisions" if they disagree with them? Why shouldn't they kvetch, moan, and fill up mailing lists and blog space with their spleen? I'm extremely dubious of a "community" that doesn't brook such dissent. You seem to imply that they should just go on to other languages. I expect Guido knows he lost the ability to tell people whether or not they could use Python when he made it free and open source. Why should anyone else tell people so?

I agree with Guido much of the time, but you can bet that if/when I disagree with him, I'll make all the noise I can, and I'll be very nasty to anyone who tells me I shouldn't do so. I don't begrudge anyone else the same.

2004-08-25 21:43:36
"good old days" not that old
Change "noise" to "signal" and I'd agree with you. Noise doesn't scale well.

Robert Brewer