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 have done 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 from current growth rates 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.