Noob in Python. Problem with fairly simple test case

Steven D'Aprano steve at
Fri Jul 17 08:38:38 CEST 2015

On Fri, 17 Jul 2015 02:15 pm, Rick Johnson wrote:

> On Thursday, July 16, 2015 at 9:44:56 PM UTC-5, Steven D'Aprano wrote:
>> [...] My take from all this is that overall, Python 3
>> take-up is probably > around 10% of all Python users,
> All that rambling just to agree with me? My educated guess
> is a minimum of 75% still using Python2.x. But i'll take
> your 90% because it makes my argument stronger! O:-D

75% or 90% is not a "vast majority". Vast majority implies more than 99%.

But regardless of the precise meaning of "vast", if you want to dismiss one
in four people (25%) or one in ten (10%) as inconsequential, then you've
got some serious issues.

> Well i'm not "actively hostile" to py3 by any means, i just
> can't risk the upgrade at this time.

You can't "risk" the upgrade?

What precisely are you afraid of?

>> The take-up rate of Python 3 is about where we would
>> expect after less than seven years:
> Well, that's one way of coping with it. I know a lot of
> folks worked hard to get Python3 up and running, but they
> need to realize that these sort of transitions take time.

Rick, you're being patronising.

Before even a single line of code was written for Python 3, Guido and the
core developers knew that there would be a long migration path from 2 to 3.
Hence the parallel versions, and the long transition plan:

* Python 2.6 and Python 3.0 came out more or less together, and 2.6 was
explicitly designed as a transitional version with a number of Python 3
features available via __future___ imports;

* Python 2.7 has an extended maintenance period; instead of the usual 2-3
years, 2.7 will be maintained for 10 years (until 2020);

* there will also be at least three more years of commercial third-party
maintenance available from companies like Red Hat.

The core developers don't need to be told that "these sort of transitions
take time". They predicted almost from the beginning that it would take 10
years for the transition. They didn't commit to a long period of parallel
versions because they *like* having twice as much work to do.

> Heck, there is always the possibility that Python3 never
> gets any real traction. Until it's usage reaches 50%, it's
> only spinning tires in the mud, digging a deeper hole.

That's nonsense. Spinning tires implies no forward motion. Python 3 usage is
*certainly* moving forward: we've gone from the situation in 2008 of nobody
using it, to the current situation where there's lots of activity around
it: students learning on Python 3, books about it, the avant-garde and
early adopters have already moved to Python 3, and the majority of
libraries also support Python 3.

The chances of that forward motion coming to a stop are very slim. The work
being done on async and concurrency for Python 3.5 is getting lots of
people excited, and Red Hat and Debian have committed to migrating to
Python 3. Where they go, Centos, Fedora, Mint and (probably) Ubuntu are
sure to follow, and quite quickly too.

My guess is, the rate of Python 3 adoption is going to hit the tipping point
in 2 or 3 years, after which time it will be *very* rapid.

> Not to mention the elephant in the room: We have been moving
> towards mobile and cloud ubiquity, and this trend is not
> going to stop. If Python wants to survive it had better
> start adapting, and adapting fast. If not, it shall become
> just another forgotten language relegated to obscurity
> within the dark corners of academia.

Yeah, right. Like academic computer scientists use Python.

Whatever way you look at it, Python is one of the top 10 programming
languages. It's at no risk of becoming forgotten any time soon.


More information about the Python-list mailing list