26 votes

Why I'm not collaborating with Kenneth Reitz

19 comments

  1. [11]
    Adys Link
    Was about to post this article myself! I'm not surprised at all to read this article. Nearly every single interaction I've seen Kenneth Reitz have has been shitty. To myself and to other people....

    Was about to post this article myself!
    I'm not surprised at all to read this article. Nearly every single interaction I've seen Kenneth Reitz have has been shitty. To myself and to other people. Pipenv was the project that really opened my eyes to his awful behaviour; between his hostility on the issue tracker and his complete disregard for commit health (which shows a lot of disrespect towards other contributors who are asked to put in effort), I at first figured he's just a shitty person who writes good software.

    Then after my mediocre experiences with Pipenv itself, I figured he simply got lucky with requests.

    … now with this article, it sounds like he isn't even the person who wrote most of the good parts of that library. He just did some decent API design.

    But beyond that, I'm very glad to see someone calling out the mental health excuse. Mental health issues are no excuse for shitty behaviour. I say that as someone who in the past used my own mental health to excuse shitty behaviour, it leads nowhere good and those who defend shitty behaviour based on that are making things legitimately worse for themselves and the person with the issues.

    18 votes
    1. [4]
      cadadr Link Parent
      This person's issues are serious. On one particular job board, he's looking for an "ambassador" trainee for himself. I mean, sure, you need assistants if you're in a situation where you have to...

      This person's issues are serious. On one particular job board, he's looking for an "ambassador" trainee for himself. I mean, sure, you need assistants if you're in a situation where you have to deal with many people constanly, like celebs or professors or managers, you may need them, but the author of some Python library is hardly there. And it is not even an assistant, it is an "ambassador". Honestly, I haven't stumbled upon such narcissism in my life before.

      There is urllib in Python, which is nice. I've been using poetry for a while to manage my Python 3 project, and it is really good (handles deps, packaging, publishing, tests etc., I'll soon document my experience in a blog b/c it's new and a bit obscure currently, and I have some solutions to problems integrating it to a basic workflow). I would not touch a thing this guy made, and I haven't read the blog post yet.

      13 votes
      1. [3]
        Adys Link Parent
        Yikes, hadn't seen that job posting before. Poetry is very promising and I'll probably give it a shot soon. But requests is still an excellent library, I don't see the point of using urllib tbh.

        Yikes, hadn't seen that job posting before.

        Poetry is very promising and I'll probably give it a shot soon. But requests is still an excellent library, I don't see the point of using urllib tbh.

        6 votes
        1. [2]
          cadadr Link Parent
          TBH I've not used either (a project I worked on a few years ago may have used requests, but I'm sure I did not touch that part of the code, so doesn't count I guess), so haven't compared before....

          But requests is still an excellent library, I don't see the point of using urllib tbh.

          TBH I've not used either (a project I worked on a few years ago may have used requests, but I'm sure I did not touch that part of the code, so doesn't count I guess), so haven't compared before. But even if there is a big gap w.r.t. usability, I'd wait until the project was forked and not anymore publicly associated with a crook that pocketed $30k donations and has apparently been manipulative and explotitative to many people.

          2 votes
          1. Adys Link Parent
            Well Reitz has no release access to requests anymore, so that's that. If you feel so strongly that you don't even want to use something associated with him though, I'd say you might be better off...

            Well Reitz has no release access to requests anymore, so that's that. If you feel so strongly that you don't even want to use something associated with him though, I'd say you might be better off with a different language because, for better or worse, he's a household name in the Python community.

            It's a ridiculously good library that should probably be in the stdlib (though the stdlib gave its reasons why it wants it to remain separate; I disagree with them). Don't mistake the art and the artist: Same thing I say with people who refuse to play Minecraft because Notch is an arse.

            3 votes
    2. Akir Link Parent
      Just to specifically quote the article: I'm also very glad to see this. A lot of the shittyness from my childhood was because my father, who we later found out had diagnosed schizophrenia. So to...

      But beyond that, I'm very glad to see someone calling out the mental health excuse. Mental health issues are no excuse for shitty behaviour.

      Just to specifically quote the article:

      Illness does not erase the harm someone does to others, or their responsibility for their actions.

      I'm also very glad to see this. A lot of the shittyness from my childhood was because my father, who we later found out had diagnosed schizophrenia. So to hear someone talk about it and say those words feels cathartic. Mental issues may force you to act badly at times, but they don't prevent you from apologizing for causing harm.

      7 votes
    3. mrbig (edited ) Link Parent
      Some of the most wonderful people I've met had mental health issues, ranging from "regular" depression to schizophrenia. There are exceptions, though. Example: Borderline Personality Disorder can...

      Mental health issues are no excuse for shitty behavior

      Some of the most wonderful people I've met had mental health issues, ranging from "regular" depression to schizophrenia.

      There are exceptions, though. Example: Borderline Personality Disorder can actually turn you into a terrible person. And they usually won't accept treatment. It's bad.

      4 votes
    4. [4]
      vivaria Link Parent
      As someone relatively new to version control and python development, could you expand on the commit health link? I'm not sure what to make of it, but I think those areas are where I'm going to be...

      As someone relatively new to version control and python development, could you expand on the commit health link? I'm not sure what to make of it, but I think those areas are where I'm going to be career-wise for the foreseeable future, so I would love some insight.

      4 votes
      1. [2]
        Adys Link Parent
        Here's some resources: https://about.gitlab.com/2018/06/07/keeping-git-commit-history-clean/ https://juffalow.com/other/write-good-git-commit-message Discussion on HN (top comment is me):...
        5 votes
        1. vivaria Link Parent
          Ah, gotcha! "Keep commit history clean" == "Make organized commits with descriptive but concise commit messages." Admittedly I didn't look close enough at his messages, and dear lord. I can see...

          Ah, gotcha! "Keep commit history clean" == "Make organized commits with descriptive but concise commit messages."

          Admittedly I didn't look close enough at his messages, and dear lord. I can see why you thought to point that out. shudders

          5 votes
  2. [3]
    Deimos (edited ) Link
    Here's Kenneth Reitz's response post: http://journal.kennethreitz.org/entry/conspiracy

    Here's Kenneth Reitz's response post: http://journal.kennethreitz.org/entry/conspiracy

    11 votes
    1. [2]
      cadadr Link Parent
      Thanks! I don't feel like I trust this guy. What do you and other tilderinos think about it?

      Thanks!

      I don't feel like I trust this guy. What do you and other tilderinos think about it?

      1 vote
      1. lionirdeadman Link Parent
        I personally would stay far away from him. From what I can read from him (directly or other sources), he seems to have quite the ego and very "brandy", his posts feel like I'm reading from a...

        I personally would stay far away from him. From what I can read from him (directly or other sources), he seems to have quite the ego and very "brandy", his posts feel like I'm reading from a corporation and it's kind of unsettling to say the least. He doesn't really come off as human.

        4 votes
  3. cadadr Link
    As an aside/offtopic link, I want to mention gaslighting, which is a concept I learned about thanks to the mentioning of the term in the content warning at the top of the blog post; it was...

    As an aside/offtopic link, I want to mention gaslighting, which is a concept I learned about thanks to the mentioning of the term in the content warning at the top of the blog post; it was something I only learned about today (tho given it's a common thing, I probably saw examples of this before but did not know it was a frequent pattern of malicious behaviour). To quote the incipit:

    Gaslighting is a form of psychological manipulation that seeks to sow seeds of doubt in a targeted individual or in members of a targeted group, making them question their own memory, perception, and sanity. Using persistent denial, misdirection, contradiction, and lying, it attempts to destabilize the victim and delegitimize the victim's belief.

    9 votes
  4. anowlcalledjosh (edited ) Link
    Discussions on other platforms: Hacker News (seems to have been knocked off the front page, presumably by flags it is now flagged), reddit

    Discussions on other platforms: Hacker News (seems to have been knocked off the front page, presumably by flags it is now flagged), reddit

    4 votes
  5. aphoenix Link
    There was an update about Requests which was shortly thereafter removed.

    There was an update about Requests which was shortly thereafter removed.

    4 votes
  6. Macil (edited ) Link
    I think the first half of the article presented things weakly that probably aren't so bad on their own. It seems like a big part of the conflict in the first half is that the author of this...

    I think the first half of the article presented things weakly that probably aren't so bad on their own. It seems like a big part of the conflict in the first half is that the author of this article is interpreting the donations as being for Requests 3 development in general, and Reitz is treating the donations as "pay me so I can spend time focused on Requests 3". Maybe he did a bad job as presenting it as that. Maybe he didn't realize anyone would interpret it differently than that since it was specifically posted on his own site rather than through the PSF channels. It's fair to criticize him on doing that badly, but I feel like the article isn't even entertaining this idea.

    I find it really weird that the article goes on about him spending $5k of the money donated to him on a computer. Even if the $28k was to go toward multiple developers working on Requests, it's weird to assume that $5k going toward paying him was too much. If you assume the average programmer salary is $90k (a random ballpark number I saw somewhere), then $5k pays for less than a month of work from him. Unless he said it was purely going to go toward server costs or unless he's really not put a month of work in, it's weird for the article to guilt him over that.

    Now of course there's the question of whether he's qualified to do all the work he said he'd do if he got the donations. I think the article did an okay job at bringing that up in parts like this:

    Something I keep thinking about: the first time I talked to him about async in Requests, months before the fundraiser, he made a strange comment: he pointed out that he was totally dependent on me to implement this

    If you look at the maintainers list on PyPI, you'll see he doesn't have PyPI rights to his own project, because he kept breaking stuff, so the real maintainers insisted on revoking his access.

    EDIT: On the reddit thread, someone mentioned that he explains in Talk Python To Me podcast episode 208 that he removed his publishing rights because he thought they made him an attack vector for people wanting to compromise the package. This line seems misleading or uncharitable now. It's not strictly necessary for a maintainer on a project with multiple to technically be the one who pushes new releases.

    I also learned that he has a history of selling premium support contracts for Requests, where he took the money and then delegated the actual work to unpaid volunteers.

    3 votes
  7. lionirdeadman Link
    God that's awful... I'd never heard of him before and it looks like that was a good thing, huh.. I have to wonder what will happen now, is everything gonna go back to how it was soon or will his...

    God that's awful...

    I'd never heard of him before and it looks like that was a good thing, huh.. I have to wonder what will happen now, is everything gonna go back to how it was soon or will his reputation be destroyed? I guess only time will tell.