GvR Europython keynote described on lwn.net
no.email at nospam.invalid
Fri Jul 31 08:33:24 CEST 2015
He then moved on to Python 3.5, which is due in September. He would have
trouble choosing a favorite feature from the release because there are
"way too many cool things" in it.... Perhaps his favorite 3.5 feature
should be type hints, since it is a PEP he worked on himself. It took a
lot of work for the PEP to get accepted, which is a little bizarre since
he is the benevolent dictator for life (BDFL) and could accept his own
PEP. But he wanted to have independent review and acceptance of the PEP,
which Mark Shannon was graciously willing to provide as the BDFL
delegate, he said. ... If you caught him unaware, though, he probably
would name the new async and await keywords for coroutines as his
favorite. It was the last PEP accepted for 3.5 and it provides a more
natural way of specifying coroutines.
[regarding age of bugs in Python bug tracker]
If you pick any bug at random, including closed bugs, you would likely
get a closed bug. Many bugs are closed quickly and bugs that are easy to
fix tend to get fixed quickly. But the average lifetime of an open bug
grows linearly with the age of the project, he said.
[On designing a new language, and the GIL]
If you were to design a new language today, he said, you would make it
without mutable (changeable) objects, or with limited mutability. From
the audience, though, came: "That would not be Python." Van Rossum
agreed: "You took the words out of my mouth." There are various ongoing
efforts to get around the GIL, including the PyPy software transactional
memory (STM) work and PyParallel. Other developers are also "banging
their head against that wall until it breaks". If anyone has ideas on
how to remove the GIL but still keep the language as Python, he (and
others) would love to hear about it.
[PyPy, and how GvR and Dropbox use Python]
He was asked about PyPy, whether he used it and whether it might someday
become the default interpreter. He does not use PyPy, but he does
download it once in a while, plays with it for a few minutes, and likes
what he sees. He uses Python in two modes, either writing a short little
script to get something done, for which he just uses one of the
interpreters he already has built on his system, or as a Dropbox
engineer deploying Python code to its cluster.
The Dropbox cluster runs a modified Python 2.7, he said, which elicited
audience laughter. "I said it, it is no secret", he said.
Five short questions about his favorites was up next. Favorite web
framework? He said he only writes one web app in any framework and that
the last he tried was Flask. Favorite testing library? He mostly just
uses unittest and mock from the standard library. Editor? He uses Emacs,
but started out with vi (both of which were greeted with applause,
presumably by different sets of audience members). He still uses vi (or
Vim) occasionally, but if he does that for five minutes, it takes him
fifteen minutes to get used to Emacs again.
The final question was about what he hates in Python. "Anything to do
with package distribution", he answered immediately. There are problems
with version skew and dependencies that just make for an "endless
mess". He dreads it when a colleague comes to him with a "simple Python
question". Half the time it is some kind of import path problem and
there is no easy solution to offer.
More information about the Python-list