Wandering Thoughts archives

2012-12-30

What I'd have liked to hear about Python 3 from the developers

I mentioned in my earlier entry that a different way of framing the Python 3 announcement would have made a big difference in my reactions to Python 3. For peculiar reasons, I think it's worth being explicit about what that would be.

Put simply, my major bad reaction to Python 3 stems from people apparently being expected to port their existing code to Python 3 in order to keep it operational. So for me, the way to make a better announcement about Python 3 is to make it explicit that the developers don't expect that to happen and they understand the implications of that.

So the core message I would have liked to hear goes something like 'please use Python 3 for new code, do consider migrating from Python 2 to Python 3 for code that you're actively developing if it's easy or if the new stuff in Python 3 looks attractive, and otherwise don't worry about your existing code because Python 2 isn't going anywhere; it's a mature and stable release that will be around for a long time'. This is an appealing message for anyone with existing Python 2 code that they have no interest in fiddling with and I don't think it's very far away from the intentions of the Python developers.

The devil's advocate position is to question whether this could have been an honest message (if it had been put forward). There are two parts of this. First, this message is not really attractive if Python 2 still needs to evolve (because the Python developers have made it clear that that's not happening). I happen to think that Python 2 doesn't need anything further, but people may disagree. Second is the issue of major packages that people use. Python 2.7 itself will receive any needed security updates for some years to come, but no one knows how long popular Python packages will still get Python 2 updates. And the Python developers can't make any promises because these packages are developed by third parties.

(This is another area where the lack of easy adaptability (not even compatibility) between Python 2 and Python 3 really hurts people.)

python/Python3DreamMessage written at 02:48:07; Add Comment


Page tools: See As Normal.
Search:
Login: Password:
Atom Syndication: Recent Pages, Recent Comments.

This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.