[Python-ideas] be upfront if you aren't willing to implement your own idea

Brendan Barnwell brenbarn at brenbarn.net
Fri Jun 23 14:28:08 EDT 2017

On 2017-06-23 09:49, Brett Cannon wrote:
> Everyone, please be upfront when proposing any ideas if you refuse to
> implement your own idea yourself. It's implicit that if you have an idea
> to discuss here that you are serious enough about it to see it happen,
> so if that's not the case then do say so in your first email (obviously
> if your circumstances change during the discussion then that's
> understandable). Otherwise people will spend what little spare time they
> have helping you think through your idea, and then find out that the
> discussion will more than likely end up leading to no change because the
> most motivated person behind the discussion isn't motivated enough to
> actually enact the change.
> And if you lack knowledge in how to implement the idea or a certain area
> of expertise, please be upfront about that as well. We have had
> instances here where ideas have gone as far as PEPs to only find out the
> OP didn't know C which was a critical requirement to implementing the
> idea, and so the idea just fell to the wayside and hasn't gone anywhere.
> It's totally reasonable to ask for help, but once again, please be
> upfront that you will need it to have any chance of seeing your idea
> come to fruition.
> To be perfectly frank, I personally find it misleading to not be told
> upfront that you know you will need help (if you learn later because you
> didn't know e.g. C would be required, that's different, but once you do
> learn then once again be upfront about it). Otherwise I personally feel
> like I was tricked into a discussion under false pretenses that the OP
> was motivated enough to put the effort in to see their idea come to be.
> Had I known to begin with that no one was actually stepping forward to
> make this change happen I would have skipped the thread and spent the
> time I put in following the discussion into something more productive
> like reviewing a pull request.

	That is a reasonable position, but I think if that's really how this 
list is supposed to work then it'd be good to state those requirements 
more explicitly in the list description.  Right now the description 
(https://mail.python.org/mailman/listinfo/python-ideas) just says the 
list is for "discussion of speculative language ideas for Python". 
There is no hint that any particular technical qualifications are 
required other than having used Python enough to have an idea about how 
to improve it.  I also don't think such a requirement is obvious even 
from reading the list traffic (since I've rarely seen anyone explicitly 
state their inability to implement, as you suggest, although it does 
sometimes come up later, as in this case).  No doubt this leads to the 
occasional cockamamie proposal but I think it also allows discussion of 
useful ideas that otherwise might never be raised.  Also, the 
description does mention that at some point ideas might get moved on to 
python-dev; although it's not explicit about how this works, I think 
that creates a vague impression that thinking about how or whether you 
can implement an idea might be something for a later stage.

	That said, I don't personally agree with your position here.  My 
impression of discussion on this list is that a good deal of it doesn't 
really have to do with implementation at all.  It has to do with the 
proposal itself in terms of how it would feel to use it, hashing out 
what its semantics would be, what the benefits would be for code 
readability, what confusion it might create etc. --- in short, 
discussion from the perspective of people who USE Python, not people who 
implement Python.  I think that's good discussion to have even if the 
proposal eventually stalls because no one with the right skills has the 
time or inclination to implement it.  It would be a shame for all such 
discussion to get nipped in the bud just because the person with the 
original proposal doesn't know C or whatever.  Also, because, as you 
say, some people don't know what would be needed to implement their 
ideas, requiring this kind of disclosure might perversely muffle 
discussion from people who know enough to know they don't know how to 
implement their idea, while still allowing all the ideas from people who 
don't even know whether they know how to implement their idea --- and 
the latter are probably more likely to fall into the cockamamie category.

	I realize you're not proposing that all such discussion be stopped 
entirely, just that it be tagged as I-can't-implement-this-myself at the 
outset.  However, your last paragraph suggests to me that the effect 
might be similar.  You seem to be saying that (some of) those who do 
know how to implement stuff would like to be able to ignore discussion 
from anyone who doesn't know how to implement stuff.  That's certainly 
anyone's prerogative, but I think it would be a shame if this resulted 
in a bifurcation of the list in which ideas can't reach the attention of 
people who could implement them unless they're proposed by someone who 
could do so themselves.  To me, that would somewhat blur the distinction 
between python-ideas and python-dev, and potentially chill discussion of 
"mid-level" ideas proposed by people who know enough to have a 
potentially useful idea, but not enough to bring it to fruition.  We 
presumably don't want a situation where a person with some amount of 
knowledge thinks "This might be a good idea. . .  but I don't know how 
to implement it, so if I bring it up on the list the more knowledgeable 
people will ignore it, oh well, I guess I won't" --- while a person with 
no knowledge blithely jumps in with "Golly everyone I have this great 
idea!"  (I don't mean to say that is directly what you're proposing, but 
it is the evolution that came to my mind when I read your comment.)

	So to put it succinctly, as someone who's found discussion on this list 
interesting and valuable, I think there is value in having discussion 
about "what would Python be like if this idea were implemented" even if 
we never get very far with "how would we implement this idea in Python". 
  And I would find it unfortunate if discussion of the former were 
prematurely restricted by worries about the latter.

Brendan Barnwell
"Do not follow where the path may lead.  Go, instead, where there is no 
path, and leave a trail."
    --author unknown

More information about the Python-ideas mailing list