On Fri, 8 Sep 2017 10:51 pm, Chris Angelico wrote: > On Fri, Sep 8, 2017 at 10:42 PM, Marko Rauhamaa <ma...@pacujo.net> wrote: >> Chris Angelico <ros...@gmail.com>: >>> But as others have said, upgrading to 3.4+ is not as hard as many >>> people fear, and your code generally improves as a result >> >> That's somewhat irrelevant. Point is, Python 2 will quickly become a >> pariah in many corporations during or after 2018, and we are going to >> see emergency measures similar to the Y2K craze twenty years ago. >> >> The risk to Python will be whether the occasion is exploited by fanboys >> of competing programming languages. The migration from Python 2 might be >> to something else than Python 3 in some circles. > > And the sky is going to fall on Chicken Little's head, any day now. > > Let's see. You can port your code from Python 2.7 to Python 3.6 by > running a script and then checking the results for bytes/text > problems. > > You can port your code from Python 2.7 to Ruby by paying developers > big bucks for a good while. > > Advantage: Ruby, obviously, because it's easier to change languages > than to audit your code for places where you had lurking bugs that you > didn't know about.
People do irrational things all the time. When faced with the likelihood of a relatively easy migration from Python 2 to 3, with a small[1] chance of it blowing out, versus re-implementing the entire app in a completely different language, we know that a certain percentage of people will swap languages even if it makes no economic sense. They will underestimate the cost of re-implementation, and overestimate the risk of a blow-out, because this is really just an excuse to do what they've wanted to do all along: use a different language. Or because somebody in management heard from somebody on LinkedIn that they heard on Facebook about something they read in some trade magazine about some company that lost billions porting their Python 2.9 app to Python 3.0 and besides everyone knows that Python 3 is a failure and Ruby on NodeJS is the new hot thing that everyone is using. To be perfectly rational, we *should* consider at least three alternatives: (1) Stick with Python 2 and pay for support; (2) Migrate to Python 3; (3) Re-implement in some other language; and make a dispassionate choice according to which one has the best cost/benefit ratio. And that choice won't always be #2. [1] Depends on the code base, and the developers. -- Steve “Cheer up,” they said, “things could be worse.” So I cheered up, and sure enough, things got worse. -- https://mail.python.org/mailman/listinfo/python-list