Threads for krainboltgreene

    1. 4

      proven themselves more than willing to censor content based on their own views and personal values.

      They still provide protection for gamergate & nazi organizations and will forward reporter’s information to those organizations.

      1. 3

        Contingent upon a given organization not being the popular boogeyman of the week.

        But even if you think Cloudflare has an absolutely spotless record of providing service without bias, does them (or some other high-capital network mediator) being the centralize bulwark against popular silencing really seem like a good thing?

        1. 2

          No, I’m claiming a particular subset of “nazis” were singled out, because they were more disliked by the public at large Cloudflare refused to serve them, as the post I responded to pointed out Cloudflare doesn’t have a problem with nazis per se, they have a problem with nazis that receive a certain level of public attention.

          And to reiterate, even if you think discontinuing service for whatever reason you think justifies Cloudflare doing that in the past it still confers that power to a for profit corporation that’s highly expensive to replace.

          1. 5

            Downvotes feel inadequate in response to this. I want everybody to notice how this interaction went: Testing the waters with a vague statement that nonetheless picks a side; when called out, the response is to carefully toe the line of not making a surface-level endorsement of Nazis, while still asserting the pro-Nazi framing.

            Lately, I’ve felt powerless to affect lobste.rs culture. I don’t think handing out bans is going to do much, if anything. Lanny is not somebody where I feel there’s enough evidence of ill intent to justify that, anyway, and I’d have to talk it through with jcs - I can only remember one person ever being banned from lobste.rs for conduct. But in a mature, large community, handing out bans just doesn’t do very much to actually change the behavior of anyone who’s still there. When a community gets past a certain threshold, there’s inertia and it’s next to impossible to change the core things it cares about. We passed that threshold here a long time ago.

            But it also makes me angry to just give up. I think anything I can do to move the needle is probably as an ordinary community member, not as a moderator. I’ve got the sysop hat on for this post but that’s because I’m clarifying my stance, not because I’m taking action.

            As an ordinary community member, then, I urge you all - also ordinary community members - to notice what’s going on here, and to recognize the toxicity hiding underneath this kind of thing, and to work on your own strategies for calling it out when you see it. Wanting to be neutral doesn’t exempt us from this.

            Thanks.

            1. 5

              I don’t think either of those comments are pro nazi. I didn’t really feel like having this debate again, about cloudflare right or wrong, but if it’s a mod issue then I have to say I think that’s a very uncharitable read.

              1. 4

                I’ve seen this play out in a lot of places, heh. I am definitely less charitable towards it than I would have been a year ago, based on bitter experience. Generally if you encourage people espousing these views a bit, you can get them to say some clearly-awful stuff.

                What I mean by asserting pro-Nazi framing is that Lanny’s second response goes out of its way to be skeptical of the idea that the Daily Stormer, the site Cloudflare recently refused to host, is run by Nazis. The Daily Stormer calls itself a Nazi group - they use that word for themselves. There’s no reason to be skeptical of that point, unless you’re trying to soften the discussion by backing away from the terminology that has everybody scared.

                I think there’s a lot of valid things to say about who should be gatekeepers for the web. I agree with phessler, though: if that’s the point one wants to make, why pick violent extremists as the group to defend? Why try to condemn Cloudflare’s actions - which were only against that group, and which their leadership team made clear were not going to be a precedent - without any discussion of the actual gatekeeping topic?

                I also want to note that this is somebody who, though they’ve been a member of lobste.rs for three years, has hardly ever posted.

                1. 5

                  carefully toe the line of not making a surface-level endorsement of Nazis, while still asserting the pro-Nazi framing

                  There’s about as much “pro-Nazi framing” in my post as there is in saying “red, white, and black is a nice color scheme”. Nazi’s might agree but that’s about the extent of it.

                  goes out of its way to be skeptical of the idea that the Daily Stormer

                  Where? I quoted the word Nazi because a) the post I was responding to did so and b) I’m not crazy about using the term outside of early 20th century German political movement because I think reducing every form of racism of Nazism risks making racist organizations that don’t adopt Nazi symbolism seem less threatening.

                  If you had bothered to ask my thoughts about the The Daily Stormer I’d tell you I find their views disgusting, but I chose not to go out of my way to condemn them in my post because I would prefer to talk about the issue of centralizing DDoS mitigation strategies in a for-profit company with a questionable track record of impartiality. I also repeated, multiple times, a point I’ve yet to see a response to that even if you think Cloudflare is 100% justified in what they did, this is still an issue.

                  I didn’t realize I needed to add a disclaimer that I’m not a “nazi” to every post that makes any refrence to The Daily Stormer, and frankly I’m offended by what reads an awful like the veiled threat of being banned for failing to do so.

                  1. 6

                    You won’t be banned for that - I thought I was pretty clear that bans are virtually nonexistent here.

                    I honestly don’t know what else to say to this; I feel, usually, like I’m wasting my energy on lobste.rs lately. I don’t know whether I erred with regard to your particular post or not, and I’m just going to withdraw what I said above it because it’s really hard to care.

                    I have a general frustration because, increasingly, I can’t stay away from politics. I understand and respect this community’s choice to, for the most part, exclude it as a topic of discussion. But I don’t have the option to exclude politics from my life, and it’s beyond exhausting trying to exist in a social space where that isn’t a shared understanding. Good luck talking about technology; I’ll be over here trying to help my friends survive.

                    I apologize to any community members who felt this was an inappropriate topic of discussion.

                    1. 4

                      I’ll add that I appreciate when you’re around to help mod.

  1. 2

    It is concerning. Some other solution needs to be found.

  • 8

    Most linters have very strict for no reason rules by default. For example, rubocop requires to add documentation comment before each class or module. Should I write comment for each Rails controller, something like # Controller for blog posts? It requires to use %r{} for regex literals if regex contains / and requires to use // if it does not contain /, which is bad for consistency if there are lots of regexes nearby (I can’t use %r{} for each of them). It forces to introduce false abstractions by requiring method bodies to be no larger than 10 (!) lines by default. And despite it is one of the most well-designed linters.

    csslint (or css-lint, or css_lint, these are different and I confuse them all the time) requires CSS attributes inside selector to be sorted in specified order (i.e. first color, then font, then background), I don’t understand how it can improve maintainability but it improves frustration and anger.

    And mostly these tools can’t catch any bugs or architectural problems, only cosmetic conventions.

    I think they should have more forgiving defaults.

    1. 7

      This is why when adding a linter to a project it’s important to go through the list of rules as a team and decide which rules should be ignored.

      There are many kinds of issues that linters can catch that might be missed during code review. There’s no reason to have these bugs at all. Not testing for them just because you don’t agree with the default rules is a bad idea.

      A common example in python is making a mutable the default value of a keyword argument, like:

      class MyClass(object):
      
          def my_function(self, foo={}):
              pass
      

      It turns out that since the dictionary on the right hand side of the foo={} expression is mutable, it’s associated with the class, not an instance, so all instances share that dictionary. If it ever gets mutated, then it’s mutated for all instances.

      This is easily detected by e.g. pyflakes. There’s no reason to not have a check for this in every python codebase, as part of the test suite and integrated into developer’s editors.

      1. 1

        It turns out that since the dictionary on the right hand side of the foo={} expression is mutable, it’s associated with the class, not an instance, so all instances share that dictionary. If it ever gets mutated, then it’s mutated for all instances.

        Slight nit-pick, but one which hopefully makes things a little clearer: default arguments get ‘associated’ with the function itself (remember that functions are perfectly valid first-class objects in Python). Classes are also first-class objects, and methods are basically function objects stored inside a class object (plus a little “binding” magic).

        That’s why all of the instances share the same value: they all invoke the same method object, by virtue of referencing the same class object. Also, it’s not just mutable objects, but those are the only times we actually notice!

        IMHO remembering rules like ‘default method args associate with the class’ seem (a) very arbitrary and (b) like a bad idea, hence it’s difficult to understand or justify why it’s there.

        If we think about the methods and classes as objects, then it seems (to me) to make more sense: the way default arguments are handled seems reasonable (although I don’t like it); and it has unfortunate interactions with the class/instance mechanism, like this one you mention.

        One possible problem with this explanation is that it may be an unfamilar way of thinking, e.g. for those used to Java-like languages where things like methods and classes aren’t objects (I’ve argued many times when I’ve heard the phrase “everything’s an object” in reference to Java ;) )

    2. 2

      Rubocop has aggressive defaults so you hit a lot of things, fix what is worth fixing, and then auto generate your config once you’ve decided you’re at tolerable levels for your project. That way requirements can stay tight for a wide variety of projects. And rubocop.yml lets you exclude directories, so just ignore comments for app/controllers/**/*. However, plenty of non-trivial apps have controllers that are worth documenting. Why it deserves to exist, it’s intended scope, and so on.

    3. 1

      This is because Ruby doesn’t actually have the ability to be more strict. Eslint is one of the best tools in modern software development because the language allows for intelligent linting.

  • 3

    So the author’s proposed solution is to make every piece of code (that uses this function) include an if ... else ... then? Instead of a single branch? That seems like choice that only adds confusion everywhere instead of containing it to a singular location.

  • 14

    For what it’s worth: Any package manager with a post/pre install process has the same exact issue.

    1. 12

      I wouldn’t say exactly. Part of the problem is allowing unvetted randos to publish to the repository, but that’s not a necessary part of package manager design.

      Whenever I set up a new OpenBSD system, I run “pkg_add chrome” which always fails, because the package is actually called chromium (although the binary in the package is called chrome, hence the confusion). It would probably be bad for somebody to come along and squat on the chrome name, but I don’t worry about this.

      1. 6

        Yep, installing a package from an unvetted rando would be about as dumb as installing a CA root certificate from an unvetted rando.

      2. -2

        Part of the problem is allowing unvetted randos to publish to the repository,

        Even if you vet every publisher and vet every publish, someone can still find a MITM weakness and then have libraries post-install hacks.

        1. 3

          A MITM weakness in what?

          1. 2

            In the package manager.

            1. 10

              I would recommend a package manager without such obvious weaknesses.

              1. 0

                Oh, of course, why didn’t I think of that?

                EDIT: I honestly can’t believe people on lobster are uploading this person’s troll response.

                1. -1

                  That’s a very generous interpretation, but even then MITM is just one of many surfaces to protect.

                  1. 5

                    Generous? The topic of the subthread was MITM attacks and tedu said “such obvious weaknesses”. TLS and signatures are two of the most well-known defenses against MITM attacks. Seems pretty clear-cut to me.

              2. 6

                Too much time spent using npm? It’s certainly possible for a package manager that solves these problems to exist, because such package managers do exist. Debian has been around for how long? When was the last time a typo squatting deb had to recalled?

                1. -1

                  I was being completely sarcastic. There are no package managers that are immune to security issues and to suggest something so silly is really trolly dude.

                  Here’s how to know if your package manager is vulnerable to this situation:

                  1. Does your package manager have a pre/post-install process that runs in userland?
                  2. Is your package manager written by a human?

                  If you checked both of these boxes you now have a chance to encounter this exact issue.

                  1. 7

                    And yet some package managers seem to have more of this exact issue than others.

                    1. -3

                      As we all know what security is really concerned with is known issues published by users.

                  2. 2

                    There are no package managers that are immune to security issues

                    I don’t think the claim was immunity to security issues. The claim was that there are package managers resistant to phishing and homograph attacks.

      3. 1

        A significant mitigation is often reasonable, particularly when a total solution isn’t readily available. In this case, I would argue that there is literally nothing that can stop a determined enough individual with the right skills / resources / access from using the package manager against an adversary. But if we can make it more difficult, or just more of a pain, then we’ll still have improved the situation.

    1. 3

      Oh wow yes! Haha! I also remember the (short lived) reaction https://tonyarcieri.com/lets-figure-out-a-way-to-start-signing-rubygems once people realized they could be post-installing really unknown code.

      1. 2

        I wouldn’t know how signing would have helped there.

        1. 1

          Cool, wasn’t saying it would have.

        2. 1

          Why not? If they stored their private key elsewhere (ie, not on rubygems.org) and the package manager automatically checks signatures, how would this attack have succeeded?

  • 4

    This is interesting, because it is one of the numerous protections Nix and packaging software with Nix protects against.

    1. 0

      As posted elsewhere:

      1. Does your package manager have a pre/post-install process that runs in userland?
      2. Is your package manager written by a human?

      If you checked both of these boxes you now have a chance to encounter this exact issue.

      Nix may be special in that it also has the concept of self contained processing? This is a rather large ask of normal package managers. Can you provide more insight?

      1. 4

        #1 is effectively a “no”. The hooks are run, but in a sandbox without access to the general application, operating environment, or the network.

        EDIT: of course, the install time problem also impacts any package manager where you run the code it manages, assuming the running code ever interacts with sensitive internal data or environment. However, Nix very nicely protects against install-time trouble-makers.

        1. 1

          No network or operating environment is a killer. I get that it means nix packages are secure, but quite a few popular npm packages determine what OS you’re on and then download binaries (instead of building from source).

          1. 3

            I don’t know the details for NPM specifically, but we’re quite comfortable patching around issues like that, and indeed have done so many times. Sometimes working with the tool we’re dealing with, sometimes working around the tool :) For example pre-fetching what it is looking for and happening to put it where npm will look for it. Sometimes just patching the source of the package, if that is what it takes.

            1. 1

              You change nix based on the needs of the library author? Even if npm could create a sandbox for post install and it worked with what they already had, there are so many packages and authors that I doubt it would be feasible.

              1. 2

                No, we don’t change nix, we patch the software being packaged by nix.

          2. 1

            Why do the packages do this, instead of the package manager?

            1. 1

              I’m confused by that question.

              npm’s program has a post install hook that allows a package to run code. That code can do anything it wants in the context of the user’s access and authority. The reason for this hook existing is so the package can setup whatever it needs to be usable.

              I think what you’re suggesting is that npm handle binary dependencies, which it could definitely do, but it there are a lot of diverse needs when it comes to just that use case that the feature would probably dwarf other things.

              1. 1

                I’m not sure what’s confusing there.

                You mentioned downloading versions of packages generated for specific systems as something that packages handle themselves. It seems to me like figuring out what version of a package is needed and installing it is the job of the package manager.

                Ignoring sandboxing – it’s pointless, I’m going to run the code that gets installed anyways – having packages do it themselves seems like a lot of duplicated code and a lot of potential for bugs, MITM attacks, injections, etc. I doubt anyone is auditing them for certificate validation, SSL use, and other basics.

                1. 1

                  You mentioned downloading versions of packages generated for specific systems as something that packages handle themselves. It seems to me like figuring out what version of a package is needed and installing it is the job of the package manager.

                  Here’s an example of what a package might do with a postinstall process: https://github.com/sass/node-sass/blob/master/scripts/build.js

                  There is no realistic way for npm (or rubygems or pip or…) to both be simple and also handle all usecases for a postinstall process.

                  It’s all or nothing, IMO.

  • 1

    Two things to note here:

    1. Removing the validation causes a situation where inserting a duplicate repository name will result in a PG::UniquenessConstraint rather than an error that rails knows about.
    2. Instead of doing the serialization yourself in ruby, just use the ctext data type.
    1. 1

      Yep, I already handled the PG::UniquenessConstraint due to the way my controller action was written. I didn’t decide to mention that aspect since the article was already running a bit long.

  • 2

    Where are the benchmarks located? Are the comparable to other benchmarks?

    1. 4

      I don’t have it open source, but if you take the todo mvc code and run it along with other framework’s todo MVC implementations, you can compare how long it took for each operation.

      I submitted a PR to js-framework-benchmark, and Moon should get included in the next round of benchmarks.

      1. 1

        Awesome!

  • 3

    This is a pretty damning write up for Github in my eyes. Here’s someone who was contributing to the company by writing and shipping valuable features, whom had friendly relationships with her co-workers, and was actively seeking to improve junior developers (thus providing better employee skill for the company).

    She actively attempted to improve her situation when provided with negative feedback (however valid). She actively attempted to conform to their bullshit bureaucracy. She didn’t rip that feature post thief a new one, something that I absolutely would have done in a heartbeat.

    This sounds an ideal employee and Github threw that away. Further, even if you think Coraline is somehow hiding “the other side to this story” (surely not worth the pain and literal monetary cost of talking about this situation), this can’t be something other employees are going to see as “a good move”. You’ll get less cooperation from PIPs, less communication, less self-improvement, and less peer improvement. That doesn’t even begin to dive into how this looks as someone who might want to work for the company.

    Way to shoot yourself in the liver, Github.

    1. 23

      In point of fact, she does share that she has bipolar depression, which is a mental illness (though disorder is a more appropriate term).

      Or maybe you meant it in a derogatory way, which, I’ll admit, would give the post more of a purpose. However, that’d also be a pretty shitty and mean-spirited, destructive thing to say.

      Please clarify.

      1. 8

        Ehmke seems obsessed… It’s not healthy.

        That’s not your call to make though, right? What is and isn’t helpful or healthy for her life? And even if it were, this thread certainly isn’t the place to talk about it. The article is clearly about Githhub having made promises and then breaking them.

        Think about it this way: how many of Github’s actions would a recruiter told the author when she initially reached out, had she known?

        Which is to say, if how Github acted were Github policy, then of course a recruiter would talk about it. It is the company policy of how they treat employees and Github should be proud of it, especially given how proud they are of their values.

        Is it’s Github’s policy to be strict and unhelpful accommodating any mental health needs of their employees, including when family members die? Is their policy, “sorry, need you at your best regardless of your mental health provider’s advice, so you definitely need to go home.”

        So really this article is about how Github acted, in light of how they lead the author to believe they would act, and how it runs contrary to their professed goals of inclusivity.

        Which is all to say, why are so many people focusing on the often irrelevant supposed faults of the author, instead of the actual content and arguments she is providing? Especially for such a clearly structured and functional post. Say what you want about her points, they are clearly made and have well presented evidence and anecdote.

        1. 7

          the article is about a lot of things. the inability to have perspective on a situation and petty retaliation for small grievances seem the prominent ones to me as well, unfortunately.

          I’ve seen my fair share of office politics, and it sounds like at the very least her manager could use some 360° review, but providing this kind of feedback publicly and after leaving a company is so obviously not the time nor the place to do so that I’m really unclear on what her motivations are aside from vengefully smearing a company.

          certainly she doesn’t think this will cause any kind of change internally? if she does, that seems a bit unrealistic and grandiose. had she left of her own accord while sending sent this to a sympathetic person in HR she would have had a significantly greater impact and significantly less attention.

          1. 6

            https://twitter.com/CoralineAda/status/882636914981036032

            “So I lost a bunch of money posting that story. I had to turn down the severance offer because it contained a hush clause.”

          2. 2

            not that much, and you don’t get it if you quit. most SWE make enough that it’s really not in their interests to take a month’s salary unless they have nothing but nice things to say about their time employed somewhere.

            personally, I think the best exit one can make out of a shitty situation that they don’t want to see through getting fixed is to document it and quit w/o signing anything.

        2. 9

          This is what I’m betting: this gender identity politics stuff was all Ehmke talked about while they were at Github.

          …That’s why she was hired.

        3. 3

          The core question seems to be, “Do a person’s personal views regarding certain minority groups always result in interpersonal issues?” If so, all people who are not fully tolerant must be fired (at least according to militant supporters of this ideology—see here for an example); and if they are not fired, some projects might risk alienating minority contributors, depending on the personal views of their existing contributors. If this is not true, however, then all existing projects go on smoothly regardless of their contributors’ views about each others’ member groups.

      2. 3

        That’s not your call to make though, right?

        What does that even mean?

        If somebody was injecting heroin into his bloodstream, am I allowed to comment that it is unhealthy? Or is it not “my call to make’?

        You can not divorce the fact that Caroline xirself has always pushed identity politics and been extremely toxic to every person that doesn’t kowtow to schmer ideological agenda from the fact that now paxer is complaining about supposed ‘injustice’ that occurred during xomer time at github, and the fact that it is likely that it is not injustice at all, but that the people at github didn’t want to completely kowtow to all of xober demands.

        1. 6

          Whether or not someone is an asshole, it’s rude to deliberately misgender them. Caroline apparently prefers “she/her” pronouns, and you know this. So why are you using the wrong pronouns?

          If your problem is with her actions, then her gender doesn’t matter. So why not be polite? But the pronouns in your comment make it read to me like your problem is in fact with her gender identity. And if that’s the case, then you’re doing a good job of making her case for codes of conduct, so that folks don’t have to deal with being randomly attacked for who they are.

  • 12

    I said this elsewhere, but 60% of the industry has “numerous personality deficiencies”. Who hasn’t gotten into arguments with the Linuses or … those systemd people?

    Why do they get a pass? Supposedly for their contributions. But this blog post listed a decent amount of contributions to Github as well. And according to the blog, the managers thought as much for their technical performance.

    So many of us get a pass for social deficiencies. But here, apparently not. This could be a “cultural fit” thing, but based off of what I’ve heard about Github, I feel like some accommodations could be made if the technical contributions were good.

    1. 5

      Why do they get a pass?

      Because they’ve actually made valuable contributions to the field, instead of making money via political parasitism. We wouldn’t (and shouldn’t) tolerate someone like Linus if he held some nouveau-middle management mumbo jumbo fluff job. Instead, he’s effectively created and managed a project with social utility at least in the tens of billions of dollars, and his rudeness, beyond being excusable, is actually extremely useful in discouraging time-sinks that would hurt Linux development if humoured.

      1. 0

        his rudeness, beyond being excusable, is actually extremely useful in discouraging time-sinks that would hurt Linux development if humoured

        It also hurts Linux development when the likes of Alan Cox quit because Linus gets confused and decides to go on a half-cocked rant. And there is potentially people who would make good contributions but see what happened to the likes of Cox and decide they don’t want to be on the receiving end of that.

        1. 6

          Did he quit because of a rant? He seems to dispute this himself -

          “I’m aware that ‘family reasons’ is usually management speak for ‘I think the boss is an asshole’ but I’d like to assure everyone that while I frequently think Linus is an asshole (and therefore very good as kernel dictator) I am departing quite genuinely for family reasons and not because I’ve fallen out with Linus or Intel or anyone else. Far from it I’ve had great fun working there.”

          1. 2

            He resigned as tty maintainer over the rant.

            https://lkml.org/lkml/2009/7/28/375

            1. 3

              But that’s a long way from “It also hurts Linux development when the likes of Alan Cox quit” given he spent the next 4 years still working on kernel development.

              1. 1

                So you don’t think him resigning as tty maintainer hurt Linux, at all? The work he did in other areas made up for it? And when greg k-h (begrudging) took it on, that didn’t detract at all from the work he did (or would have done) in other areas if he hadn’t needed to step into that role?

                I’d argue it would have been better for Linux if it hadn’t happened, ergo it hurt Linux.

        2. 2

          I think Zimpenfish thoroughly refuted the Alan Cox example, and as for

          And there is potentially people who would make good contributions

          There are vastly more people who would make bad contributions, either because they’re low quality, useless, or incur excessive technical debt. Linux’s inaccessibility to immature coders and egotists discourages people you don’t want contributing more than those you do.

  • 19

    Author clearly has numerous personality deficiencies

    This is a highly inappropriate personal remark.

  • 11

    Author clearly has numerous personality deficiencies just from reading between the lines of this post

    Since the analysis was so easy for you, can you make some of your conclusions explicit? What are these numerous ‘personality deficiencies’ that she clearly deserved to be teated this way and then fired?

    the most glaring of which is the fact that they can’t admit fault

    But, can’t she? I mean, reportedly she received the criticism of “un-empathic communication style”, lack of code reviews, and the performance improvement plan, and was clearly working to address each of them. She wouldn’t have kept notes each week, have made herself available for doing code reviews, and pointed out the ways she was working to grow if she couldn’t admit fault.

    Given her thoughts on pair programming (helping her identify any negative ingrained behavior she wouldn’t have otherwise noticed), I don’t think it’s fair to claim ‘they can’t admit fault’ is fair at all.

    they can’t admit fault. Github was right to fire them

    She has a gender, which comes with nifty pronouns including she and her.

    Github was right to fire them, just based on reading this article alone.

    Let’s slow down there for a second, maybe talk about this a bit? The values she quoted from the CEO and the goals of her team were clearly in conflict with the actual organizational behavior she experienced.

    Unless you think that providing really sound feedback on the questioner that was exactly within her job description was a ‘personality deficiency’.

    Can we talk about that, by the way? What the hell is a personality deficiency, and to what degree do they have to exist for an organization to treat someone this way and then fire them? I mean, I get that certain things might make someone more difficult to work with, but isn’t that the point of inclusivity? That we tolerate people’s quirks and where they are in life so that they can bring their voice and experience into the organization?

    You know, experience like continuous harassment in the open source community.

    because I have dealt with folks like the author bring toxic and destructive attitudes into the workplace

    Please elaborate, as it was so clear to you.

    Actually, I’m a bit confused by your stance I suppose. This post exists explicitly and solely to point out the things the author experienced that were in conflict with both what she was promised and what Github claims to represent. And she does that in this article, right?

    She isn’t trying to get her job back (obviously she doesn’t want to return, and the fact that she is a senior engineer with a history of productive development, I think her clear desire to be away from Github counts as signal).

    Does her “deserving to be fired” erase what she experienced, or are you claiming that everything she talks about having experienced either a) wasn’t actually a problem or b) didn’t really happen that way?

    1. 9

      She has a gender, which comes with nifty pronouns including “she” and “her.”

      Are you seriously bringing that up as a point in your argument? You could’ve just as well used the argument that it’s more courteous to use genderless pronouns. Why put the form of an argument over its substance?

      Anyway, if you need an example of her taking her views to places where they’re not really relevant, you need look no further than here.

      1. 0

        Not the person you are talking to but:

        Are you seriously bringing that up as a point in your argument? You could’ve just as well used the argument that it’s more courteous to use genderless pronouns. Why put the form of an argument over its substance?

        When you know someone’s gender identity it is polite to use their preferred pronouns. Personally, I wouldn’t have brought it up but my guess is that the author was deliberately using neutral pronouns because they don’t respect her gender identity but knew if they used male pronouns they’d get hell for it. But it can also just be a style of writing, so as said, I wouldn’t have brought it up.

        Anyway, if you need an example of her taking her views to places where they’re not really relevant, you need look no further than here.

        I, and she herself in https://medium.com/@coralineada/on-opalgate-2efd0fc1e0fd (ugh, I hate the trend of adding ‘gate’ to everything), acknowledge that the way she opened the issue (specifically the title) was overly inflammatory.

        However, reaching out and letting people know that a member of their community is likely scaring people off from the project is a relevant view and needed in some cases. As said above, she did it in an overly inflammatory way but I don’t agree that it is not relevant.

        After this whole thing I was: 1. Upset with how coraline handled starting it 2. Never ever going to touch opal (supported by the fact that the actual owner (NOT meh) implemented coraline’s Code of Conduct but now they are using ‘No Code of Conduct’).

  • 7

    I’m getting a bit of a mixed message on the merit-based judgment bits. It’s mentioned twice that GitHub is a meritocracy, but if all of these accomplishments were truly widely praised as stated, wouldn’t they be rewarded?

    I realize we’re only getting one side of the story here. Maybe GitHub really is a cartoon villain and hates having non-white non-male employees. I don’t know. I’d be interested in what their side is, though.

    1. 29

      Meritocracies were created as a joke concept. That companies and people believe merit-based judgement is possible is a mistake and doesn’t actually work (in the same way that humans can’t be unbiased).

      1. 10

        I see people say this, but I have no idea exactly what they mean. So, stripping away the loaded terms, can you explain?

        Do you believe that everyone in a project contributes to its success equally, or do you think that there are no ways to tell who is contributing to a project?

        1. 12

          The term itself originated from a satirical work, if that helps. :)

          1. 10

            I understand that, but the statement that “merit based judgement is impossible” fascinates me. It seems to me that implies all promotions are mistakes, for example, because it’s impossible to judge that someone deserves a promotion.

            It’s one thing to say “I don’t like what meritocracy is associated with”, but it’s something very different to claim “merit based judgement is impossible”. I’m curious to hear exactly what that implies, in the view of krainboltgreene, because it can lead down some interesting rabbit holes.

            1. 24

              Basically: people are really, really bad at being unbiased. We are filled with bias. We make all sorts of decisions under the influence of bias. In an ideal world, we recognize the bias, and try to set out procedures and practices that account for it, and limits its influence. In a “meritocracy” you pretend bias doesn’t exist, because you’re just “looking at merit.” Never considering that your ability to make an accurate assessment of “merit” is completely undone by bias.

              1. 7

                so you use procedure and practices in order to better identify merit? it’s only a meritocracy if you’re incorrect about who has merit?

                i also don’t buy the claim that it’s completely undone at all

                1. 19

                  Generally, self-describing as a “meritocracy” bespeaks a belief that you’ve weeded out all causes of bias, which suggests you’ve done very little to weed out bias, as in trying you’d become a lot more humble about how hard it is and how imperfect any approximation is.

                  1. 12

                    More generally, any assurance that one meets a reasonable baseline standard is often a negative indicator. “You can trust me, I’m not a conman!” Not frequently said by actually honest people.

              2. 4

                So, in terms of specific implications: Does that mean that it’s impossible for a process to exist that will allow an organization to decide on fair promotions?

                1. 4

                  Perfect fairness? Probably. But we can approximate it pretty well.

                  1. 3

                    Ok, if there is a way to approximate it well, doesn’t that imply that it is possible to reduce bias, and asymptotically approach accurate decisions based on measurable attributes?

                    To be honest, I was expecting pushing the idea of “They’ve been sitting in that chair for 3 years, therefore it’s time for a seniority raise, because we can’t know better” approach, similar to how some unions handle it. Basically, why play when you’ve already lost?

                    1. 13

                      Yeah, it is probably possible to reduce bias effectively. Meritocracies make the mistake of assuming this is easy, or that it can be done without trying at all. This boils down to making decisions based on whatever an individual person thinks “merit” is, and never evaluating whether that definition is correct.

                      1. 4

                        That’s a claim I agree with – being accurate and reducing bias is a continuous, difficult, and iterative process, and in my experience many people never bother to set up the feedback loops and put the effort into recording and reconciling predictions in the way needed to to manage their own bias. I haven’t really interacted with any organizations that describe themselves as a ‘meritocracy’, so I can’t comment on what it means in practice.

                        The initial statement, though, was that merit based judgment is not possible. That’s a far more philosophically interesting claim, at least to me. It’s not often I get to (edit:)expore a nihilist mindset like that.

                        1. 6

                          What about that belief is nihilist?

                          Also, I really dislike having a conversation described as “probing a mindset.”

                          1. 4

                            Considering that merit is, in theory, a measure of a person’s impact, it implies that a person’s impact is unknowable. That strikes me as being fairly far down the road to nihilism.

                            Also, would you prefer the term ‘explore’?

                            Edit: Now that I think about it, you’re right. It’s less of a nihilist belief system and more of a solipsistic belief system.

      2. 7

        so what does work? meritocracy still sounds pretty nice to me even though i know it’s a dirty word now

        1. 7

          Meritocracy is impossible. See my comment here.

        2. 0

          Meritocracy, if it was even possible, is also bad for producing great things. See https://hbr.org/product/rethinking-rewards/an/93610-PDF-ENG

      3. 1

        My point is that there is a claim of meritocracy, but then the author states that they were not rewarded based upon merit. It’s confusing at best.

        1. 2

          Are you sure you worded that comment correctly?

          “claim of meritocracy” but author refutes and says “they were not rewarded based upon merit”.

          I don’t see how that’s confusing.

          1. 2

            In a return to its meritocratic roots, the company has decided to move forward with a merit-based stock option program despite criticism from employees who tried to point out its inherent unfairness.

            The author states it was a meritocracy, then claims their work was widely praised, yet not rewarded, and finished by saying it is merit-based. Was it only not merit-based in the year this person was there? It’s confusing.

        2. 2

          There is a claim that meritocracy was promised but not delivered upon.

      4. -1

        Even if meritocracies were possible, they would be bad for another reason. https://hbr.org/product/rethinking-rewards/an/93610-PDF-ENG

    2. 7

      I suppose its possible to believe girls are capable of coding, and then to prove that’s true, subject all their code to hazing like code reviews. “See? I knew you could code!” So you’d simultaneously recruit people and then grind them up. And not grinding them up would be favoritism, of course. Its only fair to give them the chance to prove how tough they are.

    3. 3

      Social justice isn’t on the bottom line.

      1. 7

        Well, not directly. But if you make a culture that pushes people out who don’t fit the mold, you reduce your ability to hire and retain people you would otherwise be able to hire and keep. Big successful businesses by and large try to maintain a welcoming and professional work environment because doing so makes them more competitive and capable.

        1. 5

          But if you make a culture that pushes people out who don’t fit the mold, you reduce your ability to hire and retain people you would otherwise be able to hire and keep.

          Then maybe don’t make a culture at all.

          1. 2

            I mean, it certainly sounds like they had a culture there. Just a different culture than one often sees in tech today. Company culture happens automatically. The question is whether the leadership will take an active and conscientious role in shaping it, or simply let things develop as they may.

        2. 4

          A culture of political censorship and constant injection of politics into non-political environments also reduces your ability to hire and keep. After reading this article (and after a friend sent me http://hintjens.com/blog:111 ), I would not consider working for Github. In fact, I’m now extremely skeptical of GitHub’s long-term prospects as a useful service. GitHub is clearly very far along in the Silicon Valley ultra-political middle management lytic cycle, and it might be terminal.

  • 2

    I usually have two trees in my redux: ephemeral, resources. Ephemeral hosts ui, session, etc. Resources are where the jsonapi data goes. I’ve even written functions specifically for this kind of structure: https://www.npmjs.com/package/@unction/treeify

    1. 2

      You know, I very much do the same. Maybe it’s the case that if you’re focusing on persisting only raw data in the state, you’ll end up with a similar structure. I might add that to the article.

      1. 3

        Great insight.

  • -2

    Inclusive is codeword for ‘not white/asian male’?

    Every time somebody is hired because the employer goes out of their way to be diverse, somebody else wasn’t hired for that same spot.

    Diversity is just a social instead of governmental (but sometimes governmental) way to discriminate against the dominant subgroup for the non-dominant “oppressed” minorities. A perverted way to get people to atone for their original sin (being born to the dominant majority subgroup). Of course when we talk about diversity in tech we rarely talk about asian males, since they don’t seem to have any problem succeeding in this domain more or less.

    This is a mind virus. An ideologically driven way to favor some groups over another by claiming that the favored groups are somehow ‘oppressed’ and therefore they are to be favored to balance the scale.

    1. 20

      Group diversity has been shown to correlate with better results in a variety of settings. It’s not just affirmative action; inclusive teams produce better work by anticipating needs and circumventing shitty groupthink.

      1. 4

        Sources/further details please? I am concerned about the conflation of several different definitions of “diversity”. In particular, field-relevant experiential/educational diversity is drastically different from skin color diversity and neither is a good heuristic for the other.

      2. 5

        If this was true then why would there need to be any governmental enforced diversity quota/incentive?

        If group diversity is beneficial then we would already see organisations embrace it for its own productive benefits. Instead we see socially mandated diversity and after-the-facts rationalisation.

        1. 18

          If group diversity is beneficial then we would already see organisations embrace it

          Doesn’t this strike you as exactly an after-the-fact rationalization? You’re assuming that the best solutions always arise within a particular time interval. For example, travel back in time 10 years and try making this argument. Now try 100. 500. 1000. Which things were worse back then that are better now? Would you still refute the possibility of improvement based on the notion that since the best thing hadn’t arised naturally at that point in time that it therefore never would?

          (Note that I am not criticizing your position against “mandated diversity,” but rather, your specious argumentation.)

          1. 4

            You’re assuming that the best solutions always arise within a particular time interval.

            There are 2 possibilities here:

            1. Diversity is good but the free enterprise system has failed miserably in figuring out that it is good so the mighty government and social engineers need to force people to adopt the superior system of organisation.

            2. Diversity doesn’t really help but the government and its master-ideologues want to impose it on the population at large via media indoctrination and legal imposition.

            Given that many complex organisational system has been developed by business in order to improve productivity, and that so much effort is put into squeezing even 1% increase in some industries, the idea that they have totally missed this grand strategy of just flooding the workspace with one-of-every-animal seems unlikely to be true.

            This is especially since if diversity is a benefit, one has to probably agree that it would be an incrementally increasing benefit i.e. 2-groups would be slightly better than 1-groups and so it would be pretty apparent to at least some people that (n+1)-group is better than n-group, and these people would of course write a bunch of books and we would see that companies that are homogenous get out-competed from the market.

            Instead we have people calling those who disagree racist/sexist/classist/bigot and calls for minorities to be inserted into the most prestigious (ceos, senators) and the recently-cool programming jobs. Meanwhile calls for diversity in the mineral mining sector is quite silent.

            Wouldn’t we get increase in productivity if we plonk down some women in a mine somewhere or as part of a sanitation team?

            Of course the best solution doesn’t always arise at a particular time, this is clearly true since if it arose at time x it didn’t arise at time y. But nobody is claiming that diversity can not possibly be the best solution because it didn’t arise sooner, but because a bunch of people looking around for the best solution didn’t find it to be very promising.

            1. 11

              Diversity is good but the free enterprise system has failed miserably in figuring out that it is good so the mighty government and social engineers need to force people to adopt the superior system of organisation.

              This has happened a few times before. See: Environmental regulations, financial regulations, health regulations.

              1. 9

                a few times

                This happens constantly. Free enterprise is extraordinarily bad at optimizing, and outright incapable of considering second-order effects (to the extent that economists had to invent a jargon term for it—“externality”—so they could sweep it under the rug).

                1. 1

                  What would you cite as the primary causes of the technological growth in the last 200 years?

                  Do you think some externalities could be removed via a more comprehensive system of private property?

                  1. 4

                    What would you cite as the primary causes of the technological growth in the last 200 years?

                    My simplified answer would be: mainly governments deciding to pour large amounts of resources into technology R&D, for various reasons that mostly have orbited around “empire” and “military”. The British Empire’s investments in railroad, mining, energy, and engine technology; the 19th century French and German governments’ big stable of scientist/inventors in their applied-science and engineering institutes (von Humboldt, Carnot, Coriolis, the Curies, etc.). In the 20th century, both the Axis and Allies’ crash R&D programs: V-2 rockets, the Manhattan Project, Bletchley Park; and later the thermonuclear program, ENIAC, the space race, ARPA, and so on.

                    1. 1

                      What role did free enterprise play in those developments?

                      1. 2

                        Implementation assistance and tear-away sustainability plan.

                        1. 1

                          Would said technological improvement have been feasible without free enterprise? If not, what justifies the characterization that it is “extraordinarily bad at optimizing?” If so, what took us so long to make the progress in the first place?

                          i.e., Is the rise of (comparatively) free enterprise and the technological boom simultaneously just a coincidence? If you believe that, how do you convince others of that?

                          1. 1

                            I doubt you could convince many people they are a unrelated events.

                            The most obvious argument I can see is that technology enabled free enterprise, rather than the other way around. I’d have to think a bit more before I could flesh it out further, though.

                            1. 1

                              That’s reasonable.

                              For the most part, I’m trying to call into question the notion that free enterprise is terrible at optimization. There are plenty of examples where it doesn’t arrive to obviously ideal circumstances, but if you’re going to say that it’s terrible at optimization, then the natural question to ask is: compared to what? IMO, even doing that comparison is fraught with peril and probably so difficult that it’s impossible, which leads me to the conclusion that statements like “free enterprise is terrible at optimization” aren’t particularly meaningful.

              2. 3

                It’s not clear if or to what degree any of those things had a positive effect on humanity. It’s also not really comparable, because adopting good hiring practices is very obviously in a business’s self-interest, whereas environmental regulations are (ideally) more about forcing the internalization of external costs.

                1. 5

                  environmental regulations

                  Have you been to China or India? It’s really nice being able to breathe outside.

                  1. 2

                    Yeah, I was in HK last week. Air is somewhat worse than the US, but I’m tempted to say it’s worth it given how inexpensive and efficient everything is as a result of less burdensome regulations. Their infrastructure is actually substantially better than ours, believe it or not, despite drastically lower taxes and less government involvement.

                    1. 2

                      Hilarious. 1/3 the population lives in public housing. The public transit system depending on a government owned “private” company that (a) owns tons of real estate which it uses to subsidize its transit mission and (b) has regulated fares …
                      Compare that to the USA and there is, in reality, substantially more government involvement. The US system is really inefficient though because of the layers of government (federalism) and the enormous cost of pretending that the government is not involved.

                      1. 1

                        HK is an interesting example for public housing, because it was not done all that much differently than elsewhere where it has a bad reputation, but in HK it has a reasonably good reputation. The architectural style is pretty much the style now reviled elsewhere: high-modernist concrete tower blocks densely packed together into public housing estates. But they were built on a much larger scale than what the U.S. or most European countries ever built, and overall are reasonably well regarded.

                2. 4

                  It’s not clear if or to what degree any of those things had a positive effect on humanity.

                  “ financial regulations”

                  You believe it’s unclear whether people getting robbed constantly by crooks or the banks themselves was a net benefit to our society?

                  “health regulations”

                  You also believe that random people getting sick or murdered less often by lying vendors in medical field isn’t an obvious benefit to our society? If you said lazy or evil folks, I could see someone arguing for them to disappear. Cancer and snake oil salesmen don’t target only them, though. They take out beneficial people, too.

                  1. 2

                    Making fraud illegal isn’t a “financial regulation” any more than making murder illegal is a “health regulation”.

                    Both of the things you described are just fraud. “Financial regulation” carries the connotation of, you know, specifically addressing the use of certain financial structures.

                    1. 0

                      “Making fraud illegal isn’t a “financial regulation” “

                      You’re putting words into my mouth. I said people were getting robbed. It’s conceptually fraud but wasn’t legally fraud in many circumstances. Sometimes it was just an evil thing the majority of banks practiced that benefited them at everyone’s expense. Damage would be done by whatever acts were technically legal in current system or made legal through bribes by banks to politicians. Next round of politics increases regulation to cover those things probably after an outcry from affected voters. It’s then illegal due to the regulations.

                      One that they tried to pull on me was not allowing me to pay debts with low-interest until I paid off all with high interest. That let the low-interest keep piling up in event I could only pay small portion. That was made illegal by regulations added under the Obama Administration. There’s lots of sneaky shit like that in finance.

            2. 13

              Aside from the moral blindness, the most characteristic feature of libertarianism is complete ignorance of how businesses and markets operate.

              1. 1

                Aside from the moral blindness

                That’s factually incorrect. There are many popular ways to argue in favor of libertarianism, and one of them is a moralistic argument: that the initiation of force or threat of force is wrong. You might disagree with that moral argument, but it’s certainly not “moral blindness.” And morals needn’t end there either, although I admit many libertarians on the Internet may give you the impression that it does. (Which is why I don’t often chum around any online libertarian hangouts.)

                1. 7

                  Libertarians don’t believe that. They believe that force to protect property rights is fine. And they are desperate embracers of a conveniently timed statute of limitations so that property rights deriving from theft and violence are grandfathered in somehow. In 1860 the mortgage value of human beings held in forced labor by state and private terrorism was greater than the entire industrial plant of the United States, yet somehow that and far more recent atrocities are in the moral “never mind” class for Libertarians while tax assessments to pay for school lunch are somehow immoral.

                  1. 1

                    That’s a pretty extreme straw man. Regardless, your characterization of libertarianism as “morally blind” remains factually incorrect. Your musings on the questionable priorities of some of libertarianism’s adherents do nothing to change that.

                    1. 2

                      It’s not a straw man at all. Your claim is that Libertarianism is based on the moral principle that initiation of force is wrong. But that claim involves redefining “force” so that if I peacefully walk out of your store without paying for a loaf of bread, and then an armed agent of the state kicks my ribs in, the libertarian can claim I initiated force! And even libertarians have wrestled with the insolvable problem of the bloody provenance of wealth - Murray Rothbard worked himself into pretzels trying to wiggle around it.

                      1. 0

                        Please read my initial comment more carefully:

                        You might disagree with that moral argument, but it’s certainly not “moral blindness.”

                        So even if you’ve arrived to an interpretation of the NAP that you find objectionable (I also find your interpretation objectionable), then you’ve implicitly admitted that a moral principle exists. You just happen to disagree with it. Therefore, it is a blatant misrepresentation to describe libertarianism as morally blind.


                        I also disagree with your interpretation. I think your example obviously violates proportionality. A proportionate response would probably be to confront the thief. This leads me to question whether you’ve considered proportionality at all in your interpretation of the NAP.

                        If you did indeed neglect proportionality, then you would unfortunately be in good company. I’ve found that many so-called libertarians do the same, and generally use that as a license to say all manner of crazy things. I mean, if the NAP doesn’t have proportionality built into it, then it’s trivially useless. If you find yourself in that position with a well studied philosophy, then it’s a fair bet that you’re probably missing something.

                        And even libertarians have wrestled with the insolvable problem of the bloody provenance of wealth - Murray Rothbard worked himself into pretzels trying to wiggle around it.

                        I’m not here to debate libertarianism with you. That would be foolish. I’m pointing out blatant mischaracterizations of libertarianism. If you don’t represent the thing you’re trying to criticize accurately, then your criticisms aren’t going to be substantive.

                      2. 0

                        with the insolvable problem of the bloody provenance of wealth

                        The solution is geolibertarianism.

            3. 3

              Honestly, I feel like you just kind of doubled down on your argument without substantively responding to my criticism. For example:

              But nobody is claiming that diversity can not possibly be the best solution because it didn’t arise sooner

              But this seems to be literally what you said. What other interpretation am I supposed to make of this?

              If group diversity is beneficial then we would already see organisations embrace it

              More generally, I reject your dichotomy. Personally, I think your entire argument is missing something extremely important: the idea of cultural evolution and its impact on business. Culture isn’t a fixed point in time and space. It evolves. In our current bubble, the culture is clearly evolving to be more inclusive of diverse peoples. At some point in time, hanging a sign outside your window that said “Purple people need not apply” was socially acceptable. But today, it would be terrible business sense to do such a thing. Even if you could come up with an argument that said Purple people were, on average, very bad workers, your business would probably fail because the vast majority of your potential customers would probably consider such an explicit act of racism to be vulgar enough to take their business elsewhere. But this wasn’t always true. The same type of thing seems to have been happening on a less overt scale within the less several decades, and pointing squarely at government as the only entity to blame seems a bit of a shallow critique to me.

              With that said, I think there might be interesting arguments around the amplification of progressive cultural norms through States and governments.

      3. 2

        Hey! I think this argument is not a very good one to lead with. The reason being: if the evidence were not there, or changes over time as more studies happen, does that mean someone should not be for diversity? I think that one should still be for supporting diversity because the world I want to live in is based on equality.

        Another problem is what we see in response to your comment: people asking for the studies and wanting to argue over the study rather than diversity.

    2. 10

      Diversity is just a social instead of governmental (but sometimes governmental) way to discriminate against the dominant subgroup for the non-dominant “oppressed” minorities

      Women are something like 50% of the population yet very underrepresented in IT. So is taking action to try to get more women in to IT about discrimination against the dominate subgroup?

      1. -2

        Women are something like 50% of the population yet very underrepresented in IT.

        Men are something like 50% of the population yet very underrepresented as mothers.

        This reasoning is a rationalisation, because we only see it used to insert women into high-prestige jobs (ceos, senators) and the recently-cool tech jobs, but never see it used to insert women into low-prestige jobs like sanitation or garbage collection.

        Men and women are different. They have different interests and priorities and they make different career choices. The idea that an industry has to be a cross-section of the society as a whole doesn’t really make sense.

        1. 9

          Men are something like 50% of the population yet very underrepresented as mothers.

          The definition of mother somewhat precludes that. How about we call that one a mulligan and you try again?

          This reasoning is a rationalisation, because we only see it used to insert women into high-prestige jobs (ceos, senators) and the recently-cool tech jobs, but never see it used to insert women into low-prestige jobs like sanitation or garbage collection.

          There are similar stories from male dominated jobs such a firefighter and police where women have had a difficult time getting into. And let’s not forget, in the US at least, the big fight over if women should be allowed to serve in the military. I think if you look a bit harder you can find examples in many industries of women trying to be involved.

          Men and women are different. They have different interests and priorities and they make different career choices. The idea that an industry has to be a cross-section of the society as a whole doesn’t really make sense.

          I agree, an industry need not necessarily look like a cross section of society. However we have multiple examples of women not being in IT due to the culture rather than interest, so your argument doesn’t really have much merit to it.

          Finally: you didn’t actually respond to my comment but rather changed the topic. You called it discrimination against a dominate group and I pointed out that there is at least one example of a group roughly equal in population but not in representation in an industry. How is that discrimination?

        2. 7

          Men are something like 50% of the population yet very underrepresented as mothers.

          That could be the single, most-retarded counter I’ve ever seen on Lobsters. apy points out that the white males in tech hire almost no women despite a ton of talent available. Hell, it was Margaret Hamilton to popularized the term “software engineering” after her team did better than most who were hired on their first attempt. A ton of programmers then were also women, including black women, since it was seen as clerical work. After it was recognized as creative, it was male dominated in short time with it remaining so. Your counter is that men uncapable of giving birth to a child are “underrepresented as mothers?” Huh? You appeared ideological before but that’s just nuts.

          http://www.wired.com/2015/10/margaret-hamilton-nasa-apollo/

          1. 0

            That could be the single, most-retarded counter I’ve ever seen on Lobsters.

            Okay, let’s consider biological-effect on a role. So it’s a sliding scale between fully female role like a mother, where we never see a male in this role, and fully male i.e father, and right in the middle we see the role of children where male and female can equally fill that role. This scale is based entirely on the biological difference in sex.

            Why can’t programming exist on this sliding scale and be responsible for the differences in sex in programming?

            So if biology can preclude entirely men from the role of mothers, why can’t biology preclude proportionally more women from the role of programmers?

            1. 1

              The challenge with your mother/father example is that these terms are, for most people, defined in terms of biology rather than an implicit result of biology. For example, take a single parent which is responsible for providing the for the needs as both mother and father, most people still refer to them in terms of their sex, i.e. “Single dad” or “single mom”. I think taking your example seriously is very hard given this. Perhaps you could find a different example that wasn’t so deeply based on biology?

              Why can’t programming exist on this sliding scale and be responsible for the differences in sex in programming?

              I brought up the 50% thing so I should clarify a bit. People, including yourself, seem to believe I was making a claim that the breakdown in IT should be 50%. That is not what I meant. Instead, I was trying to call to attention your use of “dominate subgroup” and that the term “dominate” doesn’t make sense in a situation where the group size is about equal. Maybe this means you have some implicit bias towards viewing men in a way different than women? Or maybe I misinterpreted what you mean by “dominate subgroup”? It’s possible you were specifically talking about the subgroup of IT, but then that is a but confusing too since the whole point is that men are more represented.

              But, even if the natural interest in IT between the sexes is not 50-50, that does not imply that the representation of each sex right now represents the natural interest level, which seems to be what you are implying. And, in fact, we at least have evidence that many women feel like they are not welcomed in IT despite being interested in it.

              So, we know that women are not near 50% in IT and we have evidence that women who are interested don’t feel welcomed.

              Given that, here are two questions:

              1. If what I have said is correct (just assume it is correct for the sake of this question), do you believe that still nothing should be done to make IT more welcoming towards women? If not, why?
              2. Do you dispute that what I claim is correct? I have not cited any direct evidence so it is not unreasonable to dispute it. These numbers show up in any unconscious bias talk or diversity slideshow so I haven’t really done any effort in finding stats.
            2. 0

              Okay, let’s consider biological-effect on a role.

              Tons of studies have been done on people starting from children onto workers. The decisions of parents, educators and managers seem to be the greatest factor determining whether people are… going to do or be anything. They literally shape most of their lives. Also, influence whether they are likely to go into certain fields. The managers determine who will stay, leave, or move up. The interesting thing to me is you are hyper-focused on biology when it has had the least impact in empirical studies. The other things have so much impact that we’d have to design experiments to eliminate them… not sure how to even go about that… to see what biological impact remains. We can’t even see the biological impact outside of studies on children since there’s been too much psychological indoctrination and conditioning by adulthood.

              It might be something you seriously believe although it comes off like propaganda in a way. Here’s why: tons of decisions by biased individuals are shaping children into adults then conditioning them into employees. We’re saying those biases are promoting some and limiting others in specific areas. You show up saying, “Hey, but what if all that had almost no impact and they just biologically were programmed to do everything their parents and bosses were telling them to do? And parents/bosses were just coincidental with biology really explaining things?” And everyone in the room just looks at you confused wondering why you’re ignoring lifetimes worth of data to focus on a biology hypothesis with little data.

              EDIT: I’ll also add that the biology arguments showed up for blacks, too. They were just biologically designed to be dumb savages with no capacity for understanding or doing white things. That supported inhumane treatment from slavery to the Tuskagee Syphallis Experiment. Then, once laws tackled true issue (social discrimination), eventually many got educated and had a chance in business. Now they’re doing pretty much all the same things white people were doing with some billionaires, getting Noble Prizes, etc. I think we’ll see something similar if we combat social discrimination against women instead of similarly making biology arguments about how dumb, weak, incompatible for jobs, or whatever they are. Actually, we’ve already seen it at smaller scales across the U.S. when they’re allowed to prove themselves. You’re ignoring that data, too, for some reason.

        3. 5

          In another culture or in times past you could use the same reasoning to imply that women do not belong in sport, education, or should not be trusted with the vote. You can’t draw any conclusions about what women (or other groups) want, or are capable of by the current state of things. We’re all at least partially a product of the environment we grew up in, so if we grow up and see others like us doing one thing, we’re likely to follow. As humans, we’re incredibly adaptable, and I don’t think that trait has anything to do with gender or race. Sure we’re all different, but so much of that depends on culture and I personally think diversity of ideas and viewpoints is worth striving for.

          Also, the men and mothers thing was a bit silly don’t you think :)? I don’t think that’s a very fair comparison somehow.

          1. 1

            In another culture or in times past you could use the same reasoning to imply that women do not belong in sport, education, or should not be trusted with the vote.

            But he is actually arguing against positive discrimination. I don’t think there was positive discrimination for women in sport, education or voting.

            Also, the men and mothers thing was a bit silly don’t you think :)? I don’t think that’s a very fair comparison somehow.

            Not really. I see no reason, why men can’t do motherly role in family.

            1. 1

              Not really. I see no reason, why men can’t do motherly role in family.

              Even in that case, a male is generally called a “father” not a mother. Saying that the original comment was really just role based is a pretty weak support.

              1. 2

                I’m actually not sure about that. There are some assumptions with the roles a father plays in a family versus the roles a mother plays in a family. I think the argument is fundamentally a miscommunication around what the intention of the word mother is, since to some it’s a biological thing while others is a cultural thing and even that has some implicit meaning that may mean a feminine parent versus a masculine parent.

                1. 2

                  Take single parents as an example where a father or mother is responsible for providing both roles, we still all them a “single X” where X is the gender-specific name.

                  Or take same sex couples with children, even if one partner is fulfilling what would generally be considered the opposite role of their gender, the default naming convention is the gender specific one.

                  On top of that, as far as I have seen (and I’m happy to be proven wrong) people often self-identify as a father or mother based on gender. In my limited experience, people who which to transcend the traditional role of father and mother tend to just refer to themselves as a parent rather than trying to continue in gender-specific roles. But again, I can probably (and happy to) be proven wrong on that claim as well.

                  This argument that “father” and “mother” is role-based rather than gender-based might be a nice ideal but it’s an weak counter-argument in the context of this discussion.

        4. 4

          …Is your suggestion really that the underrepresentation in IT is similar to a biological difference?

          1. 3

            I’m not the person you’re responding to and I’m also not making a definitive claim, but are you really convinced that human sexual dimorphism has no psychological effects that could manifest as different career tendencies? I wouldn’t hazard a guess as to how much, exactly, biological differences influence career choice, but I would certainly guess it’s non-zero. This would be consistent with variances in gender distribution across many fields.

            Instead of a question, could you explictly state your position on this? It’s hard to construct a useful reply to what sounds more like a moral dismissal than a concrete argument.

            1. 1

              I responded to the biology angle here:

              https://lobste.rs/s/8qmra7/for_inclusive_culture_try_working_less#c_aqyakn

              Long story short: theres basically no data supporting it, there’s little data to be had outside of children, there’s tons of data saying it’s not biology, and someone’s motives should be questioned if they’re ignoring that to make biological arguments.

            2. 0

              https://phys.org/news/2017-05-gender-bias-open-source.html

              Yes, I am sure that being able to have a baby has no freaking affect and couldn’t possibly explain these results.

              1. 1

                Random noise can explain those results.

              2. 1

                First off, that study was absolute garbage. I’m not going to re-hash what plenty of qualified people have said, but here’s a link that should help. http://slatestarcodex.com/2016/02/12/before-you-get-too-excited-about-that-github-study/

                Second off, instead of saying anything substantive you’ve just responded with more snark and outrage. Being able to bear children or not is obviously not the only sexual dimorphism in humans, and you’re acting the fool by pretending otherwise. https://www.ncbi.nlm.nih.gov/m/pubmed/16688123/ https://www.ncbi.nlm.nih.gov/m/pubmed/24374381/

    3. 9

      Alternatively, diverse can also include those who cannot drink or eat meat. I’ve seen a few folks who were socially disconnected from the company because they could not attend any of the social functions being Muslim or Indian or Taiwanese where these preferences is much more common. Moreover, diversity can also include those who have timely obligations outside of the traditional Silicon Valley work schedule, like picking kids up after school or volunteering their time at other places. Our corporate environment pretty much does not hire anyone for part time work, and full time work has very flexible hours that can easily be misconstrued to staying at work late else risk giving a bad impression.

      I can kind of get what you’re saying. However, isn’t turning a blind eye to implicit discrimination a sin of its own? I agree with you that it’s hard to say someone who was born into privilege is a sinner but perhaps if they recognize that and still chose to keep that predisposition for themselves, is that not a sin?

      Also, you’re assuming that hiring is a zero sum game, where there is only one position and someone has to fill it, and the others will not get that chance. Perhaps including and engaging with a wider more diverse group of people will actually increase the overall cake size without having to force people to have smaller sizes or forgo the cake entirely? This is all purely speculation but what if doing this actually leads to more innovation and engagement by a larger overall population to be leaders and entrepreneurs such that it spurs a larger overall growth of the industry and ends up creating more overall jobs for everyone? Perhaps that is the missing key in our market right now, that we don’t have as many competing ideas and philosophies and prospectives so there really just isn’t as many people engaged in entrepreneurship.

      1. 0

        However, isn’t turning a blind eye to implicit discrimination a sin of its own?

        Of course not, because you have to discriminate. You brain is evolved to collect data of its surrounding then infer patterns from that data so you can discriminate against stuff in the future. You treat a tiger differently from a kitten because they are different even though in many ways they are similar. The only way to not discriminate is to treat everything the same, a non-sensible proposition.

        Now if you refer to the modern sense of ‘discrimination’ meaning treating people differently based on their inherited properties, which is somehow an unforgivable sin in the modern age (even though everybody does it, but they will say “im not a racist” before they explain what they do), you still have to face the facts that people are not the same. Different sub groups have different abilities, and we see these abilities play out in different outcome.

        Also, you’re assuming that hiring is a zero sum game,

        That particular spot is a zero sum game.

        Perhaps including and engaging with a wider more diverse group of people will actually increase the overall cake size

        I could say the same about less diverse group. That by being entirely discriminatory, there would be so many jobs that every single minority-person is employed. So this argument by itself works both ways.

    4. 2

      Diversity is just a social instead of governmental (but sometimes governmental) way to discriminate against the dominant subgroup for the non-dominant “oppressed” minorities.

      Depends on whose doing it. Often used that way. Doesn’t have to be, though, as one can get racial diversity by sole focus on performance and/or blind auditions. Mental diversity is more important if one wants higher-quality solutions but harder to select for. People have to be willing to bring in folks they might argue with every day. Most wont no matter what color or gender they are. In my company, it was mostly whites years ago coming in hiring pipeline when whites ran it. That was by biases of employees referring people [like them] and of hiring managers confirming people [like them]. My section is currently black-controlled (almost all women) with mostly blacks coming in the pipeline. Skill level is the same mix of bad, decent, and good as before far as I can tell. I haven’t dared ask if they have any interest in getting a balanced (by area makeup) percentage of whites in pipeline or males in their level of management. They’ll both not care plus be incredibly hostile to the idea like every other time I’ve done it anywhere else. Only exception was a bank that preempted me with quotas on gender where either type might be blocked to achieve their goals.

      “Of course when we talk about diversity in tech we rarely talk about asian males, since they don’t seem to have any problem succeeding in this domain more or less.”

      Indian or Far East. And especially under H1-B’s. Let’s not start filtering them for alternative demographics. It might not meet the managerial or compensation goals of the scheming business. ;)

    5. 2

      You sound set in your ways and not open to imagining or considering why diversity might be a good thing. I assume you’re in a ‘western’ culture, that you live in a city, work in tech, and that you are in a reasonably comfortable position where you don’t have to deal first hand with any non trivial cultural pressure?

      Diversity simply brings points of view, attitudes and needs that are impossible to imagine or simulate without first hand representation. This will in most cases significantly improve working practices and products/services. It is ideological, but it is also completely practical.

      Scale is an important question - you need to have consistency and boundaries within small social groups, but the main case where the need for diversity does not apply is a forcefully maintained large scale monoculture, which to maintain uniformity and stability must remove ‘the other’ from consideration. Is that what you’re going for?

      1. 1

        You sound set in your ways and not open to imagining or considering why diversity might be a good thing.

        I am not at all.

        What I am against in social, governmental and ideological push to insert whichever-subgroups into places via the logic that their lack of representation there is because of “oppression and xism” when the alternative explanation that they are not there either by choice or by lack of ability is more likely to be true.

        The word diverse is now being used primarily by people that seek to make such a push so it can be used as a warning sign. But I am not against diversity at all, I am against government and ideological mandate, including mandate for ‘diversity’ especially when it is based on spurious claim that the dominant groups are in a conspiracy to oppress and discriminate against the other subgroups.

        1. 2

          when the alternative explanation that they are not there either by choice or by lack of ability is more likely to be true.

          What bases are you making that claim off of, though? There are multiple bits of evidence out there that suggest that women, I cannot speak to other groups, are interested in IT however the culture either makes want to leave the industry or they cannot get in, in the first place.

        2. 1

          that the dominant groups are in a conspiracy to oppress and discriminate against the other subgroups.

          “maintaining and protecting the institution known as negro slavery–the servitude of the African to the white race within her limits–a relation that had existed from the first settlement of her wilderness by the white race, and which her people intended should exist in all future time. “ (Texas statement of seccession)

          Up to the 1960’s:

          https://en.wikipedia.org/wiki/Jim_Crow_laws

          Recently, after lots of black votes for Democrats, Republicans pass laws curbing their chances to vote:

          http://prospect.org/article/22-states-wave-new-voting-restrictions-threatens-shift-outcomes-tight-races

          So, this isn’t speculative. There’s definitely groups trying to restrict other groups. It’s sometimes obvious, sometimes indirect. The dominant groups have also always used government mandates to ensure dominance. We see this on the business side where they try to create legal monopolies on land or ideas. This is something that stays happening. So, the solution is to combat it with legislation countering it.

          Note: I’m using black history in these examples just because it nicely illustrates the points. That they thought of blacks as less than human meant they were more open about their discrimination, even making it law.

  • 7

    Is this truly what the world has come to?

    Productivoty gains by writing Dockerfiles, config and shell scripts, when any sane framework and/or standard library gives you the tools to mock things.

    Like why would a local developer want redis?

    Leave the hall.

    1. 3

      The idea is to have a dev environment that closely resembles your production environment.

      1. 3

        I think you should use a virtual machine for this, though. For instance, in the project I’m working on, I’m on Linux and the other two developers are on Macs so my understanding is that Docker won’t help.

        1. 3

          This is exactly where docker helps.

          1. 2

            My understanding is that software packaged by Docker still uses the host operating system’s libraries/etc. under the hood. Is this correct? If so, then it doesn’t seem like a solution as we’d be still running on different operating systems.

            1. 2

              Not at all. You can run a different district. Everything is duplicated and you only have the exact versions specified.

              1. 2

                I’m sorry, I mentioned libraries but this is not what I really had in mind. (I also assume that autocorrect changed “distro” to “district” in your reply). I’m concerned about platform-specific issues like path lengths, characters allowed in file names, kernel APIs, low-level system stuff (e.g. OOM killer).

                If the problem statement is: developers (and production) use different environments then the solution would be to make them use the same environment. I use VMs to achieve that and my impression is that virtualized environments are closer to “identical” than containers.

                1. 3

                  characters allowed in file names

                  Funny you should mention that. I ran into exactly this sort of a problem last week, where Docker, (which uses the host’s FS) couldn’t differentiate between files that differ only by case on MacOS’s case-insensitive-by-default filesystem. As a result, the state of my system running on Docker was significantly different from that on an Ubuntu machine, even with everything else (libraries, etc.) being the exact same.

                  That being said, I still find Docker very useful for quickly spinning up an instance of something on my Mac. But in the future, I’ll think more carefully about where the abstraction ends and the host starts mattering.

    2. 1

      Simply put: if environments don’t match, mistakes get made.

      I’ve seen it time and time again - to give some examples: local dev using a mocked out in memory cache, prod using memcached/redis; or local dev using SQLite and prod using Postgres. Mistakes get made due to overlooking the differences between implementations.

      No mock is as perfect as the real thing and it’s much nicer finding issues in development than at deploy time.

      1. 2

        Fire the dev and hire someone who knows integration testing.

      2. 1

        local dev using SQLite and prod using Postgres

        I was in a similar situation (but with MySQL instead of Postgres). We were getting failure in production that we couldn’t reproduce in development. It seemed as if the program was trying to insert data into a column of the wrong type. This is how I learnt that SQLite does dynamic typing which is code for “we don’t care about column types”.

        1. 1

          Yep, it’s the same for testing. There are plenty of companies out there use in-memory SQLite databases with their test suite “for speed”, without realising they’re basically throwing type safety out of the window and making their tests effectively useless.

          1. 1

            “Boss, I wrote a program that does the wrong thing but does it really fast!”

    3. 1

      redis is not only a good replacement of memcached, it is a great pub/sub server, a leaderboard and has a geoip api. I need redis in development because I use redis to implement features that use the apis that redis provide.

      On the other side, even if am not a huge fan of docker, docker is useful in many cases. For example I use Void Linux and OpenBSD as my desktop operating systems. In one of our client we store data in riak. riak is not available in Void Linux, neither in OpenBSD. Thanks to docker I can easily run riak in docker.

  • 4

    The rationale I often hear w.r.t. algorithm interview questions is “well, sure, you’d never do this if you get hired, but I want to see how you think”. Is implementing an algorithm the best way to figure out if I can solve problems? Are the problems you need solved best represented by implementing a power-set method? [Real life example.]

    Interviews that I give are much more on the “here’s some code that does almost everything, but needs one more feature”. Then another feature, and then another feature. Often figuring out what the problem is can be the hardest part, not the actual implementation.

    1. 1

      but I want to see how you think

      Developers are barely good enough to think through their own issues, so I always laugh when I hear this crap. As if some programming junky could even be remotely good at accurately figuring out someone else’s thinking process.

      1. 1

        I always laugh when I hear this crap

        I actually told the interviewer that I didn’t think this was a good way to go, but pushed on anyway. I’m tempted to turn down their desire to move forward to an on-site interview because they’ve already proven they’re not good at it.

        Not to mention that my work at Google, and the 9 years of work at my current company apparently don’t count for anything.

  • 1

    Google Play Music subscribers have basically had this by accident since Google Play Music shows “Official” Youtube videos in the view.

  • 1

    Hot damn, semantic examples. I’m sold.

  • 4

    This is probably going to come off as negative, but while I like the typing Crystal feels like a 100% copy of Ruby (warts and all) without the ecosystem.

    Though maybe gems will work naturally.

    1. 7

      Typing and native binaries seem like big gains.

      1. 1

        Yeah, but like that’s true of any language?

        1. 3

          Not trying to dispute that, only trying to say that it could offer gains greater than a copy of Ruby could. :-)

          1. 4

            Yeah, you’re right about that.

            My complaints are really that I’m tired of seeing Ruby’s warts continued in new languages.

            1. 3

              What Ruby warts do you see being continued in Crystal?

    2. 7

      Your complaint is valid, but if your new “copy of Ruby” changes too much, then it’s no longer a copy and no one who likes Ruby will want to use it. That puts languages like Crystal in between a rock and a hard place. Do you want to be like Ruby or “the next Ruby”? Or do you want to forge your own path? Neither path is an easy road in my opinion. And, finally, it’s a very fine line to walk between the two.

      1. 4

        Hey, yeah I’ve made the same argument about RubyMotion (which has minor differences).

        I believe that honestly if Crystal gets the ecosystem it should start ripping out the warts. It’ll be a long journey, it’ll have a lot of discomfort, but we’ve learned a lot since ‘91.

      2. 4

        Agreed, I have the exact opposite opinion: too many languages are “inspired by X” but with some meaningless change (functions are defined with func instead of def for example). It is added cognitive load for no real gain.

  • 1

    Impressive, is it node-webkit or electron?

    1. 3

      Tomcat and JavaFX

  • 3

    Interviews, finishing up my pure ruby HTTP routing library (fastest so far!), some more shogun stuff (HATEOS API). Just FOSS stuff.