Migration to Python 3.x

Emmanuelle Gouillart emmanuelle.gouillart at nsup.org
Wed Aug 10 04:03:22 EDT 2016


Regarding an estimation of which OS people are using, let me go back to
one of my favorite hobbies :-): looking at the analytics of
http://scikit-image.org/. What it says in terms of OSs:

- 54% of Windows users
- 26% of Linux users
- 20% of OSx users

These statistics are pretty stable over the period where we have
analytics (since last fall). We have 20000 unique visitors on the website
every month, enough to make statistics!

So, the number of Linux users is certainly smaller than the number of
users for which the overwhelming solution will be Anaconda, but it's not
ridiculous either. Also, people working on a cluster with no Internet
access will not visit the website from the cluster, so it's rather an
underestimation of Linux users. And it's likely that a majority of Linux
users are running 2.7 (because of
https://www.python.org/dev/peps/pep-0394/).

I completely agree that it would be great to obtain statistics about
who uses Python 2.7 or 3.x but I can't see an easy way to do it. Could we
have a button on the website linking to a small form asking whether
people are using Python 2.7 or 3.x? Maybe it has already been mentioned
on the mailing-list.

I think the decision boils down to a developers vs. users dilemma --
let's face it, a very classical problem in open source :-). Personally, I
think that scikit-image is far from having reached its potential in terms
of number of users, and that multiplying the number of users by a
factor of 10 is perfectly feasible. Therefore, my personal goal, as a
developer, is rather to focus on the growth of the userbase, meaning
better usability, more documentation, more outreach, etc. I find it much
more satisfying to see the userbase grow than to be able to use the new
features of Python 3.5 -- in an ideal world, we'll have the two, of
course. Letting down 1/4 of users who won't benefit from new features
is no small decision. 

That said,

1) if there is an important frustration from at least two of the most
active developers of scikit-image, we'll have to make this move soon
enough, much earlier than 2020 clearly.
2) so, to estimate when the change should happen (0.14, 0.15?), we need
to evaluate the "economics" of such a decision. How many users are going
to be impacted? How much development time are we losing by not switching
right now? How do we balance these two factors (or others)?  

All the best,
Emma

On Wed, Aug 10, 2016 at 06:14:45AM +0200, Johannes Schönberger wrote:
> In my experience, many of the scikit-image users I know are actually less knowledgable about how to setup a new Python environment from scratch. And it seems the latest Ubuntu is still on 3.4 and Mac also doesn't ship with 3.5 - which leaves out the @ syntax anyway. Also, many of the cluster users are still stuck on 2.x for quite a while. I think, we will lose a significant amount of users without a real benefit. 

> I don't see a compelling reason to lock out X% of users at this point. I can only judge by the feedback in this thread, but 3 out of 5 people seem to have problems with the proposed way forward. It would be nice if there was some way of obtaining installation statistics from PyPI or Anaconda to get a better picture here. 

> >> On 9 August 2016 at 19:54, Ralf Gommers <ralf.gommers at gmail.com> wrote:

> >>>> In the grand scheme of things, does Ubuntu matter much for this
> >>>> decision? There are way more Windows and OS X users, so if it's OK
> >>>> for them (which is not a given) then it should also be OK for
> >>>> those fewer and on average more computer-literate Ubuntu users.




More information about the scikit-image mailing list