My completely anecdotal view on the state of Python 3 in 2016. Based on my own recent experience, observations, and exchanges with other members of the Python community.
I did my first tweet storm today and people asked me to write it up properly so here we go.
Looking at the PyPI download statistics, the Python 3 situation seems gloomy: all Python 3 versions together are about as popular as Python 2.6 that nobody should use anymore.
And if my company is any indication, Python 2 applications are unlikely to be ported to Python 3. Why should they? Python 2 is officially supported until 2020. Who knows whether the app will exist in that form by then.
The number of these applications is huge. And this number won’t decline significantly in the foreseeable future. Nobody wants to touch their working systems.
The Very Gradual Improvement
The vast majority of important libraries on PyPI are hybrid: they support both Python 2 and 3. It’s very rare that someone releases a Python 2-only library nowadays (I’m rather seeing occasionally the opposite).
New projects and applications are started frequently in Python 3. For example, Patreon moved from PHP to Python 3. Why not? If you don’t have to wrestle bytes/unicode at a low level and don’t intend to use PyPy, it’s objectively the nicer language. How often are new projects started? In the days of micro services maybe more often than one’d think.
Given the state of the libraries, choosing between Python 2 and 3 is a matter of personal preference and company policy rather than technical reasons.
Especially community members that joined us later and don’t have such an ingrained antipathy to Python 3 find it natural to use Python 3. I’ve seen that both in the Twisted and the Pyramid communities. People have been trying to use Twisted on Python 3 long before it was really fit for it. Django – one of the main entry drugs to Python – by itself did a dent in Python 3 usage by using its syntax in their documentation.
Now remember what enormous growth the Python community had in the past months and years. At some point those people are going to be in charge while the old guard yells at clouds. This transition has already begun.
asyncio is another interesting topic. I was surprised how alive and well that little corner of the Python community is (albeit in mainly Russian speaking countries
Original URL: http://feedproxy.google.com/~r/feedsapi/BwPx/~3/L_39-C6WGeo/