8 ms·
"What will happen if I do not upgrade by January 1st, 2020?" "You will lose chances to use good tools because they will only run on Python 3, you will slow down
by choppaface 7y ago
"What will happen if I do not upgrade by January 1st, 2020?"
"You will lose chances to use good tools because they will only run on Python 3, you will slow down people who depend on you and work with you."
The tone in this document is excessive and over-the-top. If the author spent half the document demonstrating (with examples) why Python3 is so great, it might actually be useful and get people upgrading like right now as they're reading it. But instead, it seems the author simply wanted to convey how sick they are of Python 2. The author does not appear to understand their users; that's their real frustration.
In life outside of Python... The transition in C/C++ from C++98 to C++11 and then C++20 (and beyond) has been quite clean and professional. There were some glaring issues with C++11 that later got patched up (e.g. rvalues but no optional, no filesystem, make_unique, etc). Most importantly, compiler support and standard distributions improved a lot. There were often clear incentives to upgrade, and it was relatively easy to stick to an old standard where necessary.
In contrast, Python has become a bit fractured, with a number of notable well-discussed but unaddressed loose ends in Python3: http://pyfound.blogspot.com/2019/05/amber-brown-batteries-included-but.html http://pyfound.blogspot.com/2019/05/amber-brown-batteries-in...
I think the Python community has failed to present strong enough incentives for upgrading to Python3, and that's why users are sticking to Python2 and 'slowing everybody down'. The jump to C++11 was obviously needed: at the very least, `auto` saved much of your sanity and you no longer really needed to include Boost in your build. But you could stick to an old standard if you wanted; you could even transition a codebase module-by-module in some cases.
The Python3 community seems to have been groping for a similar killer feature (e.g asyncio, as discussed in Amber Brown's talk above), but the value-add isn't so clear. `six` is honestly a nice catalogue showing how many changes in Python3 are largely sentimental.
Perhaps the killer feature missing from Python3 is a flexible, built-in Python2 runtime. Then maybe the transition would not have met such pushback.
- shakna 7y ago> The tone in this document is excessive and over-the-top. If the author spent half the document demonstrating (with examples) why Python3 is so great, it might actually be useful and get people upgrading like right now as they're reading it. If people haven't found reason in the last ten years, then they aren't about to be convinced today. All the arguments for and against have already been widely discussed, and that the EOL of Python2 is here should come as a shock to exactly no one. There's no reason to re-hash over and over what is already out there.
- mbeex 7y ago> There were often clear incentives to upgrade [...] In contrast, Python has become a bit fractured A bit? This is an incentive.
- mbeex 7y agoDon't quite unterstand the downvotes. Meanwhile the language and more important the entire infrastructure is affected: python vs. python3 switches pollute virtual environments, deployment, whole systems scripting code, bindings, derived code and more. This is not 'a bit'. Ending this situation is, as already mentioned, a (big) incentive.
- mihaifm 7y agoTotally agree, there's some degree of arrogance, especially in that section of the article. Maybe it's unintended, developers are not always good at PR.
- bigiain 7y ago> Totally agree, there's some degree of arrogance Me too. Anyone who's running 15+ year old free software which came with 6 or possibly 12 years of notice to upgrade to the new version (depending on how you count it) and is complaining that it's no longer going to be supported for free by someone else, is being quite amazingly arrogant... Maybe it's unintended, users of free software are not always good at being gracious.
- carapace 7y agoYes, those people are arrogant and/or entitled, but you know darn well that's not the arrogance GP was talking about. It's also arrogant to grab Python 2 out of the hands of people still using it and flush it down the toilet. As choppaface said, > Perhaps the killer feature missing from Python3 is a flexible, built-in Python2 runtime. Then maybe the transition would not have met such pushback. If Python 3 could run Python 2 code (even at just the granularity of modules) then all of this mess could have been avoided. I love Python and I love GvR, but he stumbled badly here IMO (not as badly as Perl 6, but that's small comfort) by trying, in effect, to cannibalize 2 for 3. I don't enjoy saying this. I've met GvR briefly and he didn't seem arrogant at all to me. But I do find the attitude of "Hey, F. U." to those of us who want to keep using Python 2 to be pretty arrogant.
- partialrecall 7y ago> It's also arrogant to grab Python 2 out of the hands of people still using it and flush it down the toilet. That's a strange way to characterize "decide to no longer volunteer their own time." And by strange, I mean rude. If you want somebody to spend their time maintaining python2, why don't you cough up the cash?
- jl6 7y agoDid we read the same document? It seems fine and a perfectly normal explanation of what’s going on and why, like any software with a defined lifecycle would have.
- dagw 7y agoI guess it depends what lens you are reading it through. If you're used to reading documents from open source projects it seems perfectly normal. If you're used reading documents from Oracle and SAP explaining changes to their long term support contract, then this will sound completely alien.
- lixtra 7y agoIf they had put “Pay x USD to continue using python 2 till 2020” in the document, I bet it would have been less alien to oracle customers [1]. [1] https://www.businessinsider.com/oracle-customer-explains-audit-threats-2015-9 https://www.businessinsider.com/oracle-customer-explains-aud...
- partialrecall 7y agoI for one am glad that my favorite FOSS projects do not talk like sterile Oracle PR drones, nor act like them.
- Fradow 7y agoThe tone is excessive and over-the-top because it's the last of numerous documents over the years saying essentialy the same thing. And yeah, they are probably sick of supporting Python 2 because a few vocal users still complain a decade after the writing is on the wall. There are tons of incentives to upgrade, but unfortunately very few to none can be considered killer features, and thus are harder to show off in a concise reminder about the sunset. You have to give it a try and actually use Python 3 features to realize how much this improves your life as a developer. Python 3 isn't perfect, but especially with later versions, it's a hell of an improvement over Python 2.
- dragonwriter 7y ago> The tone in this document is excessive and over-the-top. No, the quoted passage is exactly correct. Many major tools have dropped Python 2 support, and others have put that on their timeline. If you continue to stick with Python 2, you will lose out on the ability to use an increasing number of current tools, because the community is moving on. Relaying that fact isn't arrogant.