<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p><br>
</p>
<p>(separate reply to discuss the "what do we do now" topic)<br>
</p>
<br>
<div class="moz-cite-prefix">On 07/12/2018 07:57 AM, Guido van
Rossum wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CAP7+vJ+oK5q8a3kxizcbgUrrhwhOBbDj9VhSSNwZ0XgiOuBztQ@mail.gmail.com">
<div dir="ltr">I would like to remove myself entirely from the
decision process. [...]<br>
<div><br>
</div>
<div>I am not going to appoint a successor. <br>
</div>
<div><br>
</div>
<div>So what are you all going to do? Create a democracy?
Anarchy? A dictatorship? A federation?<br>
</div>
</div>
</blockquote>
<br>
Although the timing is a surprise, the idea of Guido retiring
isn't. I remember shooting the breeze with Guido about it as far
back as the Santa Clara PyCons--and I'm sure the topic goes even
further back. So we've had quite a while to think about it. Here's
my opinion, which I reached years ago and haven't appreciably
changed since.<br>
<br>
First, there's no single person in the community who can take over
as BDFL. It's simply impossible. The Guido we have today is who he
is because he's been doing the BDFL job for more than twenty years.Â
The job has shaped and taught him as he did it; as Python grew, so
did Guido. Literally anybody else we might appoint as BDFL would
have to start fresh and grow into the job--and I don't think we can
afford the growing pains.<br>
<br>
On the other hand, I also think that deciding PEPs by popular vote
would be folly. Python is mature enough to be simultaneously robust
and fragile, and leaving its design up to popular vote seems like a
recipe for chaos. In my opinion, the final arbiters of Python's
evolution should be experts, not the masses. (Cue "Twitch Plays
Pokemon" here.)<br>
<br>
I think the happy medium is a Council Of Elders. Summarizing this
approach:<br>
<ul>
<li>The number of Elders on the Council should be an odd number
greater than two. It can't be one person, as that'd just be a
BDFL. And we want an odd number to prevent tie votes. My
instinct is that three would be fine.</li>
<li>For most PEPs the Elders should delegate, just as Guido has
generally done in the last few years. Although I expect the
Elders to be seasoned Python core developers, they probably
won't have domain-specific knowledge necessary to rule on most
PEPs.<br>
</li>
<li>I'm not sure how to appoint the initial round of Elders.Â
Maybe a popular vote?<br>
</li>
<li>However, once appointed, Elders are appointed is "for life".Â
The only way to remove one would be for them to voluntarily step
down--there would be no mechanism to remove one from office.Â
(Perhaps this is too strong--perhaps one could be removed by a
unanimous vote from all other Elders?)Â I want the Council to be
immune to popular opinion, to be empowered to do what they think
is right without fear of anything beyond negative public
opinion.<br>
</li>
<li>I'm not sure how we'd replace Elders. Maybe they'd hold an
internal-only election? ("Jo has decided to step down, and we
have elected Sam as Jo's replacement.")<br>
</li>
</ul>
Your reaction to this might be "but running Python's evolution by
committee will slow it down!" I suspect that's right. Not being
Guido, I think the Council would be more cautious in approving
changes to the language. But I think that'd be appropriate anyway.Â
Python's already a fine language, and I can live with it evolving
more slowly in the future.<br>
<br>
<br>
Personally I'd nominate the following three Elders. In alphabetical
order:<br>
<ul>
<li>Barry Warsaw (knows where the bodies are buried)</li>
<li>Benjamin Peterson (young enough that we'll get many years of
service out of him)<br>
</li>
<li>Brett Cannon (the only candidate tall enough to be worth
considering as BDFL replacement)<br>
</li>
</ul>
I like this union of experience and personality. My intuition is
that they'd find the mixture of caution and let's-go-for-it spirit
that we need to keep Python moving forward without making too many
mistakes. And we could call them "the B's" for short!<br>
<br>
<br>
Finally, I agree with Raymond's call for slow deliberation.Â
Python's not going anywhere, there are no burning needs for changing
the language that need to be addressed immediately. We can all
collectively sit and stew on this for a while.<br>
<br>
<br>
<i>/arry<br>
<br>
</i>p.s. I know nobody is suggesting this, but I'll preemptively say
it anyway: let's not simply appoint all the Release Managers as our
initial Council Of Elders. While that'd net us some very fine
Elders indeed, you'd also wind up with me on the Council--an obvious
mistake!<br>
<i></i>
</body>
</html>