6 ms·
In my opinion/experience, there are some important hidden costs of staying in py2: 1) Hard-to-read or quirky code. Unicode handling, args, harder unpacking, et
by zzleeper 10y ago
In my opinion/experience, there are some important hidden costs of staying in py2:
1) Hard-to-read or quirky code. Unicode handling, args, harder unpacking, etc. The more time it passes, the more updates py3 gets, and the more outdated the py2 code looks.
For instance, after a year almost exclusively in py3, I have completely forgotten about iter(), unicode gimmics, etc. and also rely more on stuff that is just too slow on py2 (like ordered dicts). With 3.6, I can start assuming dicts are ordered, which will create further breaks for py2 users (if they want to backport anything).
2) Outdated libraries. As the other comments say, epydoc is abandonware. Had he migrated to py3 earlier, he would have stopped investing in that tool earlier and switched to the standard (sphynx).
3) Harder to interact with others in the community.
Although the folks at google might think otherwise, most people are now using py3, and most code being developed right now is on py3 (at least open source code).
If you are still on py2, it will be harder to hire (it hints at huge technical debt, and a tedious working environment), harder to sell to others (e.g. I don't use google compute because of that), and harder to collaborate on (for open source projects).
All in all, the more that py2 and py3 diverge, the harder it will be for legacy (py2) users to migrate (this was not the case a few years ago, when there were still important libraries on py2 only).
- rtpg 10y agoNitpick, but you cannot assume dicts are ordered in Py3, even in 3.6. CPython's 3.6 implementation will make it so, but it's totally a CPython implementation detail. Please use ordered dicts when appropriate (they'll be dicts in CPython anyways)
- dickbasedregex 10y ago>most people are now using py3 Citation? Still feels about 50/50 to me and even that number feels a little generous to Py3.