edit: Cython was always great for Python 2 and apparently supports 3. http://cython.org
Python 3 is the platform I use for almost everything, going back to 2.7 is always a major pain. 10 minutes into some 2.7 work and you have to deal with encoding and you start wondering if it would be quicker to just upgrade to 3.5.
Of cause if you mainly do numbers, there's perhaps little gained from Python 3.
So, nothing “hard”, really, you just have to do the work again (and prepare to support two versions for a long time, instead of virtually only one).
For someone to whom python is just a fancy pipe-wrench, why keep up with the new shiny?
For web stuff you have asyncio, and for hackers there is the venv improvements, but what is there for scientific users who have work to get done?
You don't need to freeze the language, but if the alternative is breaking backwards compatibility after all that time...
So far I have not heard anything like a real justification for why Py2 is still better
I think it needs to be the other way around. If you want me to move from something that works to something that you want me to move to, the onus is on you to show what the new thing does better (or would likely do better in the future). For scientific loads the Python3 story is mostly "not worth the trouble".