However, I recently had a gig working in py3. Apart from screwing up every single print statement for a long time, it was entirely drama-free, and actually pretty great. There really is a difference between living and dead languages I think. 2.7 is the latin of python.
Why I'm Making Python 2.8
51–60 of 392 posts
Re: Why I'm Making Python 2.8
#52Earlier quoted context omitted.
> Please, do not put obsolete software on life support. Downvoting because Python 2 is anything but obsolete. People still love using it.
People in China were, until just a few years ago, still using Windows XP, too, though.
Re: Why I'm Making Python 2.8
#53Earlier quoted context omitted.
> This should have been the approach to modernising python all along. The core driver for the Python 3 break was the fix in text model, this is what allowed literally everything else as it completely broke existing code. And I, for one, think it's one of the most important improvements of Python 3, the text model of Python 2 is a giant mess and makes it very hard to correctly deal with non-ascii text for any non-triv…
> the text model of Python 2 is a giant mess and makes it very hard to correctly deal with non-ascii text for any non-trivial software There are counter-arguments to this. Armin Ronacher, author of (among other software) the excellent Flask web framework, thinks that Python 2's system of codecs and byte streams is better in practice [1][2]. Reasons include: You can do byte -> byte conversions with codecs that are no…
Armin Ronacher works in a very specific context of having to deal with byte/text interfaces in pretty much all his projects, and while I can see where he comes from I work at a different level and at the level at which I work the P2 model is a giant pain in the ass.
> [1] http://lucumr.pocoo.org/2011/12/7/thoughts-on-python3/
http://lucumr.pocoo.org/2016/11/5/be-careful-about-what-you-...
Armin is no foe of Python 3. And as noted in the essaye Python 3 has undergone several improvements or features reintroductions e.g. PEP 461 reintroduced C-style formatting to bytestrings, making generating binary data (especially ascii-based formats) significantly more convenient than it is between 3.0 and 3.4.
Also note that Armin has repeatedly praised Rust's text model, which is much more similar to P3's than P2's (except with static types and no messy legacy).
> and here he describes several embarassing failures of Python 3 to handle OS paths correctly
And (fucking surprise) the issue with that is the text model of FS paths is an embarrassing pile of garbage, Python 2 is convenient because it doesn't try to touch that mess at all and just hands the flaming bag of shit to whoever comes next.
Re: Why I'm Making Python 2.8
#54Earlier quoted context omitted.
I'd argue Python 2.7 counts as no longer produced. The 2.7.x releases with their bugfixes are akin to an electronics company still honoring the warranty of tape recorders and still repairing them. That doesn't mean tape recorders are not obsolete, especially since the company is not making them anymore. I consider the parallel 'making software' to be the process of feature proposal -> patch -> review -> merge
In your eyes is anything that isn't getting more and more features added every few months necessarily obsolete? Can't something just become mature and fulfill its goals at some point? Do you consider T-shirts to be obsolete too? If they kept adding more and more attachments ("features") to your clothes every few months to prevent them from becoming "obsolete" you'd be walking around in really heavy clothing...
T-shirts are still being made; verdict: not obsolete
Python 2 is not still being made; verdict: obsolete
Re: Why I'm Making Python 2.8
#55Earlier quoted context omitted.
People in China were, until just a few years ago, still using Windows XP, too, though.
Yeah, so for them it wasn't obsolete. For other communities it was. I don't see the problem. Obviously obsoleteness (word?) isn't a property of the product; it depends on the context (how much it's used, what else is available, how much the alternatives are used, etc... however you want to weight them).
Re: Why I'm Making Python 2.8
#56Re: Why I'm Making Python 2.8
#57Earlier quoted context omitted.
In your eyes is anything that isn't getting more and more features added every few months necessarily obsolete? Can't something just become mature and fulfill its goals at some point? Do you consider T-shirts to be obsolete too? If they kept adding more and more attachments ("features") to your clothes every few months to prevent them from becoming "obsolete" you'd be walking around in really heavy clothing...
Tape recorders are not still being made; verdict: obsolete T-shirts are still being made; verdict: not obsolete Python 2 is not still being made; verdict: obsolete
So, do your comparisons correctly. No matter how much you insist, Python 2 just isn't dead (or obsolete, etc.). Lack of new features doesn't imply obsolete.
Re: Why I'm Making Python 2.8
#58> And the majority of Python code written does not run under any of the 3.x interpreters. This makes it harder for its users to be productive. What a load of bollocks. For new projects this only matters if libraries aren't ported, which they are for the most part. For old projects, either you're in a situation where you can spend time porting your code to Python 3, or you don't; but as TFA mentioned pep-404, the writ…
Re: Why I'm Making Python 2.8
#59This is just a really bad idea IMO.
Re: Why I'm Making Python 2.8
#60Earlier quoted context omitted.
Future supersedes Six: http://python-future.org
Literally the first time I've heard of python-future. How is it that you claim it supercedes six?
So?
> How is it that you claim it supercedes six?
Its `future` library goes further than Six and it provides CLI tools to convert both Python 2 and Python 3 code to 2/3 code.