4 ms·
Why can't those who want to use Python3 just use 3? Why do they have to push the rest of us over? This read as war against the silent majority to me. The tran
by BuckRogers 12y ago
Why can't those who want to use Python3 just use 3? Why do they have to push the rest of us over?
This read as war against the silent majority to me.
The transition has failed. Python is now 2 separate communities and we only have the 'leadership team' to thank for that. Until they make more compromises this will continue.
That ~17% userbase is your new Python3 community.
- Animats 12y agoThere's a definite "screw the 2.x users" attitude in the Python community. Report a bug in 2.7 and see what happens. This attitude is encouraged by Python's little tin god.[1] The big excuse for Python 3 is that it does Unicode. Python has done Unicode since Python 2.6; it just wasn't the default. I've been writing all-Unicode Python for about five years. The killer problem is that many package developers, faced with the 2->3 conversion, abandoned their packages. New packages were written by others to replace them. Users are thus forced to convert to using different packages, packages with different bugs and a much smaller user base. I wrote previously on converting a medium-sized production system from Python 2 to Python 3. I was finding bugs in third-party Python 3 packages, bugs so blatant that they would have been found years ago if the packages were being widely used. This was in the web space; the article indicates similar problems in the scientific space. [1] https://www.python.org/dev/peps/pep-0404/ https://www.python.org/dev/peps/pep-0404/
- BuckRogers 12y agoWorse it becomes an emotional plea, "do the right thing". As if not switching sides to 3.x is a moral issue. And the myth that 3.x is in our best interests or "inevitable". The author is fooled into this even though his own numbers show they can't crack 20% even though 3.0 was released in late 2008. Using those numbers, even if the Python3 community doubles in another 7 years they'll still be at 34%. I think that would be an optimistic outlook as many people are simply finding something else to use instead of move to 3. I'd be as interested in Ruby 3.0 or Go as I would Python3. Many programmers for some reason cannot resist technical churn. To me that's what Python3 is. All things considered not better, not worse. Just different. But with the library issue. My guess is Pyston will catch on and maintain the 2.x line after 2020. Pyston may end up the innovation that Py3 wasn't, but without breaking everyone's code. LLVM JIT compiler with C extension support. It's music to my ears and transitioning from being a Python programmer to a Pyston programmer sounds good. I suspect by 2020 it'll be ready as a spiritual 2.8, and the 80%+ will move to that. Only this core dev team could've achieved defeat from the jaws of success by shooting itself in the face.
- Animats 12y agoThe successor to Python 2 may, in practice, be Go. That's the direction Google is going. Google used Python internally for non-speed-critical tasks, but the performance was too low for anything that had to scale. A few years ago Google hired von Rossum, and Google had a project, "Unladen Swallow" to produce a faster Python. It failed.[1] Von Rossum is no longer with Google. Google hired others to develop Go, which seems to be a good language for doing server-side web-related work. It's fast, memory-safe, scales well on multiprocessors, and has lower development costs than C++. That's what Google needed in their business. Google maintains many of the key Go libraries. They're well-exercised production code. This is not the case for Python 3, as I spent a painful month discovering. I have some technical criticisms of Go, but when I write something in Go, it usually works as expected without surprises. You can use Go for important work with confidence. Python 3, six years on, isn't there yet. [1] https://en.wikipedia.org/wiki/Unladen_Swallow https://en.wikipedia.org/wiki/Unladen_Swallow
- maxerickson 11y agoVon Rossum worked on App Engine, he didn't work much on Unladen Swallow. You can see it here: https://code.google.com/p/unladen-swallow/source/list https://code.google.com/p/unladen-swallow/source/list Google hired the Go guys years prior to Unladen Swallow even being an idea, and the first open source versions of Go were available around the time that the Unladen Swallow project plan was put out: http://golang.org/doc/faq#history http://golang.org/doc/faq#history
- BuckRogers 11y agoFailing something like Pyston taking over for 2.x, that is my plan. Going from Py2 (what I currently use) to Py3 doesn't really do anything for me at all. There's the constant threat online from people about 'support' and guilt trips, but the support that matters (library support) isn't going away anytime, if ever, with a 80%+ userbase in 2015. So I'm going to stick with Python2, and if I migrate to anything it'll be Go. Though it'll likely just be also using Go. I've already worked through a book on Go a couple years ago. I have my complaints about it, but I also have my complaints about Python. Nothing is perfect, but Go IS really easy to get started with, which is worth a lot to an individual programmer or to a team. I'm not sure it's flexible enough as a drop-in replacement for Python, but if forced it's good enough to completely replace Python, if this Python2/3 debacle isn't resolved. I'm seeing Python as 2 separate communities now. Of course the Python3 diehards see that as the worst-case outcome, since their community is always the short stick. But I think we're here now and it'll remain this way.