A survey on the topic got conducted last year by Dan Stromberg. Here are the results (direct link to pdf). People called for a yearly reconduction, here it is for 2014.

There were 6746 respondents, up from 4790 last year.

One can play with the dataset on Statwing. Here is an automatic quick recap. This report will focus on year-to-year evolutions.

If you find the graphs ugly, please help me make it better.

Results

Overall the transition is still going, with a 10 points increase in people writing primarily python 3.x code. It still does not beat python 2.x on personal projects.

Have you ever written code in Python 2.x?

nearly everyone

Have you ever written code in Python 3.x?

+15 points, now more than 75%

This is great! At that rate by 2017 everybody will have written some python 3...

Do you currently write more code in Python 2.x or Python 3.x?

1/3 of python 3

+10 points is great. It if were linear it'd mean we're only halfway through but I'd rather think we're close to a tipping point.

When starting a personal project, which Python version do you use?

close win for python 2

Python 2 is still winning, maybe for the last year?

Which Python versions do you regularly use?

2.7 and 3.4, duh

I feel for the ones stuck on 2.5. Hey look, 3 is a real language for sure: it is accumulating bagage, with nearly 200 respondents regularly using python 3.2!

Do you think Python 3.x was a mistake?

nope

The evolution here is a bit hard to explain, for the new option "No, but a more gradual transition would have been better" has probably taken votes from both "Yes" and "No".

Have you ever ported code from Python 2.x to Python 3.x?

nearly 40%, small increase

I was expecting a bigger increase, given the greenification of the Wall of Superpowers. Does that mean it's (globally) always the same ones who port the code?

Have you ever written/ported code using 2to3?

nope

Have you ever written/ported code using 3to2?

noone

Have you ever written/ported code to run on Python 2.x and Python 3.x unmodified?

30%, stable

I was expecting this figure to be higher. Sound like apart big libraries, few are those who bother with that path.

If applicable, what keeps you from leaving python 2 for python 3?

dependencies is #1

Other responses include:

  • distro still based on python 2 (RHEL, Debian, Ubuntu, OS X): 44
  • unicode: 30 (both "I don't like it in py3" and "we handle it poorly with
  • Google App Engine only supports python 2: 25
  • hating on print(): 23 python 3, transition causes too many problems" meanings)
  • lazyness: 13 (I believe it in the sense of "I am lazy", not "map & co. being lazy")
  • performance: 11

This is it! Until next year. Feel free to note any question that's is missing in your opinion.