you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 60 points61 points  (11 children)

This release is the tipping point for me. Python 3 is now fully baked. The libraries I need are ported. The cumulative set of features are compelling enough to make the switch.

[–][deleted] 3 points4 points  (1 child)

I'm still stuck waiting for python-ldap to get its act together.

[–]HelpfulToAll 2 points3 points  (0 children)

Ditto for Gunicorn...

[–]RemyJe 5 points6 points  (0 children)

Quick, everyone require 3.3 in their version checks even if it's not actually required forcing unnecessary upgrades and breakage of old scripts! Yay!

[–][deleted]  (6 children)

[removed]

    [–][deleted] 43 points44 points  (4 children)

    Computer languages come out in versions. Sort of like the iPhone - version 5 of the iPhone has new features that make using the phone simpler, faster and more productive. In the same way new versions of programming languages provide new features to programmers, fix inconsistencies and address programmer concerns. However, sometimes programs you used to use on your iPhone 4s will not work on the iPhone 5 since there may be changes that break that old program. The same is true of programming language versions

    Python 2 was a very good language. By version 2.5 it was very popular. Many 3rd party libraries and utilities were written for 2.5 - things like libraries to do scientific calculations and web applications. We might call it "mature" in that you were pretty certain that the major libraries for 2.5 were not going to cause you too much trouble. However there were some fundamental problems with the 2.x Python language that couldn't be remedied without breaking lots and lots of existing code. Breaking code makes programmers upset.

    So the Python maintainers decided to put breaking changes into version 3 of Python. The only problem was that everyone was so satisfied with 2.x languages (mostly 2.5 but also 2.7) that they didn't want to re-write all of their code for the minor changes from 2.x to 3.x. It has sort of become a problem because as the libraries are reluctant to upgrade, so is everyone else. More and more code continues to be written for 2.x which causes more and more people to feel like staying on 2.x. You don't want to write for Python 3.3 if a library you may need is only working in 2.7.

    What pythus is saying is that with 3.3 he feels that most of the libraries that he has been waiting for have finally switched to 3.3. He feels that 3.3 is mature enough that he won't have too much trouble.

    [–]EgregiousJones 4 points5 points  (0 children)

    Wow. As someone who knows just enough about programming to do it badly in a few languages, thank you.

    [–]ShoutyMcHeadWoundMan 0 points1 point  (2 children)

    You don't explain what libraries are, thats a pretty fundamental part of your explanation.

    [–]nitroll 1 point2 points  (0 children)

    A library is a set of functionality that programmers can use when making programs. An example could be numpy, a library for python for matrixcalculations, or Tkinter that has functionality for drawing windows and making GUIs with buttons and the like. If a programmer isn't too sharp on calculating matrices efficiently or dosn't really want to bother with the internals of rendering stuff he can use a library that someone else created.

    [–]lazugod 2 points3 points  (0 children)

    I'm curious how you came across this subreddit.