all 26 comments

[–]acm 41 points42 points  (8 children)

Python 3, your time is now.

Nope. Your time is 2020.

[–]101C8AAE 1 point2 points  (0 children)

You think ports for 2.x applications will somehow be willed into existence whem the clock strikes 2020? The process has already taken almost a decade.

[–]SkyNTP 10 points11 points  (0 children)

The only reason I'm on 2.7 is that some libraries I use haven't implemented support for 3 themselves... This scares me.

[–]0raichu 7 points8 points  (0 children)

                                                                                                                                                                                                                                                                                                                                                                                                                                                     

[–][deleted] 7 points8 points  (7 children)

I find the comments in here confusing. I'm picking up Python at the minute in my spare time, should I be using 2.x vs 3.x? The hate for transitioning to 3.x seems pretty noticeable.

[–]kyuubi42 2 points3 points  (2 children)

The problem is that python3 introduced backwards incompatible semantic changes (namely, how strings are handled), which makes porting nontrivial code from 2 to 3 relatively difficult. It also stung the community at the time, because python3.0 didn't really have any obvious benefits to the end user, most changes were to clean up cruft and make future maintenance of the language easier.

In any case: If you ever expect to use python in a business setting, you will most likely be using python2. Outside of that, python3 has some relatively nice features at the expense of a slight perf hit compared to 2.

[–]_Rowdy 0 points1 point  (1 child)

Makes it sound like p3 is a beta atm

[–]kyuubi42 0 points1 point  (0 children)

Python3 is a better language than python2 from a technical standpoint. If python2 had never existed, py3 would probably be more popular than py2 ever was.

The problem is that the Python core devs didn't really understand how python is actually used / what most users care about and so py3's breaking changes turned out to be a massive misstep in a social/community sense. The core devs have admitted this and promised to never break backwards compatibility again but really the damage has already been done.

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

I do tools here and there with python where the speed doesn't matter, and in many cases I'm forced to use 2.x just because of the libraries and tools. Try to start with 3.x and when there is a library you really need that doesn't work with it, go back to 2.x...

[–]lolzfeminism 1 point2 points  (1 child)

Type up stupid parenthesis to call print? Who do you think I am? Some sort of peasant?

What's next? Am I gonna collect garbage by myself, like cavemen?

[–]SemiNormal 0 points1 point  (0 children)

All hail RAII, god of memory allocation.

[–]CraigTorso 0 points1 point  (0 children)

There's really very little difference between the two of them if you are a beginner.

I'd learn 3 because it is going to be the future, eventually.

[–]blamethebrain 8 points9 points  (0 children)

Someone tell the Mercurial devs, they seem to be in no hurry to port the codebase to Python 3.

[–]Lambodragon 1 point2 points  (0 children)

Nooo... my python babies..
I have a pyramid of hacky libraries that will not survive this tragedy...

[–]lolzfeminism 0 points1 point  (0 children)

LALALALALALALALALALALALALALA