3 ms·
Python 3 was a debacle that nearly destroyed the Python ecosystem due to egregious incompatibilities when it was decided that, not only could they fix a few imp
by saurik 11mo ago
Python 3 was a debacle that nearly destroyed the Python ecosystem due to egregious incompatibilities when it was decided that, not only could they fix a few important things, but in the process they might as well throw backwards compatibility entirely away and encourage people to treat it as a new language. It was over a decade between Python 2 being declared dead and Python 3 being usable, and many of the key groups of people who actually used Python during that time actually did give up and move on: as an example, if it were not for that mess, Python would likely own web development. And the big corporate backer that helped popularize it in production -- Google -- largely did give up, and started working on Go, while the community focussed on stuff that Google thought was not just a waste of time but made their efforts constantly break. That data scientists (including at Google) appeared to give it a new life in machine learning was super lucky.
I dunno... maybe read this? (edit: I forgot to add the link, lol; I have now added it ;P.) If you weren't there at the time, maybe it is easy to pretend none of this had happened, but it was a super big deal and there were the same kinds of bullying campaigns to get people to upgrade even when stuff was clearly slower and more broken and you knew it would become easier to port later.
https://gregoryszorc.com/blog/2020/01/13/mercurial%27s-journey-to-and-reflections-on-python-3/ https://gregoryszorc.com/blog/2020/01/13/mercurial%27s-journ...
Frankly, it all started to finally turn around in the Python 3.3-3.7 timeframe, with the biggest turning points being 3.6/3.7, which is when Guido finally was cracking under community pressure against his agendas and decided to start forming a committee to manage the language, before stepping down... until just now I hadn't realized that that was probably the thing that truly saved that language.
- dxdm 11mo agoI picked up Python around 2.5 and went through the migration to 3. Although it was not smooth and took a while on the whole, it was very painless for me, and in my environment I did not experience it as such a big almost-catastrophe as you describe it. Python is better for it, and personally I'm very grateful for the Unicode compatibility breakage they did. I get that your experience may have been different, and I appreciate that the transition cannot be said to have gone well (despite ending well); but nevertheless I feel that using words like debacle paints an overdramatic picture that suggests an outcome far removed from where Python is today, and it does not leave much linguistic room for the multitude of possible worse occurrences that would truly deserve to be called a debacle. But that's of course just my opinion.
- saurik 11mo agoI guess, in my mind's eye, I see a world in which Python dominated, and that didn't happen: it didn't die the death Perl did, but, in the grand scheme of where it was going -- and even what it had been -- it has become a very niched language: we now only really see it in education, machine learning, and (sometimes) system administration (but even that has been losing to Go). It didn't entirely disappear, and it actually got where it was going (unlike Perl 6), but it seems very strange to say it "ended well"... they squandered a decade on some really bad decisions that they only started to undo around 3.3-3.7, and the ecosystem simply moved on (in some cases quite forcefully, such as Google going to great lengths to get off of Python via Go). What else can we call such a fall from grace? If not somehow a debacle it is certainly a tragedy...
- dxdm 11mo agoMaybe I am just in a happy little Python niche, then. I'm saying this in all earnesty. Maybe Python could have been bigger, I don't know. It still seems very present, it did not die, but came out better than before. Given the performance difference between Python and Go, and the rationale given for its invention, I'm not convinced Google would somehow have a chosen Python as their blessed language, as you seem to suggest. Anyway, we seem to have different measuring sticks for things like debacles and tragedies. :)