I'm definitely on the old side of the distribution of programmers, and I strongly appreciate tab expansion in tools like Jupyter and vim. I never used a full "IDE", whatever the boundary line is. But exactly that kind of reminder of e.g. "what's in itertools again?" is very helpful to me, both when I wrote programs and when I teach them.

... But Raymond will always remain a month and a half older than me :-).

On Fri, Aug 2, 2019, 10:25 AM Guido van Rossum <guido@python.org> wrote:
On Fri, Aug 2, 2019 at 6:38 AM Rhodri James <rhodri@kynesim.co.uk> wrote:
On 02/08/2019 06:26, Brendan Barnwell wrote:
>      It is massively more discoverable, for one simple reason:
> autocomplete.
>      In teaching people to program, I often use Jupyter notebook, which
> has great autocomplete functionality that can also bring up the
> documentation on any function.  You can type itertools.[TAB] and get a
> list, and then you can scroll down the list looking for a likely
> function, and when you get to it you can hit Shift-Tab and see the
> documentation.  Certainly other IDEs have similar functionality.
>      This is a colossal win over having to go the documentation and look
> through the text for a recipe that is not "addressable" in any way.  You
> can't even link to it, for heaven's sake!  The function docs in all the
> modules have permalinks but the recipes are just unstructured text.

I'd have to challenge that "colossal win".  I am very uncomfortable with
IDEs that try to do my thinking for me, and I start turning things off
on those occasions when I am forced to use them.  It would even occur to
me to try autocompletion.  Reading the documentation is so much easier,
and far more likely to point me at what the right answer actually is,
rather than just what I think it might be.

There seems to be a clash of generations here, or perhaps a clash of different educational paths. I'm in the same boat as you, but Python's recent success is definitely driven by things like IPython and Jupyter Notebooks which are optimized for exactly the approach to learning that Brendan describes. (And make no mistake about it, it is a form of learning!) I wonder what Raymond thinks (he's the maintainer of itertools and also an educator).

PS. Raymond, if you're not reading python-ideas, Brandon's message is here, and it's well-written:

--Guido van Rossum (python.org/~guido)
Pronouns: he/him/his (why is my pronoun here?)
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-leave@python.org
Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/B5FUOWFXAA3I2P4TFIAL26DH7LU2OWQZ/
Code of Conduct: http://python.org/psf/codeofconduct/