Guido admitted in his PyCon 2014 keynote that he will never again conduct a language transition like that from Python 2 to Python 3. The vast majority of Python code written in 2014 is still a ``SyntaxError`` on the latest version of Python. Some people have been wondering: will Python 3 ever take off?
We do some data mining from PyPI to reveal what progress the community has made so far toward migrating the long tail of packages towards Python 3 and which packages are most critical in the dependency graph of unported packages. We extrapolate about when (if ever) Python 3 support will reach a tipping point after which more new code will be written in Python 3 than Python 2.
We then share our perspective on mistakes made in the Python 3 transition and lessons that we can all learn from. The lessons apply to migrating any interface -- a language, a codebase, or a web API.
Ed is co-chair of the PyData miniconf this year. Ed co-organises the Python user group in Melbourne and has presented at OSDC, PyCon AU, and PyCon APAC in Singapore. Ed was the release manager for SciPy in 2005-6 and is the author of the Python-Future package for Python 2-3 compatibility. He has trained dozens of organisations in Python, including Barclays, CSIRO, Dolby, Singapore’s A*STAR, SKM, and Toyota Design Centre.
Ed holds a PhD in computer science from Imperial College London, where his thesis was in machine learning. He also holds BA and MA degrees in maths and computer science from Cambridge University. He has 20 years of experience in programming, teaching, and public speaking.