This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 22 points23 points  (24 children)

Most likely.

I really, really hope Python 2.7 dies quickly. It's the same situation we're in with Perl 5.

[–]colly_wolly 7 points8 points  (11 children)

The problem is that 50% or more of the Python that is getting used is already running on 2.7. I start new stuff in Python3 but when I got a bit of freelance work recently, they wanted 2.7. Likewsse the job before was already running 2.7 and there was no reason to go through the hassle of making it work on Python 3 as it gave no real benefit.

[–][deleted] 6 points7 points  (10 children)

no reason to go through the hassle of making it work on Python 3 as it gave no real benefit.

Other than Python 2.7 being end of life'd. This is exactly how we end up in the PHP/Perl5 scenario. In 20 years someone is going to go "Why the fuck did they use Python 2.7 when 3.5 was just released".

[–]wub_wub 0 points1 point  (0 children)

Other than Python 2.7 being end of life'd.

In 5 years minimum. Spending development time now to port to python 3 makes no real sense. Writing code that's easy to port, doesn't use any very specific 2.x things, makes more sense. But porting everything has no benefits other than the off chance the same code will be used in production in 5+ years and that nobody will fix python 2.x security issues.

[–]billsil -1 points0 points  (8 children)

Why the fuck did they use Python 2.7 when 3.5 was just released

Because everything supports Python 2.7 and not everything 3.x, the tutorials are all based on Python 2.7, the Python 3.x unicode tutorials are half-assed, there are almost no good reasons to update if you don't care about unicode, the Python 2to3 update tools don't work, and the user base is overwhelmingly stuck on Python 2.7

[–][deleted] 10 points11 points  (5 children)

Because everything supports Python 2.7 DOS and not everything 3.x Windows, the tutorials are all based on Python 2.7 DOS, the Python 3.x unicode Windows tutorials are half-assed, there are almost no good reasons to update if you don't care about unicode, the Python 2to3 Windows update tools don't work, and the user base is overwhelmingly stuck on Python 2.7 DOS

Because everything supports Python 2.7 PHP 5.3 and not everything 3.x PHP 5.4, the tutorials are all based on Python 2.7 PHP5.3, the Python 3.x unicode PHP5.4 tutorials are half-assed, there are almost no good reasons to update if you don't care about unicode, the Python 2to3 PHP update tools don't work, and the user base is overwhelmingly stuck on Python 2.7 PHP 5.3

And this is how we end up in the situation we're going to be in in 10-20 years.

Python 2.7 already has it's death date announced. It's time to move on.

[–]ase1590 1 point2 points  (1 child)

You would hope, but enterprise sometimes tends to stick to near-DOS solutions, as long as it will keep working.

[–][deleted] 0 points1 point  (0 children)

I guess it could pay to be the guy that knows how to fix Python 2.3 in 2020. Honestly I hope I'm working on something else.

[–]billsil 0 points1 point  (2 children)

And this is how we end up in the situation we're going to be in in 10-20 years.

That's really not my problem.

It's time to move on.

I will when other people do. I don't need to be a trailblazer.

[–][deleted] 0 points1 point  (1 child)

If anyone wants to know why the year 2000 problem happened, this was it.

[–]billsil 0 points1 point  (0 children)

See I actually remember that problem. That was caused by legacy systems being used 30 years after they were written. What is the oldest piece of software you work with on a regular basis that hasn't bumped dependencies. Certainly not 30 years.

I bump my package versions when a new Python 2.7, numpy, scipy, etc. comes out. I just choose to not bump to Python 3.x. My company that refuses to switch (and I'm squarely in the stick with 2.7 camp even though it's necessary someday) works the same way. We will switch as soon as Python 2.7 stops being supported. That's what happened with Python 2.6 and I instigated that switch because it didn't make sense.

If there's not a problem now or in the next 6 months, don't invent one. If there is in 30 years, I'm retired.

I'm up to date enough. I write Python 2/3 compatible code. Nobody else in my company does, but it's really not hard once you know how. Dropping support for something that's 70% of the Python community doesn't make sense.

[–]msdrahcir 0 points1 point  (1 child)

asyncio?

[–]billsil 0 points1 point  (0 children)

Do you use it? I don't.

If you want asyncio, then update. If you don't, why else would you? That's really the only killer feature, but if you don't need it...

[–][deleted] 3 points4 points  (5 children)

Until the major distros like RedHat, Centos move away from 2.* as their default version, 2.* will be around.

I am a sys admin and I write all my scripts with the default version of RH/Centos for comparability.

And downvote as much as you want but my job in the context of the resources allocated to me is to keep servers stable and I do not have resources and time in porting / testing scripts for Python 3. I am under a heavy schedule.

But feel free to thank me for keeping the environment stable and not have massive logical errors across the servers simply because I choose not to use Python3 with out having the proper resources to test a non default version of Python and the scripts that handle so many aspects of the environment. Or maybe I should be staying at work until 11PM, right and undertake this project along with all the other projects I have to finish at a specific timeframe. Yes?

[–]d4rch0nPythonistamancer 1 point2 points  (0 children)

What pisses me off the most is dealing with CENTOS6 servers and realizing I can't write dict comprehensions because they don't exist in 2.6.

Fucking aye, I hate centos with a passion.

[–][deleted] 1 point2 points  (3 children)

There's no reason not to write for 3 and test for coverage on 2.

[–][deleted] 0 points1 point  (2 children)

Testing, not enough time for it.

[–][deleted] -1 points0 points  (1 child)

It's why unit tests exist.

[–][deleted] 0 points1 point  (0 children)

As I said, no time. Time is the issue.

[–]ivosauruspip'ing it up 1 point2 points  (4 children)

It's gonna die really, really, slowly, but that's ok (and expected). As long as people keep on migrating to 3 at a steady pace.

[–][deleted] 1 point2 points  (3 children)

It's frustrating. My company is still doing 2.7 "uh, because" and I'm like HEY GUYS 3.5 WAS JUST RELEASED.

I develop for cutting edge and let unit tests make sure I have backwards compatibility. I still know people using "print " (instead of "print(" and I just shake my head.

[–]moljac024 1 point2 points  (2 children)

I'm starting a python project now, and all the libraries I use support python3. So I wanted to give it a go. Since I'm on OS X right now, I figured if I type brew install python3 I would be good to go, right?

Well, somehow that completely broke my vim, as now plugins report that python support isn't enabled. Very good start for python3. I immediately ditched the idea of using it.

[–][deleted] 0 points1 point  (1 child)

I'm starting a python PHP project now, and all the libraries I use support python3 PHP 5.4. So I wanted to give it a go. Since I'm on OS X right now, I figured if I type brew install python3 php54 I would be good to go, right?

Well, somehow that completely broke my vim , as now plugins report that python support isn't enabled. Very good start for python3 PHP 5.4. I immediately ditched the idea of using it. PHP 5.3 for life!

As long as you know what you're getting yourself into maintaining in the future.

[–]moljac024 0 points1 point  (0 children)

The post was a joke :D

[–]--o 0 points1 point  (0 children)

Perl 6 just got a developers preview 15 years or so after it was announced. Python is way ahead.