1. 8
    The Post-Meritocracy Manifesto culture postmeritocracy.org
  1.  

  2. 18

    I’m very, very pro-diversity in all walks of life (see my past comments for example) but there are a few problems here:

    We acknowledge the value of non-technical contributors as equal to the value of technical contributors.

    That’s not always true and it’s silly to think so. If my goal is to write a kernel device driver, having high-quality documentation or something is irrelevant if the codes doesn’t work.

    Now, if you’re writing user-level software, the UI design work, documentation, and so on is critical. It doesn’t matter if the code works if no one knows how to use it or if it’s so clunky they choose something else.

    We can add the most value as professionals by drawing on the diversity of our identities, backgrounds, experiences, and perspectives. Homogeneity is an antipattern.

    Again, yes and no. For application software it’s critical you have diversity in development because you want to reach as broad a user base as possible (and you should get actually disabled people to use and help develop your accessibility mechanisms, dammit!)

    But for low-level bit manipulation or parsing or whatever…there are only so many ways to skin a cat and technical skill is more important than anything else.

    We are devoted to practicing compassion and not contempt. We refuse to belittle other people because of their choices of tools, techniques, or languages.

    I’ll be dead in the cold, cold ground before I use Emacs!

    The rest of it I agree with, especially this:

    The negative impact of toxic people in the workplace or the larger community is not offset by their technical contributions.

    Absolutely. If you’re such a jerk that you drive ten people away…well, chances are no matter how good you are, you’re not as good as those ten people put together. Good projects have lost good people because of asshole behavior.

    And, finally, we gotta remember: projects are free to adopt whatever policies they like. If you think this sort of thing is like Hitler and Stalin combined, great! The beauty of software is you can go write your own thing.

    1. 5

      Personally I dislike the notion of this skill is more important than that skill.

      Skills are different they do different things.

      “Value” assumes you can comparing something comparable.

      Skillsets are so broad and categorically different, trying to place them in value order is like comparing apples and orangutans.

      That said, it is the nature of many humans to more highly value the skills they personally have. It makes them a happier to think that way.

      1. 8

        Absoultely, but certain skills are more valuable than others in certain domains, by which they become comparible. Fluency in French is absolutely essential if you’re translating french literature, and basically irrelevant if you’re an accountant in an English-speaking country.

        The problem with the manifesto is that it takes an incredibly broad category of endeavor and implies that all skills within it are equally valuable in all situations, which is false. Bedside manner is critical if you’re a general practitioner and largely irrelevant if you’re a research doctor

        1. 1

          Fluency in French is absolutely essential if you’re translating french literature, and basically irrelevant if you’re an accountant in an English-speaking country.

          To go further, not all languages are equal and some are more valuable than others. English is the most widely spoken language in the world, Spanish, French, Mandarin, Hindi are all high-value languages to acquire. Individual minority language skills are arguably less valuable overall because they’re less widely spoken.

          If it’s reasonable to argue that some skills are inherently more valuable than others in different fields, I don’t see why software should be different.

          1. 1

            Individual minority language skills are arguably less valuable overall because they’re less widely spoken.

            Well, except that the languages you speak forge the way you think.

            I studied a couple of different languages (to various degrees): Italian is my mother tongue but I speak English and I used to speak Portoguese, a bit of Russian and a bit of Swahili (plus a couple of local Italian dialects that I understand but I cant speak).

            Each time I learned a new language I discovered different ways of looking at things that I couldn’t conceive before. And this effect survive even after I completely forget the language, as it is for Russian and Swahili that I haven’t spoken in the last 15 years.

            So basically the value of learning a language for a programmer might not be that low. At least if your work require some creativity, the more varied is your culture the more varied is what you can invent.

            I agree that a culture of NIH does not require free thinkers, though.

      2. 4

        Well said! I agree with all of that.

        1. 1

          I agree with everything you’ve mentioned however I would like to put forward two points you’ve made from a different angle. The wording of this manifesto is vague and you assumed that it emphasized on some aspects that maybe it didn’t, or maybe it did (It probably did but I’m just adding to the discussion for fun).

          For instance:

          We acknowledge the value of non-technical contributors as equal to the value of technical contributors.

          What do we mean by contributions? Could it just be listening to a non-technical person’s ideas or is it limited to writing documentation, graphic design, translation, and other kinds of similar work? Nevertheless I still don’t see how anything in those could be looked at as equal, could be the ideas of technical people are more important in some cases or the ideas of non-tech in other cases. Maybe the word “equal” was meant as “don’t ignore them completely”.

          We can add the most value as professionals by drawing on the diversity of our identities, backgrounds, experiences, and perspectives. Homogeneity is an antipattern.

          If you understand this point as a “we have to cater to all needs” then I’m all in with your reply, it depends on what kind of work needs to be tackled. But if it’s about bringing diversity and creativity into thinking about problems and solutions then it’s another topic. It switched to “avoid doing the same things over and over again in the same way, invite people from different places maybe this will bring innovations in ways we couldn’t predict”.

          We are devoted to practicing compassion and not contempt. We refuse to belittle other people because of their choices of tools, techniques, or languages.

          I’ll be dead in the cold, cold ground before I use Emacs!

          No clue how compassion and contempt got injected here… Unless language is meant as natural language (not programming language), and techniques as methods of learning and working. (But that’s probably not what is meant)

        2. 13

          “We understand that working in our field is a privilege, not a right.” <- This is bullshit. Anyone at all has the right to program, and attempt to get other people to pay them for programing.

          1. 8

            I suspect that by “working” they mean “being paid to work …”, not “attempting to get paid to work …”, and that is certainly not a right.

            1. 5

              Careful, you are replacing one badly worded statement with another.

              It is a right to attempt to get paid.

              But unless you have satisfied a mutually agreed contract, it is not a right that your attempts will succeed.

            2. 4

              I think it’s ironic that participation in the field is described as a privilege rather than a right but later we get

              We must make room for people who are not like us to enter our field and succeed there

              How on earth can everyone be obligated to be inclusive if no one has a right to be included?

              1. 2

                Counterpoint: many people in the industry are “have been programming since elementary school” types. Having the resources for that (usually your own computer to play with, + sometimes access to classes and stuff) wasn’t a given.

                Even those who go out of their way to do stuff like coding camps get shunned by the “truly passionate”.

                It’s not exactly the original point but accepting people from different backgrounds is important I think.

                (As an aside: this is also present in the “show us your GitHub profile” talk. Maybe you have kids and simply don’t have that sort of bandwidth. Or don’t care about making your own web framework?)

              2. 9

                Let’s just go over these in light of author’s political goals and previous actions instead of looking at them in isolation with a moderate interpretation like author hopes for.

                “Our professions do not define us; we are more than the work we do.”

                The author’s profession is pushing political doctrine and domination everywhere they can, especially anywhere where software is made. They do it day and night. They live for this shit. So, the very first point is either a lie or a double standard.

                “We believe that interpersonal skills are at least as important as technical skills.”

                True for the world in general. True a lot for software development in the average case. You might want to ask what interpersonal skills means for this person, though, as they require all speech and actions to conform to their core, political beliefs. They punish those who don’t as being insensitive, intolerant, or just supposed monsters. What does the phrase mean to them?

                “We can add the most value as professionals by drawing on the diversity of our identities, backgrounds, experiences, and perspectives. Homogeneity is an antipattern.”

                You add the most value as a professional if you deliver what you’re paid to deliver and then a bit more. This line above is political maneuvering. I find value in diversity in ideas or thinking styles which have evidence backing them. The author isn’t mentioning that diversity to them means race, gender, sexual orientation, and so on. I don’t want a bunch of people that look different but think really alike in my “diverse” organization. It’s why I favor blind auditions with diversified supply on the other stuff. Also, a truly diverse organization will have more conflict than a regular one based on both educational materials from people in author’s camp I studied in college and personal experience in truly, diverse organizations. If everyone is happy or agreeing most of the time, it’s probably not a diverse organization since they’re so alike.

                “We can be successful while leading rich, full lives. Our success and value is not dependent on exerting all of our energy on contributing to software.”

                Since the article is political subversion so far, this is likely a claim that’s meant to get the audience nodding their head yes. Few would disagree with it. Better sophists start with stuff like this in succession followed by the half-truths and lies to increase odds people will be agreeable to those points. It’s an ancient technique of persuasion. Author is trying to be less obvious or just failing at the technique.

                “We have the obligation to use our positions of privilege, however tenuous, to improve the lives of others.”

                This is such a loaded statement as described in other write up I linked here. It means they believe certain things about specific groups of people who will be forced, if their doctrines are enforced, to say or do whatever the author thinks for all other groups. The main target of these claims are white, straight males. There are tons of them with hardly any privilege in life facing all kinds of structural discrimination and desperation. The author’s part of the political spectrum still treats them as privileged in some way instead of recognizing they’re victims that need support instead of lectures. Further, hardly any minority groups with these beliefs even attempt to help disadvantaged, white, straight males. The above claim simply means they’ll almost always serve others or be ignored in favor of others. This is true even if the privilege reverses where their types are dominant (i.e. privileged) in an organization. They still talk like they’re the oppressed minorities with the “majority” member forced to cater to their expectations.

                “We must make room for people who are not like us to enter our field and succeed there. This means not only inviting them in, but making sure that they are supported and empowered.”

                Tell that to the white, straight males in non-white, non-straight, or non-male controlled environments. Maybe the “two, token white men” in author’s hiring strategy. Or even conservatives or just not as liberal people such as me in their organizations. I’ve been a token, white person before. Many people in my family have since there’s lots of non-whites in charge of government, businesses or departments out here in Mid-South. Spoiler: they talk down to us, exclude us from inner circle, pay us less, promote us less, and get us fired if we cross one of their lines. Same shit non-whites and non-males endure under structural discrimination by whites and males. Even the words majority or minority are a bit sophist in the larger context the author operates in: should just talk about those with control/influence versus those without in each context. That’s how it actually works. They ignore it since their political beliefs reject the mere existence of white victims of structural racism. Possibly the others, too, that are “majority.”

                “We have an ethical responsibility to refuse to work on software that will negatively impact the well-being of other people.”

                Specifically, the sets of people author cares about. The rest can suffer as much as deemed necessary by the author. The author has taken on projects that negatively impacted such people with political disagreements. They ranged from assaults on FOSS projects to pushing dogma in companies pretending it’s just about stopping trolls or abuse the management would’ve all agreed on. It’s OK to cause negatively impact if it supports The Mission or the targets are political opposition no matter how harmless or insignificant. Since they’re villains or not human, they don’t have to be treated as author says people should be treated.

                “We acknowledge the value of non-technical contributors as equal to the value of technical contributors.”

                This is probably a good point for activism against Silicon Valley types that value only the code or technologists despite the proven value of other professions, esp marketing/sales. Non-technical contributors are important but not necessarily equal. Microsoft, Oracle, and so on showed the programmers were about the least important part of the game. It was great sales teams, consultants, lawyers, financial analysts, and so on that got them from useful software to billionaire owners and lasting companies with locked-in customers. The programmers did their part. Group activities have a lot of skills involved where a mix of them are necessary for success. That mix that works can range from just a coder with poor social skills in one project all the way up to a diverse team with many skills working on multiple deliverables. People should be open-minded to what each group can contribute.

                “We understand that working in our field is a privilege, not a right.”

                This is another game by the author. It is if free speech is a mere privilege. If it is a privilege, then I vote for use of intentional deception with money involved to be “speech fraud” or something. The author would be in trouble after many deceptions supporting political agenda in companies. If free speech is a right, then anyone can describe a program since it’s a form of speech that runs on a computer. Some even look like English. Author would be deceptive for selfish, political gain again.

                The author really just wants to create a standard that will be used to punish those that don’t agree with the author’s narrow, political beliefs that reward some and hurt others. Their access to the organization being a “privilege” to be revoked at any time is critical foundation author needs others’ to adopt. Then, as author did in Github and elsewhere, they’d show up with their supporters demanding specific Codes be adopted with people like them or caving to them enforcing their interpretations of them. The control and damage to outgroups follows.

                “We are devoted to practicing compassion and not contempt. “

                See people who disagree with author’s political beliefs. Author isn’t about compassion or contempt: the word is aggression with systematic damage across all realms of control. I agree on the interpretation where it’s just about tools, techniques, or language. I just have to think broader given political games so far.

                “The field of software development embraces technical change, and is made better by also accepting social change.”

                The field of software, with its diverse beliefs and people, should all change to adopt and enforce my groups’ beliefs on all the others. Including those who it claims to be about benefiting or empowering who disagree. This more honest version of the above statement might get less adoption, though, by organizations wanting to just be more civil and innovative.

                “We strive to reflect our values in everything that we do. We recognize that values that are espoused but not practiced are not values at all.”

                End with a finish that everyone can nod yes on. Hope that works. It didn’t. Reading the writing in terms of the author’s consistent philosophy, end goals, interventions, and political attacks showed this manifesto uses the common technique of creating an impression of one thing while being intended for use in an entirely different one. The motte-and-bailey doctrine in action.

                1. 5

                  I’d like to point out that this is done by the same person who created the Contributor Covenant, which was intended to embed feminist views into Open Source projects.

                  This is likely an push with political intentions.

                  1. 1

                    Can you please define “political”, as used here and in your previous thread about how you choose software?

                    I ask because “political” has a number of meanings. Do you mean that it has to do with ideology, or that it has to do with intra-commiunity factionalism?

                    1. 8

                      The person has specific beliefs about what thoughts and actions should be allowed in general in terms of politics. Specifically, “social justice” with all its internal contradictions, sophism, and anti-white, anti-male behavior described here. Their religious-like doctrine is to be enforced everywhere in every project, company, college, and government if they can make it happen. Even a disagreement outside the organization is grounds for being ejected from the organization. That person also shows up in FOSS projects with crowds of people trying to force them to adopt their political stance and overly-broad Codes of Conduct flinging insults at them if they don’t do it. They also do this while giving nothing in return either in terms of code or paid developers for demands such as ejecting core contributors.

                      So, that person is on a crusade to force a specific brand of politics on everyone regardless of who they are. Anyone disagreeing will be hit with labels and social pressure to be forced to conform. They might be white/male/straight, a minority member with different views… anything. It’s not allowed since they know what’s good for us all. They will also be the judge, jury, and executioner. I think not.

                      1. 0

                        So you have managed to produce a long and useless diatribe against… what? SJWism or something? in which you use the term I asked you to define several times without defining it. Thanks, that’s exactly what I was looking for /s

                        1. 3

                          I linked to an article that itself has many examples of the specific brand of politics the author of the document pushes. It would be used to silence everyone from white males to black women to trans people who disagreed in any forum on anything that was dogma to author’s group. That’s what author made a career out of doing already. I block it for that reason.

                          1. 2

                            That article has a lot of issues. To exemplify (in other words, most of the article is wrong, but this is the part I’m using to illustrate that):

                            Everybody is racist. And racist people deserve to lose everything they have and be hated by everyone.

                            This is overly simplistic and the author knows it. “Everybody is racist” and similar phrases are used as an urging to examine one’s behavior and epistemology for racist influences, not an injunction to hate everyone.

                            Also, citation needed on the author of this “manifesto” being some kind of aspiring evil dictator…

                          2. 1

                            I linked to an article that itself has many examples of the specific brand of politics the author of the document pushes. It would be used to silence everyone from white males to black women to trans people who disagreed in any forum on anything that was dogma to author’s group. That’s what author made a career out of doing already. I block it for that reason.

                            1. -1

                              Duplicate.

                    2. 5

                      Meritocracy is like Communism: great in theory, but we’ve mostly only ever seen bad implementations.

                      However, this manifesto seems mostly unrelated. It has all kinds of content about people’s worth as humans. Meritocracy (in both good and bad forms) isn’t about that at all. Of course the quality of your work doesn’t make you more or less valuable as a person! It might make your work more or less worth merging, though.

                      1. 5

                        I really don’t understand these manifestos. This feels like an extension of look-at-me culture with little substance but a ton of platitudes.

                        We can add the most value as professionals by drawing on the diversity of our identities, backgrounds, experiences, and perspectives. Homogeneity is an antipattern.

                        This already happens. I’ve worked at a company that was mostly white males, but none of us had very similar backgrounds. Some would argue our skin color and genitals would make us homogenous, but it’s not true. We all had vastly different experiences in getting to where we were (and there were only 2 of us in software out of like 15 people).

                        How do you hire for a heterogenous company anyway? If you base it on superficial things like skin color, you’re racist. If you base it on gender, you’re sexist. I’m talking about people on both sides here - you can’t use those as qualifiers for how good someone is at their job. You also can’t ask their personal history and sexuality. So what are you trying to do here?

                        It feels like another one of those “too many white/males in the industry, we need to diversify” without realizing that not all whites/males are the same. Surely if I said all black males are the same, someone would question it.

                        We can be successful while leading rich, full lives. Our success and value is not dependent on exerting all of our energy on contributing to software.

                        I’ve never worked at a place that acted differently than this. I’m not saying those types of places don’t exist, because I’m sure they do. I’ve worked at a fair number of companies, though, big and small, and no one has acted like this.

                        We have the obligation to use our positions of privilege, however tenuous, to improve the lives of others.

                        What does this even mean?

                        We must make room for people who are not like us to enter our field and succeed there. This means not only inviting them in, but making sure that they are supported and empowered.

                        No one is like me, and I welcome anyone to try out what I do if they’re interested. Beyond giving them feedback and code reviews, I don’t know what else people want. I didn’t even get that when I was coming up, but I had the desire to keep learning and pushing myself regardless of who I worked with. I feel like this may border on hand-holding.

                        We have an ethical responsibility to refuse to work on software that will negatively impact the well-being of other people.

                        This is a total judgment call on what negatively impacts the well-being of other people. If I worked for the cattle industry, I could be deemed as hurting the well-being of other people (deforestation, hormones, etc). I work for the credit card industry right now, which absolutely hurts the well-being of some people. It helps others. I don’t feel like I’m in a predatory company, though. I wouldn’t even bother with a place that I felt was that way.

                        We acknowledge the value of non-technical contributors as equal to the value of technical contributors.

                        Hmm, sort of. It depends on the role. There are definitely some roles that do NOT match the value of technical contributions, but there are others that are vastly more important. That goes for any role, though. I’m not sure what this even means.

                        We understand that working in our field is a privilege, not a right. The negative impact of toxic people in the workplace or the larger community is not offset by their technical contributions.

                        This would apply to any career path. You don’t really have a right to be in any field. So ..?

                        We are devoted to practicing compassion and not contempt. We refuse to belittle other people because of their choices of tools, techniques, or languages.

                        You probably write PHP, don’t you? (I’m kidding!!)

                        The field of software development embraces technical change, and is made better by also accepting social change.

                        I don’t see the connection between software development and social change. Gay marriage being legalized does literally nothing to my list. Nor does it change anything in my credit score application for work. I mean, I guess if you’re saying you’re in the wedding cake biz and you now get more customers, sure, you’re going to embrace that. This is a huge stretch, though.

                        I’m done ranting, I guess. I’m obviously not going to sign this and I would implore anyone thinking of doing so to ask themselves why they are. If you’re thinking of signing it because something speaks to you, I would ask you to “be the change you want to see” despite how corny that is. Signing this doesn’t mean anything, acting in a way you feel best expresses your values does though!

                        I try to stick to the golden rule, despite how jerky some people can be (including myself). We’re all going to be dead soon, so make the best of it that you can.

                        1. 4

                          I do want to pick on one thing here:

                          I don’t see the connection between software development and social change.

                          As a non-male, non-female person, technologists pretending I can’t exist is a right pain in the ass. Having to choose between “male” and “female” without any explanation of the effects of the decision and no option to not choose on many sites is quite aggravating.

                          Similar issues arise with less contentious personal data: for instance, several applications I’ve used assume I have only gone to one college, while in reality I have separate credits from a local community college and my 4-year degree program.

                          Technologists literally encode social norms into software, and it is our responsibility not to shut people out of those systems artificially.

                          1. 5

                            That’s not really a technologist thing, that’s a product decision. That really has nothing to do with software developers, as though they are deciding on what to put for gender in a drop-down menu.

                            1. 0

                              I disagree. I can’t find it at the moment, but I watched a great talk about how a developer at Pinterest built and A/B tested a more inclusive gender entry system which is now being used in production.

                                1. 4

                                  That’s a neat presentation, but for those of us who haven’t raised 1.5B in funding there are usually more pressing engineering concerns.

                                  1. 2

                                    Pinterest is quite a different environment than my employer.

                                    Here are a few of the differences:

                                    • Most applications are developed solely for internal use.
                                    • Turnover is low, reorganizations are rare, and there isn’t a lot of chaos.
                                    • There are about a dozen extremely busy developers.
                                    • Software systems are owned by an individual or team.
                                    • The division that funds the development of an application decides on the scope of a project.

                                    We may not have any applications that ask the user for a gender identity.
                                    If there are any, then the options were determined by HR and the division that funded the application.

                                    1. 1

                                      We may not have any applications that ask the user for a gender identity.

                                      This is, I think, a key point. There are not many reasons to ask for a gender identity. From the top of my head:

                                      1. You’re doing medicine and you mean sex. In that case, ask about sex, but still don’t leave out intersex people or you will have a bad time.
                                      2. It will be used to determine preference for partners. This is perhaps the most complex case as it does absolutely require canonicalization.
                                      3. It will be passed to a third-party system that has no understanding of nonbinary gender. In this case, that third-party system sucks, but it’s not morally an issue for you (since the decision has been made elsewhere). Putting pressure on the other system to change would be good but may not be possible.
                                      4. It is meant to be displayed somewhere, like a profile. In this case, probably an arbitrary string is fine, perhaps with suggested options.
                                      5. You want to use it to target ads. Don’t. That’s going to lead you down a rabbit hole of sexism and inaccurate targetting. See, for example, several trans women I know who started getting ads for women-focused products which they wanted long before they came out to anyone, because Google uses behavior, not stated gender, to target ads.
                                      6. You want demographic info. In that case, the whole point is to represent reality as closely as possible, so it seems hard to justify not at least adding an “Other” option.

                                      This is a very small subset of apps (for example: Pinterest, why?)

                                  2. 1

                                    It was! Thank you.

                              1. 3

                                technologists pretending I can’t exist is a right pain in the ass

                                That’s neither a fair nor charitable reading of what’s almost certainly going on. It’s vastly, vastly more likely that the developers were making tradeoffs on time and implementation complexity, and went with the choice that frankly works in several sigmas of the population. Engineering requires limiting problem domains, and while I’m sorry you fell on the wrong side of that line, it’s a valid one.

                                EDIT:

                                I have seen that particular invocation many times, among friends, family, and others–if somebody immediately makes everything a life or death matter it becomes very difficult to have productive discussions (as one would expect!).

                                1. 8

                                  That’s neither a fair nor charitable reading of what’s almost certainly going on. It’s vastly, vastly more likely that the developers were making tradeoffs on time and implementation complexity, and went with the choice that frankly works in several sigmas of the population.

                                  I think that’s also uncharitable, in that it assumes there’s intent. I think the most likely case is ignorance. Realizing that having “male” and “female” is insufficient is a matter of life-experiences: if you’re not nonbinary and don’t know anybody who isn’t nonbinary, then you’re not going to realize you should be using nonbinary options on your site.

                                  This isn’t only a problem with inclusion and social norms. See what can you put in a refrigerator for an example of how lacking life-experience can lead to you missing edge cases in your systems.

                                  Engineering requires limiting problem domains, and while I’m sorry you fell on the wrong side of that line, it’s a valid one.

                                  This gets into “what’s efficient” vs “what’s just”. Just because a tradeoff is valid engineering-wise doesn’t mean we have to accept it socially… nor that the status quo is what we should accept, socially. Remember, the Americans with Disabilities Act is less than 30 years old.

                                  1. 4

                                    … it’s a valid one.

                                    In other words, fuck me for not being willing to conform in a way that makes another software developer’s job very slightly harder. This is literally exactly the attitude I’m highlighting as harmful. There are many more assumptions we encode into our software - for instance, basing a great deal on the ability to see, or even to see in color - that are harmful to subsets of our users.

                                    1. 5

                                      fuck me for not being willing to conform in a way that makes another software developer’s job very slightly harder.

                                      There are a dozen possible reasons that that field is implemented as it exists, and I will bet you lunch and a beer that none of them are “Let’s find another way of passive-aggressively fucking with trans or non-binary folks”. Many of those reasons are probably more complex, either due to technological or organizational reasons, than you are willing to give them credit for.

                                      1. 1

                                        Agreed, 100%! That’s exactly how systemic bias works: few people consciously choose to screw over the disadvantaged group; instead, problems come from simple ignorance or willful neglect of that minority’s needs. That allows them (and, apparently, you) to justify ignoring complaints from that group without making the effort to improve the situation…

                                        1. 1

                                          Yes, I suppose there is a systematic bias in engineering towards getting the most benefit from the least effort.

                                          Also, please don’t assume anything about the software I write or have written or the issues I ran into trying to support edgecases. It makes you come off as shrill and petty.

                                          I don’t assume your gender, please don’t assume my history.

                                          1. -1

                                            there is a systematic bias in engineering towards getting the most benefit from the least effort

                                            The most benefit for whom? This is precisely the question the manifesto asks.

                                            please don’t assume anything about the software I write or have written or the issues I ran into trying to support edgecases

                                            That wasn’t an assumption about anything; it was a comment on how you did the thing I described in the post I was replying to.

                                            I don’t assume your gender

                                            Do you… really think trans people say that? Like ever? Because I know a lot of trans people and I have never heard anyone use the phrase “assume my gender” unironically.

                                            1. 3

                                              The most benefit for whom? This is precisely the question the manifesto asks.

                                              Let’s say, for the sake of argument, that it takes X man-hours to implement feature F that benefits A users. Let’s assume it takes (X+Y) man-hours to implement feature F’ that benefits (A+B) users. We assume that F’ is a strict superset of F functionality, and that B is strictly positive. We assume that the additional B users pay us the same amount as the A users.

                                              We define the efficiency E as the number of users benefiting from some feature divided by the time it takes to implement that feature.

                                              So, we get:

                                              E(F) = A / X
                                              E(F') = (A+B) / (X+Y)
                                              

                                              Thus, it’s pretty obvious that the marginal benefit, even if non-zero for some users, can be dwarfed by costs if the implementation time is too great.

                                              To hammer this home with a concrete example:

                                              You have 10 users with feature A that took 1 man hour. You get an additional 2 users for implementing feature A’ instead, which takes 2 man hours. Your efficiency has dropped from 10 to 6 because you went after those 2 users.

                                              This is neither biased (except towards efficient allocation of resources) nor particularly complicated a calculation to make.

                                              Genuine question: have you not ever had to deal with sacrificing features because of limited engineering resources and time constraints, even features you knew were important to somebody?

                                              1. 2

                                                This is neither biased (except towards efficient allocation of resources) nor particularly complicated a calculation to make.

                                                This is not a small bias however. It’s a huge cultural bias with possibly surprising effects.

                                                When I was a young and inexpert web developer (or in current parlance, a full stack developer) I was asked to add online payment to a web site used by turists from all around the world.

                                                I studied the alternatives: back then few italian banks provided viable online payment solutions, and Paypal was still not widely known in Italy but I studied it too. After a 2 or 3 days, I talked with my boss about the solutions I had in mind, their pros and cons and the effort required.

                                                My boss told me something like “No, I want you to add an input box to the registration form so that turists can put their credit card in, and record it in a new column of the user table. It’s at most one day of work and you are late.”

                                                I remember I said: “Sorry, but I will not do that”.

                                                The boss was pretty explicit about the fact that I cannot say “no” (it was a small italian ISP and we were just 3 web developers, most people there were system administrators). Being young and weird, this cristalized my position: I said “I think that, if that’s the only option, you should tell the customer they cannot have the feature, as I will not do that.”.

                                                The boss was pretty angry, he escalated to the company owner that again explained me that I were not professional, that I should always do what they ask since they are accountable, that I was reducing the whole company efficiency just for phylosophy and that this would have had implications in my career and so on… but my position did not change.

                                                After wasting half a day in three about this, they assigned the task to another developer that did it pretty rapidly.

                                                One years later the website was hacked by a Brazilian crew that stolen all the data, including the credit cards. They were kind enough to thanks everyone in the home page.

                                                The company got sued and settled to pay the customer around 4.000.000 euros of demage.

                                                Trust me, being right that time was not funny. Not even when everybody understood I was right.

                                                But it teached me a lesson: “efficient allocation of resources” is often an illusion.

                                                1. 1

                                                  Genuine question: have you not ever had to deal with sacrificing features because of limited engineering resources and time constraints, even features you knew were important to somebody?

                                                  Yes, but I take your point.

                                                  Your analysis is spot on, of course, as far as it goes. However, it only goes so far. We are forced to ask the question: does string gender really take twice as much effort to implement as bool gender? I seriously doubt it.

                                                  1. 3

                                                    I’ve had this fight with several product managers. For those interested in practical ways to improve the situation, may I recommend digging into “why do you want this info” and incorporating that into the question.

                                                    For instance, one product would refer users to gender specific services; we could reword the question to “are you interested in services targeted to men/women/both/neither”.

                                                    In another case it was because they wanted more money for ad placements; we pretty much had to stick with binary gender as that’s what the advertisers paid for.

                                                    1. 1

                                                      This is exactly what I was taking about, thanks for the examples!

                                                      1. 4

                                                        I feel like these discussions (hell, most social justice discussions) are impossible to hold in the abstract; it devolves into people talking past one another. Examples are the only way I’ve found to get past that.

                                                        1. 1

                                                          @danielrheath and @dbremner both bring up most of the examples I would’ve gone with. Further annoying reasons exist like:

                                                          If devs have to interop with any of the above, complexity of implementation gets a good deal more complicated.

                                                          1. 1

                                                            Do note here the difference between gender and sex. If you’re doing medical info, you need to ask about sex, not gender.

                                                            Also note that formulas like those given for estimating BMR break down for people who don’t physically conform to ideas about what is “male” and “female”; intersex people, people on HRT, et cetera generally require personal contact with physicians or simply cannot be evaluated on those criteria. While this is not the responsibility of the engineer, neither is it a good argument for restricting the available options in the general case.

                                                            Regarding legacy systems, it’s very easy to canonicalize; the examples you give either ask about sex, not gender, or have a third option.

                                                            Fundamentally, you keep making points about how it’s difficult or annoying to implement this, but not doing so comes at a cost as well: such a system is incapable of representing reality in a fairly major way. That’s a valid choice to make, but dismissing the population of people whose bodies or minds you are unable to represent as non-significant seems shortsighted and somewhat foolish.

                                                            1. 2

                                                              If you’re doing medical info, you need to ask about sex, not gender.

                                                              Go read the spec. It’s explicitly called “administrative gender”. I know that choice of words to be inaccurate, you know that to be inaccurate–but the important thing is that the legacy system in healthcare (and HL7/FHIR is a pretty big deal) doesn’t care. And the third option the standard gives is for intersex folks–so, is incorrect if used when that is not physically correct.

                                                              seems shortsighted and somewhat foolish.

                                                              Again, the recurring point is “Hey, yeah, the developer probably sees that there is a better answer, but fixing it when they run up against systems that are already doing it wrong is too expensive.”

                                                              Your original assertion way back was that the developers were doing this all out of malice or spite, and the thing all of us keep trying to tell you–because as devs we need to have some basic respect and charity towards each other until proven otherwise–is that there are many reasons for this thing to happen.

                                                              1. 1

                                                                Go read the spec. It’s explicitly called “administrative gender”. I know that choice of words to be inaccurate, you know that to be inaccurate–but the important thing is that the legacy system in healthcare (and HL7/FHIR is a pretty big deal) doesn’t care.

                                                                Right, but “administrative gender” is a technical term meaning, effectively, “sex”, so we’re in agreement about how that should be represented. If the term must be used on, e.g., a patient registration form, explanatory text should be present (and usually is, in my experience).

                                                                Your original assertion way back was that the developers were doing this all out of malice or spite

                                                                That was very expressly not my assertion, which is why I brought up systemic bias. The fact that there are many reasons for it to happen does not lessen the negative impact and does not absolve the developer of all responsibility.

                                                                I absolutely agree that very few developers would implement a binary gender system out of explicit anti-transgender sentiment; rather, my assertion is that most developers care more about X than about accurately representing the gender and/or sex of people who don’t fit a binary model. That in and of itself is a moral decision, and one of the main points of the “manifesto” we are discussing is that moral decisions like that should not be dismissed, but should be examined as part of a consideration of engineering tradeoffs, and that whoever makes that decision needs to be morally responsible for it.

                                                        2. 1

                                                          For those interested in practical ways to improve the situation, may I recommend digging into “why do you want this info” and incorporating that into the question.

                                                          I like this approach a lot, despite being skeptical about the manifesto.

                                                          It’s basically an application of domain driven design to a business process.

                                                          However, as a DDD practicioner myself, I must warn you that you are going to face a lot more complexity with this approach. Usually it’s worth the effort, but not every single time.

                                                          In DDD term you are asking a question related to a specific context (let’s call it “services of interest”), but you don’t know anything about the gender of the user. Another context might be “products of interests” (where products are physical goods, for example). Now, you have more precise informations about the users, the users knows what you know about them, but you need much more complexity to handle such informations. A lot more complexity if that informations are descriptive strings as @dbremner properly said.

                                                          Also, you might have Male and Female as non mutually exclusive checkboxes.

                                                          But there might be no point to do that if you offer no products or services targetting non-binary people.

                                                        3. 2

                                                          It could just be me but using a string instead of a binary gender seems like a lot more than twice as much work.

                                                          I’m assuming that this is for a public-facing web application.

                                                          Here are some of the questions that I would ask if I were tasked with implementing this.

                                                          • Do we allow the user to enter a string or pick from a list?
                                                          • How many characters is the string permitted to be?
                                                          • What characters are valid?
                                                          • How is the gender stored in the database, one string per user or is it normalized?
                                                          • How does a long string affect our UI on popular browsers and mobile devices?
                                                          • Is the user input checked against a list of forbidden words?
                                                          • If we use a list of forbidden words, what is the process for adding new words to the list?
                                                          • Does adding an entry to the list of forbidden words affect existing profiles?
                                                          • Do we trim leading and trailing spaces or tabs?
                                                          • Is the gender string stored in a canonical format for reporting or analytics?
                                                          • If the user enters a string that we reject, how does the UI indicate this?
                                                          • What additional changes to the profile page are required?

                                                          All of these questions can be answered but I can see why Facebook uses a fixed list of strings.

                                              2. 1

                                                In other words, fuck me for not being willing to conform in a way that makes another software developer’s job very slightly harder.

                                                Or fuck every software developer in the world for not being willing to expend time and money changing their software to reflect things you believe in that they don’t. Take any widely-held belief with a lot of evidence behind it or just momentum that brings in profit as the businesses do by default. Take any individual or small group dissenting saying it should change to do arbitrary things they want. All the software should then be rewritten to do what the small group wants. If majority of users or customers disagree, it should still be rewritten to do what the small group wants saying fuck you to the majority. That’s basically your requirement.

                                                That doesn’t seem fair or logical either. It could get pretty expensive and crazy unusable really quickly depending on what all the demands are from various groups. Instead, they should act on a combination of what the most objective evidence says and what’s good for them since it’s their work. In your case, that might work to your favor since the biological evidence shows significant exceptions to two genders with one type even being both. Some are ambiguous. So, an Other field with something user-supplied could work. I’m sure it would be abused but people could’ve been writing bullshit into the forms regardless. Folks can argue about the accuracy of whatever was on the form in email, court, or whatever if it matters enough to all involved. Companies will probably just take what was entered.

                                                1. 2

                                                  All the software should then be rewritten to do what the small group wants. If majority of users or customers disagree, it should still be rewritten to do what the small group wants saying fuck you to the majority.

                                                  But I don’t think the majority would actually be unhappy with this change. Your example is more like asking every website to change to a baby blue and pink color scheme - it would negatively impact the vast majority of users. This negatively impacts bigots (a minority) and perhaps slightly affects the bottom line (although really, how difficult/expensive is it to switch from a boolean/enum to a string in the database for gender?), and is neutral or beneficial for everyone else.

                                                  1. 1

                                                    “But I don’t think the majority would actually be unhappy with this change.” “This negatively impacts bigots “

                                                    Anyone that disagrees with your gender claim is a bigot. Ok. So, let’s start there. Rather than a tiny change with no impact, this is a change that makes a specific political statement which will require support of the company/organization, them to defend the choice if it becomes a media event, and for their customers to be OK with it.

                                                    The political statement is highly contentious with the status quo being two genders. That model was created and sustained over tens of thousands of years because it applied to almost everyone in existence across billions of individuals. That makes it a sensible default where new labels will be used for rare exceptions. Many customers, due to their political beliefs, oppose changing that model. You’re saying the developers should, by default, oppose that model in their online forms or they’re bigots. I say they’re doing what works 99% of the time that might also reflect their beliefs and/or those they perceive of many customers. They might even fear dropping a political landmine into a signup process that’s supposed to create a positive experience with minimal friction. As in, the sign-ups are part of sales pipeline.

                                                    Like I said, I’d consider doing it in a carefully-worded way myself. I’m not surprised others don’t since they’re probably males/females who mostly know males/females whose customers mostly know or are males/females dropping male/female on a forum. I’m also not surprised they’d think carefully about the consequences of changing it. That makes sense, too. I’m glad people like in that one link are working on and deploying alternatives since that happening without any backlash could inspire more companies to take the chance on a change.

                                                    1. 2

                                                      Anyone that disagrees with your gender claim is a bigot. […] You’re saying the developers should, by default, oppose that model in their online forms or they’re bigots.

                                                      No, that’s not what I said or meant. What I said was that people who disagree but aren’t enraged the moment they see evidence of a trans person would be neutrally, not negatively, impacted, meaning the changes aren’t a problem for them (like a stupid and hard to read color scheme would be).

                                                      That model was created and sustained over tens of thousands of years because it applied to almost everyone in existence across billions of individuals.

                                                      This is incorrect, and is the basis of a lot of incorrect beliefs about trans people in general. The Wikipedia article on third genders is a good primer, but there are many resources online and in books you might be interested in. The TL;DR is that tons of non-European cultures had more than two genders: Inca quariwarmi, Native American Two-Spirits, ancient Israeli androgynos and tumtum, and more. A major part of colonization (and Christianization) in the 18th and 19th centuries was the erasure of those non-European (and, as viewed by the Church, sinful) gender identities.

                                                      In addition, about 1.7% of people are born intersex, meaning they can’t be easily classified as “biologically male” or “biologically female” [1]. Many of these people are operated on at birth to make them more easily classifiable, but that almost one in fifty people are “born nonbinary” (and presumably this is not a modern creation, since it is biological in origin) should perhaps give you some perspective on the prevalence of NB identities.

                                                      You then go on to explain a lot of reasons why people don’t want to do this. The point that I think a lot of people miss is that I get that. I understand. So does the author of this manifesto, and her response is, “I will not be one of those people.” That is, in many ways, a major point of the document.

                                                      1: Fausto-Sterling, Anne (2000). Sexing the Body: Gender Politics and the Construction of Sexuality. Basic Books. p. 53. ISBN 978-0-465-07714-4.

                                        2. 4

                                          I somewhat disagree with the basic premise of this website.

                                          The idea of merit is in fact never clearly defined; rather, it seems to be a form of recognition, an acknowledgement that “this person is valuable insofar as they are like me.” […] It is time that we as an industry abandon the notion that merit is something that can be measured, can be pursued on equal terms by every individual, and can ever be distributed fairly.

                                          Let me quote dictionary.com;

                                          meritocracy, noun:

                                          1. an elite group of people whose progress is based on ability and talent rather than on class privilege or wealth.
                                          2. a system in which such persons are rewarded and advanced
                                          3. leadership by able and talented persons.

                                          I think that quite clearly runs contra to these points. Usually you cannot simply put merit, talent and ability in numbers but you can usually make a subjective evaluation and decide based on that. It has little to do with “privilege” or “excluding of underpresented people in technology”. If the person evaluating is fair, there is no reason to believe they will be deciding on Person A over B because B was jewish or of a certain ethnicity. Atleast that is my opinion on the matter. Many corporations will be happy to measure your merit by lines of code written per day.

                                          Our professions do not define us; we are more than the work we do.

                                          Yes, that is indeed quite a nice sentiment but I do think that when you’re working on a project, your position on that project should be somewhat defined by what you can do. Otherwise we’d be putting our UI designer on the server team.

                                          We believe that interpersonal skills are at least as important as technical skills.

                                          Agreed there but this doesn’t disagree with meritocracy at all and probably runs orthogonal to it.

                                          Homogeneity is an antipattern.

                                          Usually yes, but you’ll have to acknowledge all kinds of homogeneity there. If you have 20 people of all kinds of color, sexual orientation, sex, gender, ethnicity, etc. but they all studied CS at Harvard, I don’t think we have a heterogenic group, atleast not as heterogenic as it can be.

                                          Homo- and heterogenity of groups are a spectrum, it isn’t a hard yes/no question. Plus, you will have to check which measurements you take to calculate the homogenity of a group. And which not.

                                          [… a few points that have little to nothing to do with meritocracy or being against it …]


                                          We understand that working in our field is a privilege, not a right. The negative impact of toxic people in the workplace or the larger community is not offset by their technical contributions.

                                          Hypothetical scenario. The cure against cancer, aids and death in general is found. The inventor is a homophobe. Should we deny ourselves the cure?

                                          I’m all for excluding toxic people from the community but we should still accept code from anyone because the code they contribute in the right projects could save lives or significantly improve the lives of others.

                                          Being meritocratic also means recognizing the contributions of people you don’t like, regardless of whether you’re homophobe or anti-homophobe. You don’t have to like them nor let them communicate or integrate/interact with the community.

                                          [… another few points that have little to nothing to do with meritocracy or being against it …]


                                          I don’t really see the point in any of this as the webpage seems to be largely against discrimination, not meritocracy. A lot of these points aren’t against meritocracy but rather about enabling everyone, especially underrepresented people, to participate to their fullest extend in this meritocracy and thusly also being able to show their merit, so to speak.

                                          I think the page should be updated to reflect that they aren’t against meritocracy per-se, just in favor of making it more fair. (“from each according to their ability, to each according to their needs”, I think is a fitting quote if I don’t misunderstand the english context)

                                          1. 3

                                            if the person evaluating is fair, there is no reason to believe they will be deciding on Person A over B because B was jewish or of a certain ethnicity. Atleast that is my opinion on the matter.

                                            However data shows that people can and do believe themselves to be fair and objective when they are not. And many times, people who do evaluation are openly unfair.

                                            1. 3

                                              Well, the considerations on the webpage don’t make that disappear, worse, pointing out that people will be unfair when the believe to be the opposite, means the website itself can also fall under this category.

                                              What’s important is that we try as best as we can.

                                          2. 6

                                            It might be informative to float a strawman countermanifesto here, just to stoke discussion a bit and provide a polite but opposed viewpoint–so, in the spirit of open source, I’ll put up a fork.

                                            The Contra-Post-Meritocracy Manifesto

                                            Meritocracy is a founding principle of the open source movement, and the ideal of meritocracy is perpetuated throughout our field in the way people are recruited, hired, retained, promoted, and valued.

                                            But, meritocracy has consistently shown itself to mainly benefit those who exploit those with merit, to the exclusion of those who actually create artifacts of value. The idea of merit is based in the popular gestalt as recognition of the creation of value, an acknowledgement that “this person is capable of producing things which benefit me”.

                                            (If you are not familiar with criticisms of meritocracy, please refer to the resources on this page.)

                                            It is time that we as an industry abandon the notion that merit is something that can be exploited, that can be produced on equal terms by every individual, and that can never be compensated fairly.

                                            What does a contra-post-meritocracy world look like? It is founded on a core set of values and principles, an affirmation of progress and renumeration that applies to everyone who engages in the practice of software development.

                                            Our Values

                                            These core values and principles are:

                                            • We believe that our value as human beings is intrinsically tied to what we leave for others to use. While we are all individuals with diverse and special circumstances and histories, our utility to our peers is measurable in what artifacts we produce and how helpful to others those artifacts are.
                                            • We believe that interpersonal skills are often less important than technical skills in the pursuit of artifacts. It is a good deal more difficult to boot a machine off of proper pronouns than proper bytecode.
                                            • We can add the most value as professionals by delivering robust and accessible artifacts on time and under budget. The utility of our artifacts should not be shackled or limited by accidents of birth of the creator or user.
                                            • We understand that the creation of artifacts is a deliberate sacrifice of our time in this world and an acceptance of a certain value system. We do not enter into such sacrifices or compacts lightly, and we do not accept appropriation of those energies nor the dismissal of that value system.
                                            • We have the obligation to get the best price for our artifacts, and to use the proceeds to enrich and secure ourselves and whatever groups we identify with. Sacrificing our energies and artifacts for the sake of others is an act of deep charity and should not cheapened by making it an obligation.
                                            • We must make every effort to educate people, like us or not like us, in the creation of artifacts and our value system–beyond that, they must fend for themselves. Our value system requires the competition of competency to work properly, and cannot abide by confounding acts of charity.
                                            • We have an ethical responsibility to refuse to mislead others about the capabilities and obvious implications of the software we work on. It is not our place to enforce a system of morals by limiting access to artifacts and knowledge unless we are not being compensated properly.
                                            • We acknowledge that non-technical contributors create value that often complements and enhances but rarely exceeds the value of technical contributors. Good press for a dud still means a dud.
                                            • We understand that succeeding in our field is a calculation, not an assurance. Being toxic in the community or larger community will backfire in proportion to the quality of the artifact–it’s safer and easier to say things politely than to produce them correctly.
                                            • We are devoted to practicing correctness and not complacency. We refuse to accept ongoing technical blunders in spite of their proponents, because we know that while emotions are temporary legacy systems are forever.
                                            • The field of software development embraces technical change, but is made worse by distractions about social change. It’s hard enough to deal with changes in chips.
                                            • We often reflect our values in everything that we do. We recognize that in our value system compromises must often be made to deliver value to those who would use our artifacts.
                                            1. 8

                                              Meritocracy is a founding principle of the open source movement

                                              Umm. Sources for that one?

                                              Personally I always thought it was “Freedom to Tinker”.

                                              As source material I refer to the Gnu manifesto https://www.gnu.org/gnu/manifesto.html

                                              I think the whole Meritocracy meme came in with the Eric Raymond’s Cathedral and Bazaar essay which was a post fact observation of the movement, rather than a founding document.

                                              1. 4

                                                So, ESR et al. were instrumental in the “open-source” movement, as opposed to the free software movement.

                                                The bit about meritocracy is probably most closely traced to the IETF “rough consensus and running code”, parts of “Conscience of a Hacker”, and frankly the general meme predating all of it (one of which would be, say, Seymour Cray’s general reaction to people suggesting architecture ideas) that an idea is only better if it can be implemented and quantified as running more correctly.

                                                Blaming the whole thing on ESR misses the fact that it had been culture for quite some time, and also misses that the movement itself (in either open-source or the free-software variants) depends on the ability of people to write software (moreso than any other factor).

                                                1. 3

                                                  As I said, ESR was just documenting what he observed in the free software movement…. and no doubt with a fair bit of slant towards his personal biases.

                                                  If you read his web site, he is unashamedly a very very strongly opinionated sort. Not dissing him… I’m pretty sure he own up to that personal characteristic quite proudly.

                                                  Personally the whole meritocracy thing has been a side show for me…

                                                  Given the choice between freedom to tinker and meritocracy…. I’d be completely on the side of freedom to tinker.

                                                  Why?

                                                  Because humans are absolutely atrocious at identifying what truly worthy of merit.

                                                  We are really still very close to being monkeys on this front.

                                                  We’re more rationalizing beings than rational beings.

                                                  Nor do I believe in one absolute measure of merit.

                                                  And where there is true merit, freedom to tinker and share will uncover it in the long term.

                                              2. 4

                                                Eh, I think you used the wrong sock to write that one!

                                                1. 2

                                                  The hell of it is, I agree and identify with values from both Coraline’s original document and my strawman here. :)

                                                  1. 1

                                                    I like the effort you both put in these texts, but I do not agree with neither of two (except for some details and pretty general concepts)

                                                    This usually means that both options miss something important.

                                                    OTOH when people feel they agree with opposite texts, it means that from certain point of views, the texts agree.

                                              3. 2

                                                Others have made far more eloquent comments on this than I would, so I’ll leave most of it to them. With respect to this part though:

                                                We have an ethical responsibility to refuse to work on software that will negatively impact the well-being of other people.

                                                I spotted that at least one of the signatories is a former Google employee, and many of the people on the list work at large SV companies that hoover up personal data, intruding into peoples’ private lives. When we talk about ethical responsibilities, part of the problem is we all have different definitions of ethics and well-being.

                                                1. 2

                                                  I would settle for…

                                                  “I was commanded to do it” is never a valid ethical justification for doing something.

                                                  Not in the military, not in business, not in software.

                                                2. 1

                                                  I read the title and went in ready to sign, but couldn’t because of all the extra shit tacked onto it that is only tangentially related to meritocracy (or not at all).