1. 11

  2. 10

    Have you ever had a bug report where you ask users to upgrade your libraries dependencies ? Do the same with Python. If a user make a bug report with Python 2.7 ask them if they can reproduce with an up-to date version of Python, even if the bug is obviously from your side [emphesis mine]. If they really can’t upgrade they will know, if they do and can reproduce, then you’ll have at least converted one user from Legacy Python (and in the meantime you might have already corrected the bug).

    This really rubs me the wrong way.

    1. 5

      This really rubs me the wrong way.

      Many of the things there do. It seems like a dishonest campaign which feels quite sleazy.

      1. 6

        Agreed. I didn’t even make it to the end before closing the tab in disgust. Your comment made me go back and look again, and then I saw the part about where they apparently had even at one point considered making python2 code slower on purpose. That seems beyond sleazy to me. Why would someone even consider that?! Just make your library code python3 only and stop supporting python2 at all at that point, wtf.

      2. 3

        Yeah. I agree, the article could have been much better written, but I can appreciate some of the ideas being expressed.

        The Python language community is fighting pretty hard to get everyone to move to Python 3. Momentum was slow to build but the move is happening now. Many of us who love Python really, REALLY don’t want to see it become another Perl.

        Per 6 shipped. Nobody cared.

      3. 5

        Agreed with @trousers @leonidas. This is a very adversarial position and surprises me extremely since this comes from “data scientists” who of all people should be sympathetic to the tension between individual users who would love to upgrade to Py3 but can’t because their department/company cluster is on Py2 because it’s on an older version of linux, because of special hardware and so on down the chain.

        I can understand the statement “Sorry, but we’ve moved to Python 3 and will no longer support Python 2” but going out of your way (I stopped reading where is said “Sprinkle with function annotation”) to sabotage folks who may want to take your library and backport it to Py2 because they HAVE TO, not because it’s “fun” is a very, very anti-social stance.

        To turn the advice this article puts forth on it’s head: Folks, please don’t listen to this article. Yes, it’s difficult to support both Py2 and Py3, and if you wish move to Py3, but know your audience first. And don’t sabotage others. It’s not a professional or ethical thing to do.

        1. 3

          So I'be been told in person that they were at least partially joking about most of this. That said, I agree that it indicates a user-hostile attitude about this stuff. Since this came out the rhetoric regarding the py2/py3 transition has grown more tempered.

          1. 3

            Taken at face value this looks like the sort of “social pressure & propaganda” Zed Shaw was complaining about recently. Hopefully this was intended to be tongue-in-cheek?

            1. 2

              I (would like to) think it’s completely ironic. As a way to criticize the complaints about the slowness in the transition from py2 to py3.

            2. 1

              I thought the bit about asking if they want to upgrade when running the interpreter was a good idea, but his English needs some serious help there.

              Warning you are starting a Legacy Python interpreter. Aren’t you sure you don’t want not to upgrade to a newer version ? [y]:_

              1. -2

                Python is dead

                Update: Why the downvote? It’s quite obvious to me that Python is not a language you can trust going forward and there are plenty of good alternatives out there (Go, Swift, Nim, Elixir, etc). Why they have destroyed a perfectly nice language is beyond me.

                1. 5

                  Saying “X is dead” in the technology world is pretty much a no-op. It’s a statement devoid of any actual purpose other than trying to make a splash.

                  Want proof? Google “Java is dead” and then actually look at just HOW MUCH JAVA is being written every day, all the time, in enterprise environments.

                  1. 0

                    I don’t claim that Python is dead because I don’t like it. The opposite is true, but why put a lot of time and effort into learning a language that is degrading and where the maintainers obviously don’t care about the users. I am looking for alternatives and I think a lot of people are. That’s why I believe it’s dead. Golang looks promising.

                    1. 3

                      a language that is degrading

                      Have you looked at the new Python 3 stuff? Things have been getting awesome, especially with Python 3.5 and beyond.

                      1. 1

                        I guess I haven’t really %]

                  2. 5

                    By some measures, python is currently the third most popular language on github, behind Javascript and Java: https://octoverse.github.com/. Just saying “Python is dead” is low-effort. Please back up your extraordinary claims or expect downvotes.

                    1. 1

                      Fair enough.

                    2. [Comment removed by author]

                      1. 1

                        Python quiz: does a datetime test true or false?

                        I’m curious where you were going with this. datetime values are True in both Python 2 and 3, as you would expect. Are you saying they shouldn’t be? Or that it’s ambiguous? Or something else?

                        1. [Comment removed by author]

                          1. 1

                            That issue is with regard to time not datetime (bool(datetime(2016,12,6,0,0)) is True) and that behavior both intentional and in line with what you’d generally expect: the time type’s “zero” value is falsy. I think there are many things to complain about when it comes to Python (and I like the language!) but this is not one of them.

                            1. 1

                              in line with what you’d generally expect

                              It most certainly is not, which is why that bug was declared as such and fixed. Midnight is not “zero time” in any meaningful sense.

                              I agree that bug isn’t really serious criticism of Python; it’s a design decision that was insufficiently well-considered early on, then eventually revisited and changed. There are tons such in any language, and this one is only notable for sounding silly in summary.

                            2. 1

                              IMO some types can be coerced to a logical type legitimately and others can’t. I’d prefer that datettime.time objects raised TypeError instead.

                          2. 1

                            IMO Python is hated by so many hard core programmers because it’s not meant for you. It’s meant to be the programming language for the rest of us, and that shows in its design.

                            1. 1

                              Who do you mean by “the rest of us”? Have you ever tried to format a Unicode string in Python 3?

                              1. 1

                                u = ‘abcdé’ u ‘abcdé’

                                Next problem?

                                (Note: I realize this isn’t what you’re talking about, but - glib calls to glib :)

                                1. 1

                                  I guess I was trying to make the point that Python 3 isn’t that great for noobs either - despite being used a lot as an introduction language.

                                  1. 1

                                    I disagree, and would argue that universities and other teaching programs all around the world use Python as their intro to programming languages for a reason.