1. 34

    please don’t. When learning you make a lot of mistakes. And writing a tutorial with this mistakes doesn’t help other learners when they read this.

    1. 12

      And even if you don’t make mistakes, most people will misunderstand their own process and come up with unhelpful things like monad tutorials: https://byorgey.wordpress.com/2009/01/12/abstraction-intuition-and-the-monad-tutorial-fallacy/

      But now Joe goes and writes a monad tutorial called “Monads are Burritos,” under the well-intentioned but mistaken assumption that if other people read his magical insight, learning about monads will be a snap for them.

      1. 7

        Came here to say something similar to this.

        Learn new technology through writing a tutorial about it, but don’t publish it.

        There’s so much misinformation by well-intentioned learners.

        I’m not trying to diminish the importance of journaling either! Journaling != Tutorials.

        1. 7

          Publishing your tutorial gives it an audience, which means someone may (hopefully!) come along and correct you on your errors. This is invaluable.

          I also disagree with this negativity. Make it clear at the top of your tutorial that you’re a beginner and you may not have it all right. But with that caveat, publish away.

          1. 3

            I think we’re discussing the same thing but disagreeing on the semantics of it.

            • Belief #1: Sharing how you learned something can be a valuable tool to someone else.
            • Belief #2: Tutorials can seem like they’re from a source of authority, so a lack of a disclaimer could be hazardous.
            • Belief #3: Imposter syndrome is real. We need to mitigate misinformation, but not at the expense of people being afraid to share.
            1. 1

              Publishing your tutorial gives it an audience, which means someone may (hopefully!) come along and correct you on your errors. This is invaluable.

              Absolutely invaluable, but at the very same time, the exposure spreads the misinformation to more readers, potentially doing more harm than good. I don’t think a disclaimer is enough. I think the word “tutorial” implies some authority, unfortunately.

              I think a better way is to humbly share a report of your findings so far, with questions and an (as appropriate) admission that you don’t understand everything. Julia Evans is masterful at this style.

              As a reader new to the topic, you get the benefit of an explanation of what she currently understands (which is often from a beginner’s mind), and usually some questions to seek answers to on your own. As an expert of the topic, you are invited to share more, or clarify, or correct (and this happens a lot on twitter, and/or HN, etc). But you’re doing so from a place of empathy (you want to be helpful) instead of from a place of disgust (ugh! why is this tutorial so bad!).

        1. 2

          Sounds like this person wants referential transparency, where each function is only described by its inputs. Perhaps I’m misreading this?

          1. 3

            That’s a good goal to shoot for, I’d say, yeah.

          1. 7

            Oddly - this sounds like the author has just discovered dependency injection? I would have thought that concept would translate pretty well to Go. I’ve written a lot of Go, but I cut my teeth largely on C, C++, and C# so dependency injection has always been on my radar. When I wrote Go, I learned it and largely applied my own lessons from C, C++, and C#.

            Due to compiler constraints and the language’s ethos, global state and func init feel weird in Rust (my current language). You can’t, without jumping through hoops, create objects that are partially constructed (e.g. using Option for uninitialized types). That said, even if you’ve got struct members that are of type Option, you are actually initializing it to something - sometimes it’s just None.

            I don’t have enough context in Go land to know why this author’s argument might be a novel conclusion. Does anyone have some context? I’d love to learn more.

            1. 10

              Many Go programmers seem to feel very comfortable with global state. When I join new organizations or projects, I often find myself needing to educate and socialize the problems that come from that. This post is just a formalization of the things I’ve been saying informally for a long time.

              I wish I knew why this was so relatively prevalent in the Go ecosystem. If I had to guess, I’d speculate that it’s because a lot of the example code in e.g. books and tutorials doesn’t really shy away from global state.

              1. 7

                It’s also related to the standard library itself having lots of globals. Which itself leads to bad things, like the cryptographic randomness source being trivially modifiable: https://github.com/golang/go/issues/24160

                1. 3

                  The Go community has a strong culture of writing application-specific code that is “good enough”, and tends to err strongly on the side of avoiding premature abstraction. For a significant number of use cases, globals (combined with a reasonable amount of documentation, testing, and good discipline) tend to be the “good enough” solution.

                  The thesis of Go’s culture is that premature abstraction often costs more than rewriting code. The argument is that you often know your domain better after writing a “good enough” first version, and that premature abstractions lock you in to specific designs more tightly that may be harder to change down the line.

                  It’s definitely not a conventional position, but it’s not indefensible – it’s hard to argue that Go developers are not pragmatic (or not productive).

                  1. 1

                    Interesting. Good to know!

                  2. 2

                    Yup, this was my comment when this appeared a year ago on HN:

                    In other words, use a pure dependency-injection style, and ZERO globals.

                    https://news.ycombinator.com/item?id=14521894

                  1. [Comment removed by author]

                    1. 3

                      Five minutes per person!! That sounds interminable. One minute per person, including (short!!) clarifying questions from other members, seems like a much more reasonable limit. Standups are strictly for orientation; any meaningful or deeper conversation should occur elsewhere.

                      edit: I see I agree with jpatrick, basically.

                      1. -1

                        The goal is to let people know you are working on things and the kind of things you are working on

                        The goal is to replan the sprint. It is a mini planner.

                        See “Daily Scrum” in http://www.scrumbook.org/

                      1. 4

                        Author here, thought this might create some interesting discussion!

                        TL;DR:

                        Why have multiple distinct syntactic constructs for if-then-else, pattern matching and things like if-let, when they are largely doing the same thing (check some condition to make a decision on how the program should go on)?

                        The core idea is having a single, unified condition syntax that scales from simple one-liners to complex pattern matches that subsumes the existing syntax options.

                        1. 3

                          Are they the same?

                          Why do we even use if statements anyway?

                          k/q doesn’t use them very often, since it rarely makes things clearer. Function application is indexing, decode, projection and each-left, and so on, make it possible to write much less code.

                          for example, if x == 1.0 then "a" else "z" could be simply "za"1=

                          “one comparison operator on multiple targets” is: "zba"2 sv 1 2=\:

                          “different comparison operators, equality and identity” is: "zna"2 sv(1=;0w=)@\:

                          “method calls” are "zne"2 sv(isempty;0 in)@\:

                          Scala is an atom-language though. It can only do one thing at a time, so you see there to be a need to “check some condition to make a decision on how the program should go on” but, let’s say those lists are big, we can trivially parallelise “each”; In a data-parallel language, you very infrequently check some condition to make a decision on how the program should go on.

                          1. 9

                            Your “simply” is my “incomprehensibly”.

                            Computer languages need to strike a balance between human-language intuition and machine-parser explicitness. Simply slamming the slider all the way to the right isn’t a solution, so much as an admission of defeat, IMO.

                            1. 2

                              My idea was totally different. I’ve noticed what people comprehend depends on their thinking style, background (esp prior languages), and so on. However, there’s fewer underlying concepts or structures in play than there are surface syntaxes or API’s. So, I was thinking that maybe languages should try multiple front-ends with different syntaxes, coding styles, etc. As a start, C and Python. Each client has a tool that automatically translates it to their style with same meaning.

                              1. 1

                                maybe languages should try multiple front-ends with different syntaxes, coding styles, etc.

                                is it just me or does it sound like racket’s #lang?

                                1. 1

                                  Probably also not a coincidence that Racket is at the top of my list for a future project doing something similar. ;)

                              2. 1

                                Your “intuition” is really mediocracy.

                                Code that is shorter has a higher chance of being correct. If you can’t read it now, learning how to read it will make you a better programmer, and that benefits you, and everyone you work with.

                                1. 1

                                  (laughs)

                                  Downvote my thoughtful response as a troll, insult me, and then talk down to me. Really hit the internet trifecta, huh?

                                  1. 0

                                    You’re the one who said you can’t comprehend something, and yet you believe you have something important to comment on it?

                                    How is that not mediocrity?

                            2. 2

                              Nice. I wonder how it works out grammatically for parser.

                              1. 4

                                Either indentation-based, or requiring some delimiter.

                                I’m largely in the indentation-based camp these days, so I haven’t spent much time thinking about how to make the delimitation to look nice. I’d probably just go with mandatory curly braces around the branches.

                            1. 2

                              So, generics are on the table for 1.x, I did not expect that…

                              Carlisia Pinto: [00:28:09.12] So you’re saying there will not be generics?

                              Russ Cox: No, I didn’t say that. [laughter]

                              Brian Ketelsen: That was a big jump.

                              Carlisia Pinto: Because that would be a big event, I would say…

                              Russ Cox: Well, but maybe generics are like 1.54, or something.

                              1. 2

                                Why didn’t you expect that? It has been consistent with the core team’s messaging on the subject since pre-1.0.

                              1. 11

                                Lots of other things to comment on but I firmly think interfaces-as-structural-types is one of Go’s greatest strengths. To put it in the “bad” group is upsetting and kind of made me discount the rest of the article.

                                1. 6

                                  I think it’s a philosophical difference:

                                  Some developers write code to document to coworkers what they are doing, and some developers just want things to compile with the least effort possible.

                                  1. 2

                                    It’s not a matter of least effort. Go is one of the first languages I know of that was primarily designed for large teams of engineers instead of individuals. Heavy focus on compile time, gofmt, not allowing compilation with unused variables, etc, all directly stem from this approach. Structural typing specifically reduces cross-team friction. Go will often make decisions that incur individual overhead to reduce overall team overhead

                                    1. 5

                                      Not sure I agree on this.

                                      Compilation is not particularly fast, even compared to more more modern languages like Algol, its dependency management is a disaster, it’s error handling ignores the last few decades of lessons learned and the amount of code duplication it forces upon developers makes it hard to maintain.

                                      I think it does well in terms of helping Google’s requirements of having all code in a large mono-repo, and enabling people who have no practical experience to produce code.

                                      1. 2

                                        Whether or not they succeeded at being fast wasn’t my point (though my position is they did succeed). My point is the kinds of things they emphasized in language design. Russ Cox argues that compilation speed is one of the reasons they don’t have generics, for instance.

                                        Dependency management doesn’t matter with large teams in a mono repo, yeah, and the code duplication to me felt like it would be an enormous issue when I started but in practice, half a million lines of code later, it doesn’t come up nearly as much as you’d think.

                                        1. 2

                                          Compilation doesn’t have to be slow just because generics are involved, the author of D demonstrated that fairly well. I think this is rather an issue of generics not having been invented at Bell Labs (or decent error handling in this regard).

                                          I’m not sure why “dependency management doesn’t matter if you are a Google employee” should be a convincing argument for programming-in-the-large for the millions of non-Googlers out there.

                                      2. 2

                                        Structural typing specifically reduces cross-team friction.

                                        Can you talk about how structural typing accomplishes this?

                                        EDIT: Ah, I see you answered this in another thread.

                                    2. 3

                                      Languages are funny. I’d consider defer to be a bad idea elevated to a language feature, but it’s in the “good” group 😀

                                      1. 2

                                        Can you explain why you like this idea?

                                        1. 4

                                          Sure! Let’s say someone writes a library you use frequently but writes it such that it does not explicitly implement any interfaces, as the author of the above post prefers. Maybe you use a library called Beep like this:

                                          type Beeper1 struct { ... }
                                          func NewBeeper1() *Beeper1 { ... }
                                          func (b *Beeper1) Beep() { ... }
                                          

                                          You are writing your library, but want to support multiple implementations of Beepers. Maybe there’s another beeper (for a test, or another library, or something else) that also has a Beep() method. So you write your code to just expect

                                          type Beeper interface {
                                            Beep()
                                          }
                                          

                                          Now you can use the third party code, your code, your test code, etc, without having to change the third party code upstream to implement your interface.

                                          This is a super contrived example, but as your codebase and team grows larger, this becomes incredibly useful for reducing friction in having teams of engineers work together with minimal stepping on each other’s toes.

                                          Ultimately, I describe Go’s structural typing system to Python programmers like the static typing equivalent of Python’s “duck typing” principle, which is, if it looks like a duck and quacks like a duck, just treat it like a duck. Coming from statically typed languages that require you to list what interfaces a concrete instance implement, Go not requiring that dance felt like a huge reduction in friction to me.

                                          1. 2

                                            I guess, to me, it feels like a strictly worse approach than what Rust has with traits, or Haskell with typeclasses, because there’s no explicit guarantee that a “Beeper” is actually abiding by the contract of the “Beeper” interface. It could have a “Beep” method that actually nukes Vienna. There’s friction to implementing a trait or typeclass for a new type, but there’s also value in it. If I have explicitly implemented a trait, there’s documentation of the type’s usage in that context as well as of its conformance with the interface.

                                            1. 3

                                              A frequent pattern in Go to get some of that functionality if you want it is to write something like

                                              var _ InterfaceName = (*ConcreteType)(nil)
                                              

                                              which simply adds a compile time assertion that ConcreteType does indeed implement InterfaceName

                                              Certainly does nothing to constrain the behavior, but I’m super happy with that (optional) middle ground

                                              1. 3

                                                There exists a spectrum: let’s say that on one extreme, it’s maximum programmer friction with minimum risk of mis-use; and on the other extreme, minimum programmer friction with maximum risk of mis-use. Go puts a marker down closer to the latter extreme, judging friction to be a worse evil than risk for their context, and providing some affordances (like the one-liner jtolds mentions) to mitigate some of those risks via convention.

                                                I think no position on the spectrum is “strictly worse” than any other. It is a question of trade-offs to satisfy particular programming contexts or requirements. I think this is the same for any technical decisionmaking.

                                                Go makes a lot of decisions this way. (Not all, and there are warts for sure — but many.) I think it is a nice and refreshing change from where most languages (like Rust) decide to land, and I think Go’s success in the market proves it is a viable, or maybe even preferable, compromise-point for many users.

                                        1. 7

                                          The merits of minimalism aside, brutalism was a blight on architecture for decades, a cult of ugliness, and produced buildings which still ruin cities to this day. The examples of brutalism inspired web design in the article are highly aesthetic by comparison.

                                          Also, I appreciated the Nine Inch Nails reference.

                                          1. 4

                                            This article was posted on lobste.rs a while ago and it really opened my eyes to the point you’ve stated about brutalism. Here was the discussion around it.

                                            1. 4

                                              I dunno. I find brutalist architecture quite aesthetically pleasing.

                                              1. 5

                                                Brutalist buildings in good repair are treasures.

                                                1. 4

                                                  By what measure? Taste/distaste for brutalist architecture is highly opinionated in my experience.

                                                  1. 1

                                                    By the measure of my subjective experience, of course :)

                                                    1. 2

                                                      At least you’re honest about it. :)

                                              1. 2

                                                Just envision how complex would it be to deploy to mesos/kubernetes without the container abstraction…

                                                Nice and complete article!

                                                1. 4

                                                  I was at Twitter when we deployed the first production deployment of mesos. It did not use “containers” as they are understood in the docker sense. We shipped binaries, there was a shared filesystem you could see if you logged into one of the machines your service was running on, and mesos set up service discovery to connect the local ports you were randomly assigned at boot time in an (iirc) env variable.

                                                  For mesos, and, I believe, borg before it, containers came after to make things easier.

                                                  1. 1

                                                    containers came after to make things easier. That’s the whole point of it! Obviously you can do without, but like I said, imagine how complex it would be!

                                                  2. 3

                                                    Because those are built for containers. Containers came first. Maybe I am missing your point…

                                                    1. 1

                                                      I’m not speaking about the configuration details but the whole concept. Can someone point me to a technology that correctly and easily describe the runtime convention such as port binding, volume mounting, but as the same time enable extensibility and security?

                                                      Sûre many tools exist to do things here and there, but none use them offer a coherent solution to build on top of.

                                                      1. 2

                                                        Sure, containers enabled this paradigm. But it’s not as if networking, data storage/access, scaling, and security didn’t exist before containers. They were just handled differently with different technologies.

                                                        Does kubernetes make this easier/better? Probably depends who you ask. And for my take, you still have to run kubernetes on something. That something still has the same needs/requirements as always. (This is where you introduce the cloud layer, or someone else’s computer.)

                                                        1. 3

                                                          Does kubernetes make this easier/better?

                                                          Similarly to how containers apply the benefits you can easily get from the Maven model to any runtime, I’ve always thought that kubernetes was just Greenspun’s Tenth Law but about the benefits of Erlang.

                                                    2. 2

                                                      Honestly, I think it wouldn’t be too bad.

                                                      Artifacts would be shipped around as e.g. .zip files downloaded from HTTP servers, instead of containers pulled from container registries. Those artifacts would be tagged with metadata to indicate which runtimes they require, and nodes in the cluster would be tagged to indicate which runtimes they provide; the scheduler would schedule jobs based on those constraints. Kubernetes, at least, already supports this. On balance, I think dropping containers for this aspect of things would actually make the overall system simpler.

                                                      Resource limits and namespaces would need to leverage underlying OS primitives directly, rather than going through the container abstraction. Probably a proto-container spec (like OCI?) would arise from these requirements naturally. This is where things would get more complex.

                                                      1. 1

                                                        In terms of a framework that would allow you to programmatically deploy (virtual) machines, get applications installed then configure those and start them, it’s basically what I built at my last job. I didn’t get onto any advanced features like automatic load distribution and automatic machine setups when the environment needs more resources but it was completely possible on the back of the basic features as well as the fact that the system did set up distributed (peer to peer and mastered) services together with their own encrypted virtual networks.

                                                        I don’t know what other advanced features are possible in Kubernetes/Mesos that wouldn’t work without containers but AFAIK the security isolation is still better for VMs than containers and the networking should be easier since it’s simplified by not having a machine effectively be a router for the containers.

                                                      1. 2

                                                        I can’t help but disagree with the “accept interfaces, return structs” thing. Especially if you’re exposing those functions publicly. I’m probably dumb and just doing this very wrong, but I’ve lived through many cases where mocking dependencies is harder than it needs to be because I need to provide a struct as the result of something. I mean, especially when it’s an external package, I don’t necessarily want to be tightly bound to the struct that is exposed and would generally much rather use an interface. Am I doing this wrong?

                                                        1. 4

                                                          If you mock dependencies, you’re creating a mock implementation of a narrowly-scoped interface as an input to a function, not a copy of a struct as the output of an e.g. constructor.

                                                          Concretely, if you have a function

                                                          func process(s3 *aws.S3) error {
                                                              x, err := s3.activate()
                                                              if err != nil {
                                                                  return errors.Wrap(err, "activation failed")
                                                              }
                                                              if err := x.signal(); err != nil {
                                                                  return errors.Wrap(err, "signal failed")
                                                              }
                                                              return nil
                                                          }
                                                          

                                                          it should instead be

                                                          +type activator interface{ activate() (xtype, error) }
                                                          +
                                                          -func process(s3 *aws.S3) error {
                                                          +func process(a activator) error {
                                                          

                                                          but aws.NewS3 can and should continue to return *aws.S3.

                                                          1. 2

                                                            I had the same impulse when starting Go and friends rightly warned me away from it.

                                                            If you write functions that take interfaces and that return interfaces, your mock implementations start returning their own mocks, which gets brittle very fast. Instead, by having interfaces as inputs and concrete types are return values, your mock implementations can simply return a plain struct and all is well.

                                                            But I think it’s worth not taking someone else’s word for it, and trying both approaches and seeing how it goes.

                                                            1. 3

                                                              I agree but in effect, most non-trivial libraries (stuff like Vault, for example) return structs that expose functions that return structs. Now, if I need to access that second layer of structure in my code, the appropriate design would seem to be, under those directions, to declare a function whose sole job is to accept the first level of structure as an interface and spit back the second layer (which still leaves me with a top-level function that is hard to test)

                                                              1. 1

                                                                Looking at Vault’s GoDoc, I see Auth.Token, which sounds like the kind of API you’re describing. Sometimes, it might be a matter of how to approach the test, like instead of mocking heavily, you run an instance of Vault in the test and ensure your code is interacting with Vault correctly.

                                                                1. 1

                                                                  I’m not against this, technically, but this is not necessarily practical. Take databases for example. Or external services? Vault is one thing, but what if the thing you depend on us an external service that you can’t mock cleanly, that depends on another service that it can’t mock cleanly? I don’t have a solution for this, I realize that exposing an object as an interface is not especially practical either, and that it’s weird to decide what to expose through that interface. The inverse, to me, is equally weird for other reasons.

                                                            2. 2

                                                              I’m probably dumb and just doing this very wrong

                                                              If so, then I’m right there with you. If I followed @peterbourgon’s advice, then my code would be an unsalvageable dumpster fire. Defining a billion ad hoc interfaces everywhere very quickly becomes unmaintainable in my experience. I’ve certainly tried to do it.

                                                              See also: https://lobste.rs/s/c984tz/note_on_using_go_interfaces_well#c_mye0mj

                                                              1. 1

                                                                All advice has a context, and the context for mine is that you’re dealing with mostly- or completely-opaque structs for the purposes of their behavior (methods) they implement, and not for the data (fields) they contain. If you’re doing mostly the latter, then interfaces don’t help you — GetFoo() Foo is an antipattern most of the time. In those cases, you can take the whole original struct, if you use a lot of the fields; or the specific fields you need, if you only take one or two; or, rarely, re-define your own subset of the struct, and copy fields over before making calls.

                                                                But when I’m in the former situation, doing as I’ve illustrated above has almost always improved my code, making it less fragile, easier to understand, and much easier to test — really the opposite of a dumpster fire. And you certainly don’t want a billion ad-hoc interfaces, generally you define consumer interfaces (contracts) at the major behavior boundaries of your package, where package unit tests naturally make sense.

                                                                1. 1

                                                                  I do suspect we are thinking of different things, but it is actually hard to tease it apart in a short Internet conversation. :-) I am indeed dealing with completely-opaque structs, and those structs generally represent a collection of methods that provide access to some external service (s3 being a decent example, but it could be PostgreSQL or Elasticsearch), where their underlying state is probably something like a connection pool. Defining consumer interfaces was completely unmaintainable because their number quickly becomes overwhelming. Some of these types get a lot of use in a lot of code, and tend to be built at program initialization and live for the life of the program. At a certain point, using consumer interfaces just felt like busy work. “Oh I need to use this other method with Elasticsearch but the interface defined a few layers up doesn’t include it, so let’s just add it.” What ends up happening is that the consumer interfaces are just an ad hoc collection of methods that wind up becoming a reflection of specific implementation strategies.

                                                            1. 5

                                                              The file is 649 lines because large files are encouraged.

                                                              A 649-line file is not a large file… ?

                                                              1. 2

                                                                The same project has several files that are thousands of lines long. I took a shorter example so it wouldn’t seem hyperbolic. The point is that this file fills more than a single screen so checking the import declaration means jumping to a new context.

                                                                1. 1

                                                                  Depending on the situation it might be. Though considering that I’ve seen a fair share of 1KLoc and 10KLoc files, that doesn’t really seem too large to me either.

                                                                1. 41

                                                                  Although I think the author does point out some very valid weaknesses in CoCs, both theoretically and in how they are currently implemented, I think the author overlooks, or chooses not to address, a few important points in favor of CoCs.

                                                                  The largest factor to me is that, regardless of any particular problems with CoCs, the choice to not have a CoC has, in many cases, become a sort of dogwhistle for events that are explicitly inclusive of harassers, and have no intention of running a broadly welcoming event. In essence, the choice to not have a CoC these days is tantamount to an open invitation to the worst of the people in our industry. That’s not to say that good people don’t also attend these events, or even that the organizers are knowingly trying to create that sort of environment, but ignorance of the message you’re sending doesn’t necessarily change the message itself.

                                                                  I also think the author is getting rather bogged down in the nitty gritty specifics of the language of the CoC. As a community organizer and moderator, I do find having specific CoC terms useful from time-to-time, but by and large the goal I think a CoC is less about rules and more about values. A CoC as a statement of community values can serve two important purposes:

                                                                  First, a CoC can help a community manage and be intentional about it’s growth. Small communities may not see any need for a CoC, because in small groups there is often enough social pressure to prevent toxic jerks from dominating the community, but as a community grows and the social graph becomes less fully connected, the opportunities for toxic and abusive corners of the community to appear, and without intentionally managing these, an entire community can devolve. The CoC in this case can provide a shared vision for the values of the community and help to slow the festering of some of these more toxic community elements.

                                                                  Second, a CoC lets members outside of the community know what the shared value of a community are, and helps people to make an informed decision about whether their values align with the community, and if the community is worth engaging with.

                                                                  1. 27

                                                                    Thanks for a thoughtful response to the submission. :)

                                                                    A few thoughts:

                                                                    In essence, the choice to not have a CoC these days is tantamount to an open invitation to the worst of the people in our industry.

                                                                    I would suggest that that status, and the dogwhistle effect you mentioned earlier, is perhaps due just as much to repeated memes about coded messaging and hostility as any of the actual behavior in those communities. At some point, repeated public shaming starts to create pathological behavior on its own.

                                                                    I also think the author is getting rather bogged down in the nitty gritty specifics of the language of the CoC.

                                                                    The issue is that, if you expect fair enforcement of rules, you need to use language as clearly as possible. I understand your viewpoint (of CoC as values and not as rules documents) doesn’t take that approach, but for a great many folks a Code of Conduct is taken at face value to be a “Hey, if you do , then happens, so please consider instead.”

                                                                    a CoC lets members outside of the community know what the shared value of a community are

                                                                    The problem with treating CoC as signalling documents is that it undermines their efficiency as behavior guidelines (because you have to include language and statements whose purpose is aligned more with value expression than on expressing permissible behavior). Separating the “rules” documents (“hey folks, if you harass somebody, you will be ejected”) from the “values” documents (“we believe that everybody should be secure all the time”) lets a community be more explicit in both areas.

                                                                    Secondarily, I’d argue that the great benefit of technology is that it works regardless of the value and belief systems of the folks using it. Both a Marxist and a libertarian can sit down at, say, a numerical methods conference on optimization and expect to find something useful for planning out resource expenditure. Neonazis and Antifa both benefit from a good lightning talk on OPSEC. Both Republican and Democrat workers benefit from sharing knowledge about how to use AWS properly.

                                                                    Using a CoC to try and shoo away folks who have ideological differences runs directly counter to the free exchange of ideas, and serves to limit the utility of those communities by ostracizing others. If we lived in a world where, say, you could point to somebody and say that “This person is a Nazi” with 99.999% accuracy, maybe I’d feel differently–but abuse of terms and the public square by overzealous if well-meaning people (some of whom are even users on this site!) has caused me to severely doubt the reliability of our mechanisms.

                                                                    1. 18

                                                                      Thanks for your thoughts as well. A few follow-on thoughts to your notes:

                                                                      I would suggest that that status, and the dogwhistle effect you mentioned earlier, is perhaps due just as much to repeated memes about coded messaging and hostility as any of the actual behavior in those communities. At some point, repeated public shaming starts to create pathological behavior on its own.

                                                                      I think there’s probably some truth to this, especially the problems with public shaming. There is an unfortunate tendency to shame people in a way that I think makes them double-down on problematic behaviors. That aside, I don’t think we can ignore the effects of something, dog whistling in this case, regardless of it’s original cause.

                                                                      The issue is that, if you expect fair enforcement of rules, you need to use language as clearly as possible. I understand your viewpoint (of CoC as values and not as rules documents) doesn’t take that approach, but for a great many folks a Code of Conduct is taken at face value to be a “Hey, if you do , then happens, so please consider instead.”

                                                                      Writing clear rules intended to be taken literally that cover all forms of potentially allowed and disallowed behavior is essentially a fools errand. Ultimately there must be some human arbiters of behavior that will have to interpret the intention of the rules, look at the behavior, and decide if a violation occurred. You’re basically talking about a miniature domains-specific legal problem here, and if you look at the complexity of most modern legal systems it’s clear that you can’t really have a clearly written exact set of rules that will apply without human interpretation.

                                                                      I do agree with your suggestion that having a separate rules and values document can help. In the communities that I help moderate we do exactly that- we have a set of rules that are more specific, and have specific consequences, along with a broader values document that outlines the types of behavior we want to see, and how people should behave. The rules document still requires some level of human judgement.

                                                                      Secondarily, I’d argue that the great benefit of technology is that it works regardless of the value and belief systems of the folks using it. Both a Marxist and a libertarian can sit down at, say, a numerical methods conference on optimization and expect to find something useful for planning out resource expenditure. Neonazis and Antifa both benefit from a good lightning talk on OPSEC. Both Republican and Democrat workers benefit from sharing knowledge about how to use AWS properly. Using a CoC to try and shoo away folks who have ideological differences runs directly counter to the free exchange of ideas, and serves to limit the utility of those communities by ostracizing others. If we lived in a world where, say, you could point to somebody and say that “This person is a Nazi” with 99.999% accuracy, maybe I’d feel differently–but abuse of terms and the public square by overzealous if well-meaning people (some of whom are even users on this site!) has caused me to severely doubt the reliability of our mechanisms.

                                                                      This is one set of values, but I think it’s not the only one. There’s a place for venues that are focused on allowing all people regardless of ideology or background, but it’s perfectly reasonable to want to run or participate in other types of communities.

                                                                      In communities that I moderate, I am unapologetically uninterested in excluding some ideologies. Ultimately, there are some ideologies that simply cannot coexist, and focusing on equalizing them just favors the more aggressive of the ideologies. I’m okay with excluding Nazis, because the alternative is to exclude people who are targeted by Nazis. This is one of the ways a CoC can help signal values- by being explicit about the values of the community it is quite quickly clear on which side of this particular chasm an organizations values fall.

                                                                      1. 13

                                                                        In communities that I moderate, I am unapologetically uninterested in excluding some ideologies. Ultimately, there are some ideologies that simply cannot coexist, and focusing on equalizing them just favors the more aggressive of the ideologies. I’m okay with excluding Nazis, because the alternative is to exclude people who are targeted by Nazis. This is one of the ways a CoC can help signal values- by being explicit about the values of the community it is quite quickly clear on which side of this particular chasm an organizations values fall.

                                                                        Exactly. There’s always the “why can’t you be tolerant of my (intolerant) views???” mock innocence, or the “don’t be so easily offended, it was just a joke” mock confusion.

                                                                        1. 12

                                                                          There’s a place for venues that are focused on allowing all people regardless of ideology or background, but it’s perfectly reasonable to want to run or participate in other types of communities.

                                                                          Yet, regrettably, the attempt to run those venues gets a great of slander and libel about dogwhistling–as you yourself point out earlier. So, clearly, there isn’t a place for them, if they don’t wish to be tarred by folks who feel they aren’t sufficiently repressing some outgroup.

                                                                          I’m okay with excluding Nazis, because the alternative is to exclude people who are targeted by Nazis.

                                                                          You could exclude neither, and let them sort it out themselves elsewhere. Indeed, seeing each other in a context that doesn’t constantly reinforce their ideology might serve to build bridges and mellow both sides–and while your example is a bit stacked, one could apply the same argument to fundamentalists and secular folks, to Israelis and Palestinians, to feminists and men’s rights activists, and so forth.

                                                                          Assuming that people from different backgrounds will never get along is a very pessimistic view of humanity.

                                                                          EDIT: Anyways, I’m happy to continue this via PM or email if you’d like to go back and forth more…I don’t mean to clutter up the main thread too much. :)

                                                                          1. 21

                                                                            You could exclude neither, and let them sort it out themselves elsewhere.

                                                                            One important lesson of the (waving my hands here) social media information age is that this strategy is not viable, because it always results in a “win” for the trolls. Communities are both empowered and obliged to stamp out this form of sociopathy with prejudice, because failing to do so means ceding the public square to the extremists.

                                                                            Free speech and free expression are wonderful goals in the absence of context, but they aren’t trump cards that outweigh all other factors, they’re variables in a complex equation that, when solved, should (among other things) minimize human suffering.

                                                                            1. 8

                                                                              Exactly. If our Code of Conduct bans violence, but doesn’t exclude, say, explicit white supremacist clothing, the end result is that black people aren’t going to feel comfortable showing up to the con if there’s a bunch of skinheads with swastikas all over the place.

                                                                              “But if the skinheads do something to the black patrons, they’ll get kicked out!”

                                                                              Sure, but there’s a concept of making people feel comfortable at an event open to the public. The white supremacists are welcome (in theory) to come to the con, but they need to keep it to themselves.

                                                                              1. 2

                                                                                The CoC is almost a courtesy to the skinheads in that example. The owner of the venue (or the lessee) is almost always allowed to make people leave. At least in New York, if you’re told to leave and then don’t, it becomes criminal trespass. Codes of Conduct don’t matter in any practical sense when you get to that point.

                                                                                I think instead what they’re useful for is what you say elsewhere in this thread, which is setting a tone: is your con t-shirt and jeans, or jacket and tie? Is it for some political goal or for advancing professional development?

                                                                              2. 2

                                                                                That complex equation comes down to value judgments. You’re not likely to know the ultimate effects of your actions. For instance: affirmative action is not colorblind, but it might lead to genuinely colorblind outcomes some generations from now.

                                                                                If you’re using deontic ethics instead and your sense of duty requires you to defend freedom of speech, that doesn’t necessarily yield a result worse in terms of human suffering. Utilitarianism’s core problem is that although you can look at the immediate outcome, you don’t know the ultimate yield.

                                                                                I think these ideas are somewhat compatible. At some point, the question becomes “freedom for whom” – if you can’t get people to show up to your con because of extremism, how much speech did you facilitate? I think there’s something more to championing freedom of speech than not prohibiting things.

                                                                              3. 1

                                                                                You could exclude neither, and let them sort it out themselves elsewhere. Indeed, seeing each other in a context that doesn’t constantly reinforce their ideology might serve to build bridges and mellow both sides–and while your example is a bit stacked, one could apply the same argument to fundamentalists and secular folks, to Israelis and Palestinians, to feminists and men’s rights activists, and so forth.

                                                                                I know this is a little late to the conversation, but your examples are full of grossly false equivalences. I’m pointing this out not to attack you, because I think you just haven’t really thought it through or are unaware of the context for the statements you’re making, but because spreading them is bad for society.

                                                                                Start with “fundamentalists and secular folks”. Fundamentalists are radical theocrats, and in the United States, are identified by believing things like homosexuality is sinful, women must submit to their husbands, etc., and in general being radically intolerant of other peoples’ private business. “Secular folks” are “everyone else”, in terms of values.

                                                                                Feminists believe that women are as human and as entitled to agency and dignity as men are; MRAs believe that women are inferior to men and should be enslaved.

                                                                                There is no meeting halfway with them. Their values are bad, and any social currency they might gain by publicly participating in high-prestige, “neutral” contexts, like tech conferences, will be used to further their heinous agendas. Ignoring this is how Nazis take over; it creates safe spaces for them, and once they’re in, the space is unsafe for everyone else.

                                                                                1. 1

                                                                                  Feminists believe that women are as human and as entitled to agency and dignity as men are; MRAs believe that women are inferior to men and should be enslaved.

                                                                                  There are some folks that identify with MRAs that believe that, and they’re scum. There are also some feminists that cannot share a room or conversation with a man because they view men as needing to be eliminated (for example, Solanas). Ignoring the shades of belief and judging groups by the most offensive members is in fact what puts all discourse in peril.

                                                                                  This is all quite off-topic for Lobsters. If you want to argue, hit me up on DM. :)

                                                                                  1. 1

                                                                                    It’s slightly off-topic for lobste.rs, but not for this thread, and I don’t want to minimize the point that you cannot meet Nazis halfway.

                                                                                    So, again, your equivalence between MRAs, any MRAs at all, even the most milquetoast “I think society needs to nicer to men” whiner, and even the most extreme misandrist feminist activist is false, because there is no large-scale issue with cultural and institutional misandry, but there is cultural and institutional misogyny. One viewpoint is laughably absurd and harmless (“men should be eliminated”; it’s not a credible threat to men), the other is simply, “Keep things as they are or make them even shittier to women,” which is extremely credible as a threat to the well-being of women. See also below, re: the President brags about sexually assaulting women.

                                                                                    Going back to, and again I need to emphasize that we’re talking about literal Nazis, given that the most powerful single official of the most powerful nation on the planet is an unapologetic white supremacist and rapist, it’s insane to say, “Let’s just set politics aside and welcome anyone.” The presence of Nazis is a threat to public safety and well-being, whether or not they’re in uniform or are being “polite”. Failure to deal with them as the manifest threat they are, given the friendly political environment for them, is spineless abdication of moral duty. There is no “both sides” argument to be made.

                                                                                    I’m telling you this not to accuse you of cowardice, but to help you understand what you’re actually arguing and who would benefit from it, so that you may stop being part of the problem, and start being part of the solution.

                                                                                    1. 2

                                                                                      One viewpoint is laughably absurd and harmless (“men should be eliminated”; it’s not a credible threat to men)

                                                                                      Well, except for the fact that the author shot two men and attempted to shoot a third, and was on record for being “dead serious” about her manifesto.

                                                                                      the other is simply, “Keep things as they are or make them even shittier to women,” which is extremely credible as a threat to the well-being of women.

                                                                                      There are certainly some folks claiming membership that push for misogyny, but the actual stuff asked about is things like genital mutilation, how domestic abuse of men is handled (when it is recognized at all) and what support networks they have, how divorce and custody is handled, and so forth. You grossly misstate reality here. That’s forgivable, because people tend to be fuzzy with terms these days, but still.

                                                                                      we’re talking about literal Nazis

                                                                                      Somebody hide the Sudetenland! Quick, warn Poland! Buy stock in Volkswagen (and IBM )! That’s what a literal Nazi is about. If you want to talk about neo-Nazis, white supremacists, or even the (poorly-grouped) alt-right, I’m happy to criticize positions they have (most of which range from garbage to odious). Using incorrect terminology makes it hard to talk about a thing productively.

                                                                                      Why does this matter? We can’t defend or even relate to literal Nazis following orders liquidating a ghetto. Some poor white trash who had his job outsourced to Shenzhen though? Somebody who has strong opinions about how blacks are attacking police (despite growing up in a rural town with no African-Americans at all, and a police force which consists of like a county sheriff and a couple of deputies)? Those folks we can reach and educate, if we stop lumping them in with perpetrators of one of history’s biggest genocides.

                                                                                      given that the most powerful single official of the most powerful nation on the planet is an unapologetic white supremacist and rapist

                                                                                      That power is why he’s able to maintain such a solid Department of State, why Congress is doing whatever he wants, why he has met such acclaim and success in his dealings, and why he has been able to dismiss all of the court cases and suits brought against him. Alternately, he’s a boogeyman inflated into vast proportions by people looking to be scared about something.

                                                                                      There is no “both sides” argument to be made.

                                                                                      There is, I’ve made it, you don’t buy it because you’re invested in demonizing and dehumanizing the side you don’t like, life goes on, history will be on the side of tolerance and the dialing back of polarization–or we’ll be shooting at each other and fighting over cans of food in a generation.

                                                                                      This line of discussion is not on-topic for lobsters, and is quite divorced from even the original question of codes-of-conduct.

                                                                                      1. 2

                                                                                        Welp, you have clearly stated your desire to do nothing in the face of evil and refuse to even name it, so, you’re correct, we will never meet on this.

                                                                                      2. 1

                                                                                        When you say, “All are welcome,” what you are really saying, and what is heard loud and clear by both aggressors and victims, is, “This is a safe space for Nazis.” Or rapists. Or slavers. Or killers. You get the picture. So do they.

                                                                                2. 1

                                                                                  Writing clear rules intended to be taken literally that cover all forms of potentially allowed and disallowed behavior is essentially a fools errand. Ultimately there must be some human arbiters of behavior that will have to interpret the intention of the rules, look at the behavior, and decide if a violation occurred. You’re basically talking about a miniature domains-specific legal problem here, and if you look at the complexity of most modern legal systems it’s clear that you can’t really have a clearly written exact set of rules that will apply without human interpretation.

                                                                                  I completely agree, and this is my biggest problem with the whole “code of conduct” paradigm: it creates a promise of clear, formal rules that can’t possibly be delivered on. Talking in terms of values and moderation policies is a more useful framing that puts the human subjectivity front-and-centre and guides us towards thinking about questions (Who’s going to moderate? What process will they follow? Who are they accountable to?) that are really quite central to dealing with conduct issues in communities, but are swept under the carpet by thinking in terms of a “code” that a project can simply adopt.

                                                                                3. 3

                                                                                  Im ok with a higher false positive rate for ‘Is this person a Nazi’ test if it means fewer false negatives. The beauty of technology is not that it’s value less, but that it’s an expression of human value. Technology is anything people make and which things people make is a huge signal of what they value. While some technology are useful tools regardless of value (i can use the butt of a gun to hammer a nail) we can make a pretty good statement about what that society values based on their technology.

                                                                                4. 7

                                                                                  While I don’t inherently disagree, I find that a lot of CoC’s that get pushed out are rather restricting. I find it’s better to interpret them as guidelines, not rules, rules lead to toxic individuals getting wiggle room through loopholes.

                                                                                  I’ve also been to events in Germany that don’t have any CoC at all and I don’t hear many complaints from other events around here either. If you’re being a jerk you get thrown out, end of story.

                                                                                  1. 4

                                                                                    The CoC provisions on offensive speech are usually interpreted broadly benefiting certain groups over others. In other words, it works the opposite of the general rule where these give enforcers lots of leverage over large groups of people. The wiggle room is theirs.

                                                                                    1. 6

                                                                                      Personally I think any ruleset is only good if it’s applied equally to everyone, same for guidelines.

                                                                                      If a CoC is provisioned and enforced it must be done with the same rigour and accuracy as one would apply law in a proper court.

                                                                                      1. 5

                                                                                        Personally I think any ruleset is only good if it’s applied equally to everyone, same for guidelines.

                                                                                        That runs into the whole “why can’t you tolerate my intolerance?” problem though. If they say that “hate speech is not allowed” and you interpret a gay married couple discussing their honeymoon is hateful towards Christians (note that not everyone feels this way, just using an example), then who wins? The decision is up to the organizers of the con, but in general most these days are going to side with the married couple (as they should, IMNSHO).

                                                                                        If a CoC is provisioned and enforced it must be done with the same rigour and accuracy as one would apply law in a proper court.

                                                                                        Absolutely not. They’re not laws. They’re rules that a private entity made up for participation in a private function. The correct interpretation of the CoC is exactly whatever the organizers of the con want it to be and nothing else. Generally, they’re going to interpret it in whatever way furthers the goal of the con (e.g. more attendees, higher quality talks) or the values of the organizers (more diversity in gender or ethnicity or whatever).

                                                                                        1. 6

                                                                                          I would interpret “no hate speech” as strict as Section 1 §130 StGB of german law;

                                                                                          “1. […] against any national, race, religious or ethnic group, against parts of the population or a single person based on predetermined groups or incite parts of the population to violence or despotism or 2. the dignity of another human being, based on a predetermined group, parts of the population or membership in a predetermined group or a specific part of the population insults, maliciously attacks or frames […]” (excuse my crude translation)

                                                                                          Section 2 covers any transmission of anything mentioned in Section 1.

                                                                                          I think that about covers it in terms of “hate speech”. In the specified case, the couple wins since they’re part of a predetermined group of the population.

                                                                                          They’re not laws. They’re rules that a private entity made up for participation in a private function

                                                                                          I think they should be handled like laws. Rigour, precision, efficiency and accuracy are important. The organizers of a con should therefore word their rules such that any violation will be absolutely clear in either word or spirit of the rules without a doubt. If anyone breaks these rules and spreads hate speech then there will be no doubt by anyone involved they crossed the line. There will be no need to extensively discuss it or any wasting of time on people who want to wiggle around the rules.

                                                                                          I would love if some organizer did precisely this.

                                                                                          1. 1

                                                                                            I cannot see how anybody could interpret that as hate speech. In an attempt to overcome by own biases, can you flip that example on its head somehow so I can relate to it?

                                                                                            1. 6

                                                                                              Trust me, people can and do. The whole “I’m fine with gay people but do they have to throw it in my face??” because they have a picture of their significant other on their desk or something, whereas the person in question wouldn’t bat an eye at a heterosexual person having a picture of their spouse on their desk.

                                                                                              I’m having trouble coming up with an opposite example, which is my fault.

                                                                                              1. 3

                                                                                                Oh, I know that there are people who would find that offensive. But the bar for hate speech is higher than merely being offensive.

                                                                                                1. 1

                                                                                                  Opposite? How about being annoyed that something says husband and wife. Or taking offense at something like a father and daughter event because nobody in your family is technically a father.

                                                                                                  1. 1

                                                                                                    Fair enough. I was trying to come up with an example from a right-wing perspective (“opposite” in that regard), but the thought process is alien to me so it’s hard.

                                                                                                2. 3

                                                                                                  (This is just for the sake of the argument, we’re already off the track so I’ll roll with it) One might interpret Christian couples taking PR actions against abortion as hateful against its supporters.

                                                                                                  1. 3

                                                                                                    Nope, I can’t see that being considered hate speech either.

                                                                                                    1. 5

                                                                                                      http://www.cbc.ca/news/politics/summer-jobs-abortion-images-ccbr-1.4523255

                                                                                                      [Justin Trudeau] called flyers depicting bloodied, aborted fetuses used by the Calgary-based Canadian Centre for Bio-ethical Reform (CCBR) “hateful.”

                                                                                                      Joyce Arthur, executive director of the Abortion Rights Coalition of Canada, said she believes those images … should be outlawed as hate propaganda.

                                                                                                      [emphasis mine]

                                                                                                      1. 2

                                                                                                        wow. I stand corrected.

                                                                                                3. 1

                                                                                                  They’re not laws. They’re rules that a private entity made up for participation in a private function. The correct interpretation of the CoC is exactly whatever the organizers of the con want it to be and nothing else. Generally, they’re going to interpret it in whatever way furthers the goal of the con (e.g. more attendees, higher quality talks) or the values of the organizers (more diversity in gender or ethnicity or whatever).

                                                                                                  A CoC is legalistic by its very nature. I’m fine with an organisation adopting formal rules that are interpreted as rigorously as actual law; I’m fine with an organisation using the subjective judgement of its human moderators. But adopting an ambiguously-worded “code” that is in practice subject to interpretation is the worst of both worlds: it reduces moderators’ flexibility, but doesn’t offer participants enough clarity to be useful.

                                                                                                4. 1

                                                                                                  Agreed.

                                                                                            2. 4

                                                                                              In essence, the choice to not have a CoC these days is tantamount to an open invitation to the worst of the people in our industry. That’s not to say that good people don’t also attend these events, or even that the organizers are knowingly trying to create that sort of environment, but ignorance of the message you’re sending doesn’t necessarily change the message itself.

                                                                                              Equally, the message I get from the choice to have a CoC, as someone generally perceived as white and male, is that I’ll be held to a double standard and if the wrong person takes a dislike to me then I’ll be thrown out, regardless of my actions. That’s probably not a fair reflection of the organisers’ intentions, but it is the message.

                                                                                              1. 0

                                                                                                Apart from that concern, which I totally agree with, I also try to stay clear of projects that boast a CoC because it shows me that their priorities lie in politics, rather than in technical matters. It’s a waste of my time to spend any effort on endeavors like that.

                                                                                                1. 2

                                                                                                  It frequently doesn’t though.

                                                                                                  Almost any large project with a code of conduct has it precisely because they want to focus on the technology more than the politics, and without a code of conduct, or with too loose a code of conduct, they end up being controlled by the loudest jerk.

                                                                                                  1. 1

                                                                                                    See the replies to my comment up thread for people who are advocating for CoCs for nakedly political reasons that have nothing to do with technology.

                                                                                                2. 1

                                                                                                  It’s my experience that the only people who whine about this are better left excluded, because somehow, white dudes are still abundantly present and everyone has a nice time.

                                                                                                  1. 2

                                                                                                    White dudes? Yes. Working-class people, or even just any kind of conservatives? Often not. People have a nice time yes, but people tend to have a nice time in homogeneous spaces - everyone having a nice time is, if anything, even more common at events attended solely by white dudes. So equally I could say the only people who whine (your term) about diversity/inclusivity/… are better left excluded.

                                                                                                3. 4

                                                                                                  Some thoughts, from someone running a con that has chosen each year to not have a CoC, but is in the process of developing an alternative model:

                                                                                                  The largest factor to me is that, regardless of any particular problems with CoCs, the choice to not have a CoC has, in many cases, become a sort of dogwhistle for events that are explicitly inclusive of harassers, and have no intention of running a broadly welcoming event.

                                                                                                  It’s not a dogwhistle for events that are explicitly inclusive of harassers. A lack of something is not the same as explicitly including the opposite. The author explicitly covers the lack of effectiveness in many conference CoCs under gray zones and enforcements.

                                                                                                  As someone who organises a conference, attends lots of events around the world and spends a bit of time sharing stories with organisers, I have yet to see a conference with the resources to properly ensure that all participants know and understand the CoC, how to use and enforce it. Such an event may exist, I haven’t seen it. I’ve experienced harassment and stalking at events myself, and watched it fumble wherever I’ve reported it.

                                                                                                  That’s not to say that CoCs are useless, some events may find them useful, but for the majority of events I’ve attended they have caused more problems than they solve in themselves.

                                                                                                  Second, a CoC lets members outside of the community know what the shared value of a community are, and helps people to make an informed decision about whether their values align with the community, and if the community is worth engaging with.

                                                                                                  Nearly every CoC I encounter is a variant of or asserts to be inspired by the same geek feminism-based CoC. I have argued against it repeatedly on the grounds that anyone using it has not properly considered the purpose, scope and enforcement of such a document, nor the complications it presents. I have had event organisers flat out admit that they’re using it because people who don’t come to their event will choose not to come to their event if they don’t.

                                                                                                  Frankly, if someone feels that the presence of a CoC is the determining factor in whether they attend an event. Maybe an event without a CoC isn’t the event for them. A copy-paste geek feminism sample CoC is a dog whistle to say, “We’re virtue signalling our CoC but don’t really care enough to do it properly”.

                                                                                                  Organisers should focus on their existing community and welcoming new arrivals at the event rather than people who won’t turn up if there isn’t a universally ignored and unenforced document put up everywhere to make existing people feel that little bit shittier.

                                                                                                  1. 0

                                                                                                    Nearly every CoC I encounter is a variant of or asserts to be inspired by the same geek feminism-based CoC

                                                                                                    If you are a geek and not a feminist, what are you? I’m a male, geek, and a feminist.

                                                                                                    I’m surprised anyone working in high technology would choose to not be a feminist and prefer to live in the last century. Fortunately I don’t meet many of those people. They seem to only exist on the internet.

                                                                                                    1. 6

                                                                                                      I reject the label feminist for many of the reasons outlined here: https://necpluribusimpar.net/the-trouble-with-feminism/ (and frankly I wouldn’t call myself a geek either, especially not if people are going to use it as an excuse to say that I am obliged to hold one or another political opinion. It’s never been a label I particularly cared for in any case).

                                                                                                      I don’t have a problem with reasonable Codes of Conduct in principle, but in practice, as stevelord states, they are specifically feminist advocacy, and I think that many vocal strains of modern feminism are hostile to values I think are important and want to see reflected in the culture around technological work. A succinct way of putting it is, I would be fine with any Code of Conduct that mentioned James Damore by name as someone whose speech would be unambiguously permissable in a project or convention - and if a Code of Conduct was designed by people who want James Damore’s words to be grounds for expulsion (as they were for him in the technological community of Google engineering employees), I don’t want that Code of Conduct in force in any space I care about.

                                                                                                      1. 3

                                                                                                        I would argue that this is an example of doing exactly what CoCs are intended to do. If you think a project should have people like Damore driving away people who don’t want to be made out to be novelties or second-class class contributors, then frankly I don’t want you in my community.

                                                                                                        1. 3

                                                                                                          You’re free to give your “diverse utopia” a shot on your own turf, but the moment you try to co-opt or subvert an existing community or project imagined, initiated, and implemented by (as your side frequently points out) utterly un-“diverse” (i.e. white male) contributors you are throwing the first punch.

                                                                                                          This kind of subversion has already occurred - repeatedly - so the bed has been made and all you can do now is lie in it. I, and I’d bet most people in tech, did not expect our field of work to be made into a political battlefield, but hey, solving problems is what we do. We’ll solve this one too.

                                                                                                          1. 2

                                                                                                            It’s interesting that you yourself point out how many existing projects and communities have adopted more inclusive policies. The fact is that culture is shifting toward inclusion, and even non-idealistic communities are realizing that broad and inclusive policies attract more and better contributions, and the benefits more than outweigh the technical contributions that would have been made by hateful and toxic community members. It’s not like those of us who value and appreciate CoCs and otherwise inclusive policies have any particular power to dictate the rules and structure of existing projects. Communities are broadly recognizing the value of CoCs and adopting them because the people there want to make their communities better.

                                                                                                            1. 3

                                                                                                              If I can just point you at an example of CoCs causing significant damage to communities, I’d point you at FreeBSD’s huggate scandal.

                                                                                                              That’s what everyone needs to avoid. CoCs mustn’t be entered into lightly. They have to be properly considered, debated and set up to enhance rather than detract from a community.

                                                                                                          2. -2

                                                                                                            Love it! EttiCosmocrepe really did prove your point.

                                                                                                          3. 1

                                                                                                            You really believe James Damore’s anti-intellectualism is a benefit to technological work? His contributions had nothing to do with technological work and seemed to create a huge distraction away from technological work. I would love to see an argument from you detailing how James Damore’s speech was constructive to technological work.

                                                                                                            If you are confused about why I called James Damore’s speech anti-intellectual, I would hint here that empiricism is no substitute for thinking.

                                                                                                            1. 0

                                                                                                              Thanks for your comment. Just one thing. I didn’t state they’re specifically feminist advocacy, it’s the blanket adoption of the geek feminism wiki CoC template I was rallying against.

                                                                                                              To be clear:

                                                                                                              • Yes the template is problematic on many levels for various events
                                                                                                              • The template is a form of feminist advocacy, but that’s not an issue and may be an advantage for some events
                                                                                                              • IME An event that posts it verbatim is usually more interested in telling you they have a CoC than enforcing the content

                                                                                                              Part of running a decent conference is accepting that there will be people there with different views to you. Your job as an organizer is to create a fun and friendly event, not arbitrarily provoke people (I do enough of that in my spare time :)).

                                                                                                            2. 3

                                                                                                              Sorry, perhaps I wasn’t clear. By geek feminism-based CoC I specifically mean this template and it’s wholesale adoption verbatim or almost verbatim.

                                                                                                              1. 4

                                                                                                                That one has exactly the kind of politically-motivated and dominating stuff I aim to block in CoC proposals:

                                                                                                                “‘Reverse’ -isms, including ‘reverse racism,’ ‘reverse sexism,’ and ‘cisphobia’ (because these things don’t exist)”

                                                                                                                My emphasis added. The start is denial victims exist in white, male, or straight groups operating in environments where minority members dominate the power structure. This is dictated by proponemts’ political beliefs that are controversial even among minority members they claim to he about protecting. The next move the ideology brings is not allowing them a say in things or allowing statements/actions toward them that would be offensive/banned if done to other groups. The next is ridicule or ejection as a response to dissent.

                                                                                                                All starts with accepting the sophist definitions and rules of a tiny few intended to dominate their opponents in larger groups that they enshrine into a CoC they’ll tell groups is just about civility and stopping bad behavior. No it isn’t: it’s ideological subversion of groups’ norms to enforce the pushers’ beliefs. They’ll put down minorities resisting those beliefs as quickly as anyone else, too.

                                                                                                                1. 1

                                                                                                                  Every single statement you’ve made is baseless and false.

                                                                                                                  1. 2

                                                                                                                    Your counter has no evidence. So nobody should believe it. That simple.

                                                                                                                    Unfortunately, I still have to go into a workplace where many groups are dominated by politics benefiting one type of minority (blacks) at everyone else’ expense. That’s in social groups, work assigned, and promotions. Sounds like the definition of structural racism to me. If ever applied to non-whites, the two sentences above would be all the proof they needed that they’re victims of structural racism. You’d agree with them. Logically, there the same function or algorithm for determining structural bias that just have different inputs or outputs. As the sophistry goes, those on the linked article and now you if backing them redefine their own term for just these conversations so it can’t apply to a white person.

                                                                                                                    With the magic of political bias and agendas, the same definition can be two, contradicting things so that one group is villainized whether delivering or receiving damage interacting with other groups. Such sophistry is not just illogical: it’s inhumane given the damage it supports to decent people in the target group. So, I’d fight a CoC or agenda that starts with a declaration that non-whites in positions of power would never abuse their power against whites. Likewise, women never abusing men. Both are insane statements in light of both recorded history and minority members’ own incessant claims about how other minorities mistreat them at work, school, etc.

                                                                                                                    The logical response is banning and addressing every instance of group X uses their power to discriminate against group Y with who X and Y are varying case by case, place by place, issue by issue. That protects the most people with the most fairness. It also takes hardly any additional effort in event white or male discrimination is as rare (“nonexistent”) as my opponents believe. Most work would probably still benefit their preferred groups as well given that’s where most of the discrimination is right now.

                                                                                                                    Note: I should also point out to anyone reading along that even a sub-Reddit on feminism had a list showing they recognized male-specific biases and discrimination. It’s done from their viewpoint but has points that corroborate my claims. Clearly, it’s only some feminists I’m battling with these claims rather than all feminists.

                                                                                                                    1. 3

                                                                                                                      Unfortunately, I still have to go into a workplace where many groups are dominated by politics benefiting one type of minority (blacks) at everyone else’ expense. That’s in social groups, work assigned, and promotions. Sounds like the definition of structural racism to me. If ever applied to non-whites, the two sentences above would be all the proof they needed that they’re victims of structural racism. You’d agree with them. Logically, there the same function or algorithm for determining structural bias that just have different inputs or outputs. As the sophistry goes, those on the linked article and now you if backing them redefine their own term for just these conversations so it can’t apply to a white person.

                                                                                                                      Sorry for the late reply.

                                                                                                                      So, we don’t really know each other. I have some ideas about you: male, 20s, information security professional. Probably not in California. From what you’ve previously posted, it sounds like you had it not so easy growing up.

                                                                                                                      Here’s where I go out on a limb a little bit: you believe that the most important thing about doing your job is professional competence, like ability to debug an issue or design a feature to be safe and easy to use. You also hate that there are exploitable systems in place in society; exploitable systems are bad.

                                                                                                                      Now, it sounds to me like your boss thought other things were important, like smelling nice or getting along with other teams, were also important, and when some of your friends, who you thought were very good at their jobs, were fired or laid off, they were replaced by people your boss, who is not white, knew or approved of.

                                                                                                                      Am I way off base?

                                                                                                                      Anyway, I’m saying all this to demonstrate that I have some idea of how things are, based on my decades of professional interaction with infosec teams, and working in IT, and being online.

                                                                                                                      So, you say above, “My black boss favors other black people over white people, sounds like the definition of structural racism to me.” But your error is so fundamental that explaining how wrong you are is such a huge task. It requires you to understand:

                                                                                                                      1. there is no separation of concerns or contexts for human beings in society; there is no such thing as “professional identity” and “personal identity”, for example, because actions in one context have effect in all the other ones;

                                                                                                                      To this point, consider how you feel about the decision to exclude the fascist Urbit dude (Moldbug) from a conference, where presumably, he was going to talk about his idea for a feudal internet and recruit people to support him and its development. You’re mad because you think the details of his software, developed as a reification of his values, is not a political issue, merely a technical one, and you don’t think any status given to him for speaking at that conference will carry over to his Moldbug persona, and no one who he thinks should be subjugated will stay away as a result of his presence. I leave the absurdity of that belief to stand on its face.

                                                                                                                      1. there is a difference between small, local, private social spaces, like an office or a conference, and THE ENTIRE REST OF THE WORLD, where those larger contexts’ effects dominate.

                                                                                                                      To the second point, for example, and to bring up something you said previously in a different thread, there is no study of the unfair discrimination done by female bosses against men because there are so few female bosses.

                                                                                                                      And so, that brings us to the final thing you need to understand before you could understand why I said your statements were baseless and false:

                                                                                                                      1. the presence of an exploitable social system is not the same as its mass exploitation by one identifiable group.

                                                                                                                      You have a black boss who favors people who are like her, and this offends you. To say, “this is structural racism in action,” though, is to ignore the fact that 90% of the bosses are white men who also favor people like them, and that the current real cultural and political landscape favors people like them in terms of access to education, and jobs, and wealth opportunities, and protection by police, and ability to relocate to some other place where the people there will probably be friendly to them. And most of them are hostile to the idea of changing that to make it more equitable.

                                                                                                                      And I don’t think you’ll ever understand that, or at least, not here and now. So when you say something unfounded and ignorant like, “reverse racism is just as bad as real racism”, which is false and baseless because it ignores nearly every relevant factor in favor of “any exploitation of an exploitable system is offensive and bad”, the most legitimate response is a one-liner like the one I gave.

                                                                                                                      1. 3

                                                                                                                        “So, we don’t really know each other. I have some ideas about you: male, 20s, information security professional. Probably not in California. From what you’ve previously posted, it sounds like you had it not so easy growing up. Here’s where I go out on a limb a little bit: you believe that the most important thing about doing your job is professional competence”

                                                                                                                        I appreciate you attempting to understand where I’m coming from. Unfortunately, it gave a great example of the kind of projection I’m talking about that certain types of politics depend on to prop up myths or suppress alternative views. The profile doesn’t even match some of my comments on Lobsters about my job, how people get promotions, or what to expect in businesses. It is common among people that push a specific type of politics or CoC’s. Almost every one of them that profiles me says same thing you did. So, let’s get a better picture.

                                                                                                                        I grew up in areas where dominant groups were very different from me: black school with pervasive racism against whites; rural areas with rednecks that look down on “nerds” and tech; mixed, suburban school that was great in comparison, all groups anti-nerd in nicer way, and a nerd/outcast crowd that was cool (yay!); businesses and other organizations with different makeups. I’m in 30-40 range. I’m not currently in tech or information security as main job: I went into operational side of a company that does mix of high-volume sales and service activities. My job mixes both: sometimes moving product, othertimes handing customers. Our customer base is as diverse as they get with me interacting with, serving, taking abuse from, or being praised by at least 22,000 people face-to-face on record with high, satisfaction rate from those surveyed. With many, especially in groups, I’m required to listen to or make conversation with them to make a pleasant experience. I also observe and listen to what they say to each other just being curious of how they act and what they think. On Facebook, I also created a diverse crowd to see all the things people could teach me about popular topics that I’d otherwise miss due to a filter bubble.

                                                                                                                        My long time effectively being a white person in both minority-dominated environments and effective slave to mix of people showed me they act effectively the same over sample size of twenty to thirty thousand people in many circumstances with tens to hundreds of thousands of interactions with them among my coworkers and I. Most exploit our company’s level of service to get what they can out of us. Most sound polite, some neutral, and a few ugly with almost all apathetic to burdens or damage they cause. Last subset will use their power in ways that seriously disrupt the company or cause employees harm. Some have used race/gender cards against white males but root cause of exploiting power with misinformation or threats is something all groups do to us. The cards are rarely necessary given our vulnerability. The bosses, which come and go a lot, are mostly either folks wanting a safe bet at blue-chip company with upward mobility or opportunists wanting a ticket punching opportunity move laterally into better pay at another company. At upper levels, it’s almost always politics over performance with team supervisor level being a mix of performance and politics leaning toward performance if it’s about at least keeping the job.

                                                                                                                        As part of my work, I constantly ask my customers of all groups questions about their jobs, lives, and even politics with no judgment or argument: I just tell them I’m curious, I like hearing others opinions, and thank them for whatever they tell me. Depending on how I assess them, I’ll either politely decline further engagement or carefully ask questions making sure I don’t step past their boundaries. Down-to-earth, non-judgmental or just fun-loving customers I’m more open with or do my comedic approach I do with coworkers for their enjoyment. Those few being non-threatening to my career means I can self-censor less and be myself more. Work style is goofball/satirist/wiseguy who has everyone’s back or gives headaches to those team decides needs it.

                                                                                                                        That leads me to the next thing. I’d be willing to bet that neither you nor most people advocating some of these views, CoC’s, etc have been under the power of large numbers of minorities or interviewed hundreds to thousands in diverse area for their views without leading questions that reinforce your own beliefs. The comments you see me make on here are often compatible with many of them I’ve talked to. That’s despite some’s attempts to censor them saying that’s about “protecting” minorities or blocking what offends “them.” There’s a huge gap between what piles of black people tell me and what some liberals (including whites) tell me that pretty much all black people think. For instance, most black people I interview in the Mid-South think racism is something every group can do, that it can happen at many levels, and black people can be racist, too. There are plenty that think the other way but they aren’t majority I’ve encountered. When the latter are in control, the views that disagreeing blacks espouse about definition or nature of racism being a general thing are not allowed despite coming from minority members. The standards/rule promoting groups claim to advance or protect minorities while systematically excluding all of them with dissenting views from participation. And then they have a problem with whites making similar claims, too.

                                                                                                                        Your longer comment might make more sense if you were responding to what a white male with minimal social interaction would believe after a few brushes with run-of-the-mill discrimination. Thing is, my posts are a summary of position of whites, blacks, men, and women who believe these things based on their lifetimes of interaction with their groups and others with many of us under power of other groups in organizations they control. So, we’ve gotten to see it both ways. We’re a very diverse crowd. We shouldn’t be pigeonholed into these projections that pretend it’s one or two subsets of demographics, we have limited experience with other groups in control, we must be social idiots who don’t know The Game at work that gets promotions, and so on. We’re a mix of minority members and white males who understand people, have tons of experience with them, and disagree with your position based on those experiences. Seeing how minority members disagreed among themselves on topics of race, gender and so on reinforced my fight against any group dictating one set of beliefs/practices being acceptable or not. My own group saying it could just be bias but many of them concluding similar things from different backgrounds hinted it might be greater truth.

                                                                                                                        “there is a difference between small, local, private social spaces,”

                                                                                                                        It turns out this is true but circumstantially rather than fundamental. The experience I’ve had with thousands of people (esp minorities), observing many more groups controlled by them, listening to minority members in structures controlled by majority or minority types, and so on indicates minority members act just like whites or males. They reward those like them, discriminate against those substantially different, and mostly don’t care about other groups in day-to-day speech or actions. This trend is supported by data from most groups going back most of human history. Any country that has a certain majority with power will have its members come to dominance mostly rewarding their group or a privileged few penalizing others. There’s usually common enemies, too, to unify them. African countries under black control had same traits. Over here, it was mostly white males in power reinforcing their preferences which perpetuated that cycle. So, that’s the majority of the problem at the national level. Switch to cities, organizations, etc that blacks control, you see a reversal of the effect where they boost their own group more and battle/minimize politics of others.

                                                                                                                        From there, how do we react? Well, if it’s a universal phenomenon, then we need to define it as a universal phenomenon rather than definitions or practices that only villify specific groups for others’ gain. The honest definition costs us nothing: we just note bias, expect each group to combat theirs, and assess it in al group activities by default. Minority members that agreed with me and I are all already doing it to varying degrees. So, it’s not hypothethical. From there, we’d expend most of our effort on whatever is most prevalant in our locale and the national level. I’d expect most of that to be combating white racism or male sexism at national level. At local one, it will usually depend on the group with white dominated areas having mostly white racism we gotta fight, non-white dominated areas having non-white racism we have to fight, and occasional weird ones you’d not expect if just using checklist-like approach to who is oppressors or victims. It will vary as the demographics and beliefs vary among the various power and social structures.

                                                                                                                        For instance, our [huge] company has different types of -ism’s in different groups depending on their makeup. The executive and senior levels are definitely biased for whites and mostly males with promotions all politics. Middle started from there to get much more mixed with mosty same politics plus some new. On lower levels of management, there’s been a shift in my area toward blacks benefiting only certain types of blacks in two to three groups, white women in three, white men in two others (one biased for women), and one was mixed before ejecting a scapegoated, white dude recenty to get a black guy. Last one in flux. The black-controlled groups even wanted to poach me to boost their numbers but my bosses and I prevented it. I’m still forced to help them once a day or so but that’s driven by cost-cutting and politics, not racial issues.

                                                                                                                        Blocking transfer was good since turnover is at record high now in their groups, even among black men and women, since leadership’s favoratism discriminates across three attributes (race/gender/age) instead of one or two we’re used to dealing with in the South. High-performing workers with great, social skills who were mostly white, Asian, and one Pacific Islander were given unpopular grunt work with older, black women given better work or promoted. They talk to them differently, too. The advantaged blacks ranged from low performers that transferred to that group (the older women) to a few high performers so good I’d personally invest time in if they asked. Two, a younger male and woman, were exceptions to get advantaged with older women. Women to male ratio in general for advantaged positions is around 8-10 to 1 with ratio among high-performers 1 to 1 to around 3 to 1 depending on what skills you want and whose coming/going. Their personnel decisions don’t make sense unless structural discrimination and/or politics is at play.

                                                                                                                        Which is what I expect by default and combat for all types. And we end with:

                                                                                                                        “And I don’t think you’ll ever understand that, or at least, not here. So when you say something unfounded and ignorant like, “reverse racism is just as bad as real racism”

                                                                                                                        You’re really saying you think all the minority members I’ve listened to or worked with who agree with my position couldn’t possibly understand because of (white male stuff here). It makes no sense because they’re not white males but share my position. Majority are women, too, with many sharing positions on women topics some labeled sexist or something on various forums. You’re right that I can’t understand why only one set of views about minority matters is allowed or often reported, a good chunk preaching them being white, when minorities themselves have an interesting, diverse range of views. I’ve learned a lot from listening to them. They helped shape what I think on tolerance, true inclusiveness, and so on where rejecting certain views on false pretenses (eg only ignorant or hateful white dudes say that) would lead me to systematically discriminate against or suppress minority members with those views in large numbers.

                                                                                                                        That would be racist and sexist like my white, male executives who only tolerate their type of people, views, and practices. I’m not like that. So, I avoid it and fight it when people who do it want to make any form of it a standard practice to force everyone to think, talk and act like them. Usually have minority members backing me up in most places, too, except on these tech forums. Since they’re not present and invisible to my opponents, I have to speak up on their behalf to let people know they and their beliefs exist. They wouldn’t want to be dismissed with labeling and/or censored.

                                                                                                                        1. 2

                                                                                                                          Welp, at least I’m way off-base in my projection, though your childhood was what I meant by rough time (you brought it up in a different comment) :)

                                                                                                                          So, that’s a lot to reply to, and I don’t want you to think I’m ghosting or don’t appreciate the long and thoughtful reply. I do, and I thank you. But I’m about to walk out the door and won’t be able to reply in kind until tomorrow. Or, if you don’t want to continue publicly, I am happy to DM. Or if you’re sick of me and my shit, I respect that.

                                                                                                                          But I mean, I’m surprised you’re not in the industry, when you’re so passionate about what it’s like for people who are in it.

                                                                                                                          1. 1

                                                                                                                            These discussions take a lot of energy as I aim for strong accuracy minimizing effects of my biases. They don’t piss me off or anything except for few times I’m straight up attacked in a clear way. I might not reply just to get back on other stuff like tech or better job, but I’ll definitely read and think on whatever your reply is. :)

                                                                                                                            Far as IT or INFOSEC, I assumed you’d assume I was in it because it’s a reasonable assumption. I didn’t hold that against you so much as use it to illustrate we come here and to our beliefs from many backgrounds that might surprise you. Most people online can’t believe I’m not in INFOSEC. Some have accused me of lying about that to protect my identity at some defense contractor. Yeah, I’m living in movie True Lies lol…

                                                                                                                  2. 1

                                                                                                                    minority members dominate the power structure.

                                                                                                                    If only there was a movement that wanted to eliminated dominating power structures…. I just can’t put my finger on it. Or that’s it! Welcome comrade, have you googled The Bread Book?

                                                                                                                    1. 2

                                                                                                                      Lol. I do try to keep them in check. I stay away from communism, though. Utilitatianism via incentives, regulation, and individual action are my preferred methods.

                                                                                                                  3. 1

                                                                                                                    It seems like a reasonable CoC. Your argument that organizers copy and paste it is strange. 50% of software is GPL, and the remaining are copy-paste licenses like MIT, Apache, and BSD. Likely less than 1% have licenses that are custom. Would you say the same thing about software people choosing a license and copy-pasting it? It seems to me most projects do make a big deal about which license they choose.

                                                                                                                    A well designed CoC like the one you linked seems reasonable to re-use.

                                                                                                                    1. 1

                                                                                                                      Software licences are not the same as CoCs. Software licences police the use of software. CoCs police peoples public behaviour. Using a boilerplate template is a clear indicator that people are posting it to say they’re good people rather than properly looking at how they use or enforce them.

                                                                                                                      You may think the Geek feminism CoC template is fine. I find it deeply problematic for most events in my size, location and cultural bracket for events I’m involved in. That’s not to say it doesn’t make interesting points, but it’s better that event organisers consider them (along with everything the wiki has to say about CoCs) when preparing their own.

                                                                                                                      1. 0

                                                                                                                        I think enforcement is less important than setting expectations. CoC is priming people on what kind of behavior is expected. This priming will have a positive consequence where people will likely act better. There is good psychological research behind priming that you should read. Enforcement is not the primary purpose of a CoC.

                                                                                                                        1. 3

                                                                                                                          I think enforcement is less important than setting expectations.

                                                                                                                          If you’re setting expectations withough an ability to enforce them then this will be your outcome.

                                                                                                                          I’m discontinuing this thread with you as you’re no longer adding anything to the discussion.

                                                                                                                  4. 6

                                                                                                                    I’m neither a geek, nor a feminist. I strongly resent any association between people who claim they are geeks and myself. I am also an anti-feminist. Unlike modern feminists I believe in equality; men and women should have the same rights, just like blacks and catholics and whatever other people from any group you can think of. Modern feminists don’t think that (EttiCosmocrepe provided a link below) and that’s why the are my enemy.

                                                                                                                    1. 0

                                                                                                                      Last I checked feminists want the sexes to be equal. Sounds like you are a “traditional feminist”.

                                                                                                                      1. 2

                                                                                                                        I’m neither a geek, nor a feminist.

                                                                                                                        I am also an anti-feminist

                                                                                                                        hence

                                                                                                                        Sounds like you are a “traditional feminist”.

                                                                                                                        I believe your reasoning really speaks for itself, hence no further comment is necessary.

                                                                                                                        1. 2

                                                                                                                          I think your pet definition of feminism has clouded your reasoning. Example: You said you want men and women to be equal. That’s what feminism is! In the same breath you call yourself an anti-feminist because you have this strange idea of what feminism is.

                                                                                                                          1. 1

                                                                                                                            Technically someone who wants men and women to be equal is an egalitarian. Feminism and Masculism are mostly concerned with equality for the respective side.

                                                                                                                    2. 1

                                                                                                                      Until you decide to explain which version of feminism (or even generation of feminism, grossly speqking) I don’t think it’s easy to have a productive conversation.

                                                                                                                      1. 2

                                                                                                                        The feminism that wants equality for all sexes in all spheres of life.

                                                                                                                        1. 1

                                                                                                                          equal opportunity, or equal outcome?

                                                                                                                          1. 2

                                                                                                                            Equal opportunity and equitable outcome.

                                                                                                                            1. 2

                                                                                                                              You can’t have both. They’re mutually exclusive. Even given 100% equal opportunity there will always be differing outcomes. You can optimize for either, but you reach a point where optimizing for one will always displace the other.

                                                                                                                              This isn’t to say we don’t live in a deeply unequal world in either sense, just that what you want isn’t possible.

                                                                                                                              1. 1

                                                                                                                                Notice I didn’t say equal outcomes, I said equitable

                                                                                                                                1. 2

                                                                                                                                  Notice I didn’t say equal outcomes, I said that your two options were mutually exclusive and implied a trade-off between them.

                                                                                                                                  1. 3

                                                                                                                                    You can’t have both. They’re mutually exclusive. Even given 100% equal opportunity there will always be differing outcomes.

                                                                                                                                    When I said the outcomes need to be equitable, I obviously recognize equal opportunity will result in differing outcomes. This is not a contradiction. This is simply your failure to recognize dynamic systems. Imagine a system using dead reckoning . We have our simple model of system behaviour (equal opportunity leads to equal outcome). Efforts for equitable outcomes is a course correction after applying a Kalman filter from our expected simplified model. What really happened is equal opportunity resulted in different outcomes because people are different. So we apply equitable distribution to course correct. This is a self correcting system.

                                                                                                                                    The truth is “equal opportunity brings more equal than no equal opportunity outcomes, but obviously not equal outcomes” is a complex model. We can simplify with “equal opportunity brings more equality” and then course correct with equitable distribution.

                                                                                                                                    It’s absolutely strange that computer people fall back on “logic” instead of dynamic systems to deal with an obviously dynamic system (society).

                                                                                                                                  2. 1

                                                                                                                                    What would an equitable outcome look like, I’m genuinely interested in what you exactly mean with it.

                                                                                                                                    1. 3

                                                                                                                                      Society should decide what people need at a minimum (housing, food, healthcare, access to internet, etc) to live a decent life and provide it to them. Some people will need to be provided more than others depending on their differences (people with disabilities may need more help, etc).

                                                                                                                                      In other words, from each according to their ability, to each according to their need.

                                                                                                                                      I like the term David Graeber defined here called “everyday communism”

                                                                                                                                      1. 2

                                                                                                                                        That indeed sounds like something that can and should be achieved.

                                                                                                                      2. 1

                                                                                                                        If it’s public, I’m curious to hear more words or links about your alternative model for a CoC. What do you see as key differences do you see in problems to be addressed, approach to solving them, enforcement, administration, education, etc.?

                                                                                                                        1. 2

                                                                                                                          CoCs assert to set expectations for behaviour, but in reality they tend to focus on harassment. We have had harassment at our event (and I have no doubt that plenty goes unreported), but our most common problems are theft, fighting and damage caused by drunkenness. I’ve never seen a CoC address this.

                                                                                                                          Another common (at least to us) area CoC’s tend to fall completely short is disruption of talks. BSidesScotland’s Code of Conduct is very good in this respect.

                                                                                                                          Now some people might think that all we need to do is make a multi-page document outlining what we can and can’t do with a 4 page section on harassment and we’ll be fine. We won’t. In the interim we’ve settled on Wheaton’s Law as the equivalent of a CoC, along with some light rules about enforcement. However, we still have theft, damage, violence etc. on occasion.

                                                                                                                          The current (non-public) iteration is something we’re calling house rules - a one-pager that goes up on the site, at our event that everyone’s supposed to abide by focusing on actions, not opinions. People who think that a person’s value is defined in some aspect of identity can attend. Act on that, and they’re getting thrown out. People who believe that it’s right to punch people dumb enough to think worth is related to skin colour are also getting thrown out. People who steal or try to steal are getting thrown out.

                                                                                                                          To make this work we’re going to hold training sessions with ops leads and all the crew, and we’re going to make sure attendees know the house rules through a mix of mailshots, entry in the brochure and possibly (although we’re not sure yet) having the house rules printed up and put up probably around the registration area. On top of this we’re looking into first aid training for ops leads and a bunch of safeguarding education so we can improve our responses.

                                                                                                                          This assumes that we get this ready in time for this year’s event. Previous iterations have failed due to opposition to identity-based CoCs, mostly from female members of the crew and female attendees. The feedback that I’ve had is that anything that singles people out on the basis of gender or identity is unfair and uncomfortable for them, and introduces an ugly element to our culture that previously wasn’t part of it.

                                                                                                                          More than anything else, we’re trying to specifically avoid a re-run of donglegate, the FreeBSD debacle(s), and make sure we’re ready to properly support a very severe incident. Ultimately we just want our event to be the same great event it’s always been, to make sure people have a good time and to be welcoming to everyone.

                                                                                                                    1. 4

                                                                                                                      After looking for pro/cons in Elm and ReamsonML, my final point was that although Elm has a great pattern and offer simplicity, the interop with JS to import any external library is not fitting the need that I have.

                                                                                                                      If I ever need to write apps without JS interoperability, then elm would be great, but for now, the ecosystem not here yet.

                                                                                                                      1. 5

                                                                                                                        I find this odd given that Elm targets browsers. It’s a bit like creating a native language and say: we don’t need C FFI, people can use named pipes.

                                                                                                                        1. 6

                                                                                                                          It’s not really that odd, when it fits into the Elm model of the world: I suggest listening to this podcast, which goes over why things in Elm are the way they are: https://elmtown.audio/99e18f41

                                                                                                                          1. 6

                                                                                                                            I think the vision put forth by Evan sounds like a great thing to strive for. However, as he says, these things are going to take years to happen.

                                                                                                                            I think we are seeing the tension between building out this grand vision were everything has an ideal interface, and people using it to ship features today. It seems that recently, there has been more and more negative chatter about the limitations and issues of the language around this tension.

                                                                                                                            Not having small patches to fix things like the issue mentioned in the linked post is probably one of larger concerns. Users of the language can make a hotfix and push it to prod in minutes, but issues in language aren’t patched for a year. I know these aren’t the same thing, and actually doing things are never as easy as they sound, but this seems to be where the creator and user are at odds.

                                                                                                                            1. 2

                                                                                                                              I think we are seeing the tension between building out this grand vision were everything has an ideal interface, and people using it to ship features today. It seems that recently, there has been more and more negative chatter about the limitations and issues of the language around this tension.

                                                                                                                              I think it’s OK, and even a good thing, if the power users of a language or library or whatever are persistently frustrated by the thing, if it means a stronger and more consistent story for new and intermediate users. They’re by far the larger and more important demographic. I don’t know a lot about Elm but I get the sense that this is the case.

                                                                                                                              1. 1

                                                                                                                                Oh, certainly. Even having the userbase around to have these frustrations is a good thing.

                                                                                                                                It seems there are some growing pains going from a toy language no one really uses, to one that companies are built on. I guess we have yet to see how these concerns are handled.

                                                                                                                      1. 59

                                                                                                                        This is why we can’t have good software. This program could literally have been an empty file, a nothing at all, a name capturing the essence perfectly.

                                                                                                                        I’m not sure I could disagree more strongly. An empty file only has the true behavior because of a bunch of incredibly non-obvious specific Unix behaviors. It would be equally reasonable for execution of this file to fail (like false) since there’s no hashbang or distinguishable executable format to decide how to handle it. At a somewhat higher level of non-obviousness, it’s really weird that true need be a command at all (and indeed, in almost all shells, it’s nottrue is a builtin nearly everywhere).

                                                                                                                        true being implementable in Unix as an empty file isn’t elegant—it’s coincidental and implicit.

                                                                                                                        1. 15

                                                                                                                          I mean, it’s POSIX specified behavior that any file that is executed that isn’t a loadable binary is passed to /bin/sh (”#!” as the first two bytes results in “implementation-defined” behavior), and it’s POSIX specified behavior that absent anything else, a shell script exits true.

                                                                                                                          It’s no more coincidental and implicit than “read(100)” advances the file pointer 100 bytes, or any other piece of standard behavior. Sure, it’s Unix(-like)-specific, but, well, it’s on a Unix(-like) operating system. :)

                                                                                                                          1. 25

                                                                                                                            It’s precisely specified, yes, but it’s totally coincidental that the specification says what it does. A perfectly-reasonable and nearly-equivalent specification in an alternate universe where Thomson and Ritchie sneezed five seconds earlier while deciding how executables should be handled would have precisely the opposite behavior.

                                                                                                                            On the other hand, if read(100) did anything other than read 100 bytes, that would be extremely surprising and would not have come about from an errant sneeze.

                                                                                                                            1. 35

                                                                                                                              Black Mirror Episode: The year is 2100 and the world is ravaged by global warming. The extra energy aggregated over decades because non executables went through /bin/sh caused the environment to enter the tipping point where the feedback loops turned on. A time machine is invented, where one brave soul goes back in time with a feather, finds Thomson and makes him sneeze, saving humanity from the brink of extinction. But then finds himself going back to 2100 with the world still ravaged. Learns that it was fruitless because of npm and left-pad.

                                                                                                                              1. 12

                                                                                                                                it’s totally coincidental that the specification says what it does.

                                                                                                                                This is true of literally all software specifications, in my experience.

                                                                                                                                1. 8

                                                                                                                                  Surely we can agree that it is far more coincidental that an empty executable returns success immediately than that e.g. read(100) reads 100 bytes?

                                                                                                                                  1. 7

                                                                                                                                    Why isn’t 100 an octal (or a hex or binary) constant? Why is it bytes instead of machine words? Why is read bound to a file descriptor instead of having a record size from an ioctl, and then reading in 100 records?

                                                                                                                                    Just some examples. :)

                                                                                                                                    1. 5

                                                                                                                                      Obviously, minor variations are possible. However, in no reasonable (or even moderately unreasonable) world, would read(100) write 100 bytes.

                                                                                                                                      1. 12

                                                                                                                                        Pass a mmap’ed pointer to read, and it shall write. :)

                                                                                                                                2. 12

                                                                                                                                  The current (POSIX) specification is the product of historical evolution caused in part by /bin/true itself. You see, in V7 Unix, the kernel did not execute an empty file (or shell scripts); it executed only real binaries. It was up to the shell to run shell scripts, including empty ones. Through a series of generalizations (starting in 4BSD with the introduction of csh), this led to the creation of #! and kernel support for it, and then POSIX requiring that the empty file trick be broadly supported.

                                                                                                                                  This historical evolution could have gone another way, but the current status is not the way it is because people rolled out of bed one day and made a decision; it is because a series of choices turned out to be useful enough to be widely supported, eventually in POSIX, and some choices to the contrary wound up being discarded.

                                                                                                                                  (There was a time when kernel support for #! was a dividing line between BSD and System V Unix. The lack of it in the latter meant that, for example, you could not make a shell script be someone’s login shell; it had to be a real executable.)

                                                                                                                                  1. 10

                                                                                                                                    The opposite isn’t reasonable though. That would mean every shell script would have to explicitly exit 0 or it will fail.

                                                                                                                                    Every. Shell. Script.

                                                                                                                                    And aside from annoying everyone, that wouldn’t even change anything. It would just make the implementation of true be exit 0, instead of the implementation of false be exit 1.

                                                                                                                                    And read(100) does do something besides read 100 bytes. It reads up to 100 bytes, and isn’t guaranteed to read the full 100 bytes. You must check the return value and use only the amount of bytes read.

                                                                                                                                    1. 7

                                                                                                                                      It’s not obvious to me that an empty file should count as a valid shell script. It makes code generation marginally easier, I suppose. But I also find something intuitive to the idea that a program should be one or more statements/expressions (or functions if you need main), not zero or more.

                                                                                                                                      1. 3

                                                                                                                                        So if you run an empty file with sh, you would prefer it exits failure. And when you run an empty file with python, ruby, perl, et al., also failures?

                                                                                                                                        Why should a program have one or more statements / expressions? A function need not have one or more statements / expressions. Isn’t top level code in a script just a de facto main function?

                                                                                                                                        It’s intuitive to me that a script, as a sequence of statements to run sequentially, could have zero length. A program with an entry point needs to have at least a main function, which can be empty. But a script is a program where the entry point is the top of the file. It “has a main function” if the file exists.

                                                                                                                                        1. 3

                                                                                                                                          I think whatever the answer is, it makes equal sense for Perl, Python, Ruby, shell, any language that doesn’t require main().

                                                                                                                                          In my opinion, your last argument begs the question. If an empty program is considered valid, then existing is equivalent to having an empty main. If not, then it isn’t.

                                                                                                                                          In any case, I don’t mean to claim that it’s obvious or I’m certain that an empty program should be an error, just that it seems like a live option.

                                                                                                                                        2. 2

                                                                                                                                          Exactly. It sounds like arbitrary hackery common in UNIX development. Just imagine writing a semi-formal spec that defines a program as “zero characters” which you pass onto peer review. They’d say it was an empty file, not a program.

                                                                                                                                          1. 2

                                                                                                                                            I guess true shouldn’t be considered a program. It is definitely tied to the shell it runs in, as you wouldn’t call execv("true", {"/bin/true", NULL}) to exit a program correctly. for example. true has no use outside of the shell, so it makes sense to have it use the shell’s features. That is why now it tends to be a builtin. But having it a builtin is not specified by POSIX. Executing file on the other end, is, and the spec says the default exit code it 0 or “true”. By executing an empty file, you’re then asking the shell to do nothing, and then return true. So I guess it is perfectly fine for true to jist be an empty file. Now I do agree that such a simple behavior has (loke often with unix) way too many ways to be executed, ans people are gonna fight about it for quite some time! What about these?

                                                                                                                                            alias true=(exit)
                                                                                                                                            alias true='/bin/sh /dev/null'
                                                                                                                                            alias true='sh -c "exit $(expr `false;echo $? - $?`)"'
                                                                                                                                            

                                                                                                                                            The one true true !

                                                                                                                                            1. 1

                                                                                                                                              It depends upon the system. There is IEFBR14, a program IBM produced to help make files in JCL which is similar to /bin/true. So there could be uses for such a program.

                                                                                                                                              It also has the distinction of being a program that was one instruction long and still have a bug in it.

                                                                                                                                              1. 1

                                                                                                                                                “That is why now it tends to be a builtin.”

                                                                                                                                                Makes sense. If tied to the shell and unusual, I’d probably put something like this into the interpreter of the shell as an extra condition or for error handling. Part of parsing would identify an empty program. Then, either drop or log it. This is how such things are almost always handled.

                                                                                                                                          2. 1

                                                                                                                                            That would mean every shell script would have to explicitly exit 0 or it will fail.

                                                                                                                                            I don’t see how that follows.

                                                                                                                                            Once the file is actually passed to the shell, it is free to interpret it as it wishes. No reasonable shell language would force users to specify successful exit. But what the shell does is not in question here; it’s what the OS does with an empty or unroutable executable, for which I am contending there is not an obvious behavior. (In fact, I think the behavior of running it unconditionally with the shell is counterintuitive.)

                                                                                                                                            And read(100) does do something besides read 100 bytes.

                                                                                                                                            You’re being pedantic. Obviously, under some circumstances it will set error codes, as well. It very clearly reads some amount of data, subject to the limitations and exceptions of the system; zero knowledge of Unix is required to intuit that behavior.

                                                                                                                                            1. 7

                                                                                                                                              I don’t see how that follows.

                                                                                                                                              You claim the exact opposite behavior would have been equally reasonable. That is, the opposite of an empty shell script exiting true. The precise opposite would be an empty shell script—i.e. a script without an explicit exit—exiting false. This would affect all shell scripts.

                                                                                                                                              Unless you meant the opposite of executing a file not loadable as an executable binary by passing it to /bin/sh, in which case I really would like to know what the “precise opposite” of passing a file to /bin/sh would be.

                                                                                                                                              You’re being pedantic. Obviously, under some circumstances it will set error codes, as well. It very clearly reads some amount of data, subject to the limitations and exceptions of the system; zero knowledge of Unix is required to intuit that behavior.

                                                                                                                                              No. Many people assume read will fill the buffer size they provide unless they are reading the trailing bytes of the file. However, read is allowed to return any number of bytes within the buffer size at any time.

                                                                                                                                              It also has multiple result codes that are not errors. Many people assume when read returns -1 that means error. Did you omit that detail for brevity, or was it not obvious to you?

                                                                                                                                              1. 6

                                                                                                                                                If a file is marked executable, I think it’s quite intuitive that the system attempt to execute. If it’s not a native executable, the next obvious alternative would be to interpret it, using the default system interpreter.

                                                                                                                                            2. 3

                                                                                                                                              Saying the behavior is totally (or even partially) coincidental is a bit strong. You’re ignoring the fundamental design constraints around shell language and giving the original designers more credit than they deserve.

                                                                                                                                              Consider this experiment: you pick 100 random people (who have no previous experience to computer languages) and ask them to design a shell language for POSIX. How would all of these languages compare?

                                                                                                                                              If the design constraints I’m talking about didn’t exist, then it would indeed be random and one would expect only ~50% of the experimental shell languages to have a zero exit status for an empty program.

                                                                                                                                              I strongly doubt that is what you would see. I think you would see the vast majority of those languages specifying that an empty program have zero exit status. In that case, it can’t be random and there must something intentional or fundamental driving that decision.

                                                                                                                                              1. 7

                                                                                                                                                I don’t care about how the shell handles an empty file. (Returning successful in that case is basically reasonable, but not in my opinion altogether obvious.) I’m stating that the operating system handling empty executables by passing them to the shell is essentially arbitrary.

                                                                                                                                                1. 4

                                                                                                                                                  The reason for the existence of human intelligence isn’t obvious either but that doesn’t make it random. A hostile environment naturally provides a strong incentive for an organism to evolve intelligence.

                                                                                                                                                  As far as the operating system executing non-binaries with “/bin/sh” being arbitrary, fair enough. Though I would argue that once the concepts of the shebang line and an interpreter exist, it’s not far off to imagine the concept of a “default interpreter.” Do you think the concept of a default is arbitrary?

                                                                                                                                              2. 1

                                                                                                                                                It’s precisely specified, yes, but it’s totally coincidental that the specification says what it does.

                                                                                                                                                laughs That’s really taking an axe to the sum basis of knowledge, isn’t it?

                                                                                                                                            3. 2

                                                                                                                                              yes an empty file signifying true violates the principle of least astonishment.However if there were a way to have metadata comments about the file describing what it does, how it works, and what version it is without having any of that in the file we’d have the best of both worlds.

                                                                                                                                              1. 2

                                                                                                                                                true being implementable in Unix as an empty file isn’t elegant—it’s coincidental and implicit.

                                                                                                                                                But isn’t this in some sense exactly living up to the “unix philosophy”?

                                                                                                                                                1. 3

                                                                                                                                                  No.

                                                                                                                                                2. 1

                                                                                                                                                  Why is it weird that true need be a command at all?

                                                                                                                                                  1. 0

                                                                                                                                                    To me, the issue is whether it is prone to error. If it is not, it is culture building because it is part of the lore.

                                                                                                                                                  1. 8

                                                                                                                                                    Personally I trust Russ Cox’s judgement… though I could see how people who worked on ‘dep’ would be furious. Go has a reputation for taking community direction with a grain of salt. The go team certainly is not afraid to do unpopular things in the goal of simplicity.

                                                                                                                                                    1. 7

                                                                                                                                                      I am reminded of this comment from Russ, which I think explains rather a lot: https://news.ycombinator.com/item?id=4535977

                                                                                                                                                        1. 1

                                                                                                                                                          vgo is certainly different than dep, and in some ways it’s simpler, but in other ways it pushes a lot more complexity on the user. I think on balance it’s got to be a wash, at least for now.

                                                                                                                                                          1. 2

                                                                                                                                                            What are the complexities pushed onto the users?

                                                                                                                                                        1. -2

                                                                                                                                                          authors of popular databases who discuss their sexist ideas openly, neo-reactionaries leading functional programming conferences.

                                                                                                                                                          How dare people discuss controversial and offensive ideas openly? They should be forced underground so those ideas can fester without any external contradiction or moderation.

                                                                                                                                                          And of course people with weird, icky politics should be censored from purely technical events. Who knows what kind of whacky fascist programming paradigms they might force on us otherwise?

                                                                                                                                                          1. 29

                                                                                                                                                            This is an incredibly bad faith excerpt to take out of context. The author was discussing doubts they had about attending the Recurse Center, and:

                                                                                                                                                            A bigger part was the mission itself: “to get dramatically better at programming”. Did I even want to get better at programming?

                                                                                                                                                            A lot of bad things in the world have been created by programmers: software for operating drones that bomb civilians, data-mining that violates privacy, companies that “disrupt” by dropping vast amounts of capital in to a market without any intention of building a sustainable business. A lot of bad people love programming: open source thought leaders who harbor deeply racist views, authors of popular databases who discuss their sexist ideas openly, neo-reactionaries leading functional programming conferences. The norms of programmer culture still revolve around using needless complexity as a cloak of wizardry.

                                                                                                                                                            As @vyodaiken says, you’re demonstrating the toxic behavior the author is wary of.

                                                                                                                                                            1. 5

                                                                                                                                                              This is such a misguided fear (even though the author says it wasn’t realized in reality anyway) - lot’s of bad people love mathematics, science and music too, it’s no reason to question the value of those pursuits.

                                                                                                                                                              1. 13

                                                                                                                                                                That’s the nature of fear. I don’t know how to interpret your comment except as a criticism for the author talking about something she honestly felt, then talking more about it later when the fear wasn’t realized. How is this a problem?

                                                                                                                                                                Tons of people worry about the impact of their work and whether they are on a path that is ultimately doing more good than harm for the world. Is the author not allowed to worry about that too? Is she not allowed to talk about it?

                                                                                                                                                                I’m trying to give you the benefit of the doubt, but I don’t understand what else your comment could be saying.

                                                                                                                                                                1. 0

                                                                                                                                                                  It is more about me being puzzled by the train of thought. I understand wondering if programming is worthwhile, but I don’t understand how the actions of others have any relevance at all.

                                                                                                                                                                  edit: I guess you could make the case harm is an inevitable outcome of programming.

                                                                                                                                                                2. 4

                                                                                                                                                                  A misguided fear? The Recourse Center has designed social rules to prevent behavior we know is endemic in technical (and business) forums. The author appreciated the results of those rules. But she’s “misguided” ! In what way? Is it your contention that there is not an endemic toxic culture in tech forums? Are all those women just making it up? Is Yarvin’s hobby of smirking racism something we are obligated to ignore? How do you get to decide the validity of what other people experience?

                                                                                                                                                                  1. 2

                                                                                                                                                                    Misguided that the actions of others has bearing on your own personal value that can be derived.

                                                                                                                                                                    1. 2

                                                                                                                                                                      It has a bearing on whether I want to put up with it

                                                                                                                                                                3. 2

                                                                                                                                                                  I wasn’t responding to that part of the article; I was responding to the part of the article I had an opinion on. What is your rule for when people are allowed to respond to things? Do they have to fully agree or disagree with the entire article first?

                                                                                                                                                                4. 17

                                                                                                                                                                  And of course people with weird, icky politics should be censored from purely technical events. Who knows what kind of whacky fascist programming paradigms they might force on us otherwise?

                                                                                                                                                                  How dare women suggest tech and especially programming is a potentially hostile environment one might not want to enter! Preposterous. It is just “locker room talk” for programmers! Either learn to deal with it or stay out of our tree house, you icky girl!

                                                                                                                                                                  Why? Why would you focus on that sentence in a post full of great sentences about positive aspects of the Recurse Center?

                                                                                                                                                                  1. 19

                                                                                                                                                                    Reminds me of a quote from Lean Out

                                                                                                                                                                    Women in tech are the canary in the coal mine. Normally when the canary in the coal mine starts dying you know the environment is toxic and you should get the hell out. Instead, the tech industry is looking at the canary, wondering why it can’t breathe, saying “Lean in, canary. Lean in!” When one canary dies they get a new one because getting more canaries is how you fix the lack of canaries, right? Except the problem is that there isn’t enough oxygen in the coal mine, not that there are too few canaries.

                                                                                                                                                                    (from Sunny Allen’s essay What We Don’t Say)

                                                                                                                                                                    1. 6

                                                                                                                                                                      Lot’s of people have a knee jerk reaction because a lot of this stuff sounds like “remove undesirables from society/jobs/conferences”, and puts the power of who is undesirable into the hands of some questionable people.

                                                                                                                                                                      It wasn’t the point of the post though, so i agree with you.

                                                                                                                                                                      1. 8

                                                                                                                                                                        Got another Lean Out quote for you cause they’re just so damn relevant. This one from Sexism in Tech by Katy Levinson.

                                                                                                                                                                        In the least three years, I was asked not to use the words “sexism” or “racism” when speaking on a diversity panel because it might make the audience uncomfortable.

                                                                                                                                                                        Which throws into especially stark relief wyager’s comment that sparked all of this discussion, since “both sides”[1] are equally worried about censorship. But one group actually gets to say racist, sexist, discriminatory stuff and remain in charge. The other can hardly speak on panels and post on their blogs without the whole world jumping down their throats.

                                                                                                                                                                        So yeah, the knee jerk reaction you mention rings a little shallow to me.

                                                                                                                                                                        [1] I know, “both sides” is highly misleading, but it captures the duality on display here.

                                                                                                                                                                        1. 5

                                                                                                                                                                          The other can hardly speak on panels and post on their blogs without the whole world jumping down their throats.

                                                                                                                                                                          You mean like how people tried to ban Moldbug (presumably who the OP was talking about) from LambdaConf?

                                                                                                                                                                          1. 4

                                                                                                                                                                            With something akin to backchanneling over weird views on a blog totally unrelated to his behavior in conferences, too. Another I cited previously was Opalgate where a guy that didn’t agree with trans people on Twitter got hit by a storm of folks in his project wanting him ejected. They didn’t contribute anything to it like he regularly did but did demand it adopt all their political positions after ejecting its main contributor. The venom was intense with much talk of things like burning bridges and them trying to set him up to look like he supported child molestors or something.

                                                                                                                                                                            And these are supposedly the oppressed people who have to worry about “the whole world jumping down on their throats.” The people who eject any folks who disagree with their beliefs from their own projects, conferences, and this thread. You and their other targets don’t look very powerful and oppressive from my vantage point. They were wielding more power in each of these circumstances.

                                                                                                                                                                            1. 5

                                                                                                                                                                              You want people who Yarvin declares are inferior to politely accept his views? Why should they?

                                                                                                                                                                              1. 6

                                                                                                                                                                                We separate things based on context. In conferences, he had caused no trouble at that point. The reports at the time said he just went to give talks and be helpful. On his blog or personal life, he says or does things I don’t agree with. More than many others but still same thing: many people disagreeing with many things. I’d rather have him at the conference because I don’t ban people I disagree with. If he misbehaves at conferences, then we deal with him.

                                                                                                                                                                                My opponents have a different view. They think everyone should believe/do certain things and not believe/do other things. They should be compatible with those in every forum. If they aren’t in even one place, they are to be shamed in or ejected from every place. He was just one example of that behavior. He was an easy target since his crazy views wouldn’t bring lots of sympathy. In the Opal example, the project had been welcoming and nice to everyone with the violation being a maintainer’s actions on Twitter. Nothing stopped people from participating in the project and no evils were done in it. The maintainer did violate a rule of their politics in one public forum, though. So, an entire group of them hit that project, ordered the ejection of that member, ordered total compliance with their beliefs, trolled the hell out of them, and of course offered nothing to the project in code or other support.

                                                                                                                                                                                I’d rather stop that kind of stuff. It’s just domination rather than anything moral or productive. We can either let a small group of people enforce their arbitrary views on everyone with no discussion or dissent allowed like they desire. Alternatively, we accept everyone under rules the various groups have a consensus on where good things we agree on are encouraged and bad things are prohibited. That maximizes the overall good and productive things we do. That’s my stance. It’s also what we usually do at Lobsters. It’s also what most successful companies and democratic governments do. What my opponents who eject people at conferences ask for is more akin to a dictatorship or theocracy since discussion/dissent is considered evil to be punished.

                                                                                                                                                                                1. 7

                                                                                                                                                                                  I have somewhat similar thoughts as you, but here’s a thought experiment for you that might help put some things in perspective. Let’s say you are running a conference. You are invested in it and hope for it to succeed, and you have some or all power in determining who is invited to speak. After the CFP ends, you like Foobar’s talk and invite them. Sometime later, you post the list of speakers. To your surprise, a lot of people are upset about Foobar’s invitation because Foobar maintains a very controversial blog that makes a lot of people uncomfortable.

                                                                                                                                                                                  You decide to stick to your guns. You definitely appreciate that Foobar expresses controversial views and understand that it makes a lot of other people uncomfortable, but you determine that since Foobar’s controversial views are not related to the conference topic, and therefore, they should still be allowed to speak. So you communicate this to all the would-be conference goers and other invited speakers.

                                                                                                                                                                                  I think this is all pretty reasonable actually, although I do understand why some might object to this type of decision making on ethical grounds. But here’s the kicker. At this point, you hear back from N of the invited speakers and M of the people that would otherwise buy tickets. All of them feel strongly enough that they refuse to attend your conference.

                                                                                                                                                                                  So here’s the question: how big does N and/or M need to be for you to retract your invite to Foobar? Are you so ethical as to allow the conference to fail? Or are you so pragmatic as to let it succeed? Perhaps a little of both?

                                                                                                                                                                                  I think the point of this thought experiment is to demonstrate that morals/ethics aren’t necessarily the only thing at stake here. In particular, you could even be in violent agreement with Foobar but still rescind their invitation for practical reasons alone because you want the conference to succeed. I personally don’t have a strong answer to my thought experiment either, so this isn’t a “gotcha” by any means and probably more of a rhetorical proposition than anything else.

                                                                                                                                                                                  1. 2

                                                                                                                                                                                    (Sorry for delay. I was getting overwhelmed between work, email, and foums exploding. Trying to reply to everyone.)

                                                                                                                                                                                    Alright, before the thought experiment, I’ll note that the situation with that conference was a bit different per initial reports I read. The conference wasn’t experiencing a huge loss hinging on accepting or taking such people. Many people liked the presenters’ talks. Instead, a handful of political activists worked behind the scenes convince the people running it to eject a person they didn’t like regardless of what the conference thought. They probably said a lot of the same kinds of things, too, since an organizer would be receptive to them. This kind of behavior is a major reason I’m holding the line resisting the political or meta stuff such people want to work with.

                                                                                                                                                                                    Alright, now to your exploration which is more than reasonable: it’s something I’ve worried about myself.

                                                                                                                                                                                    “At this point, you hear back from N of the invited speakers and M of the people that would otherwise buy tickets. All of them feel strongly enough that they refuse to attend your conference.

                                                                                                                                                                                    It really comes down to the philosophy of the organizers I guess. There’s a few routes they might take:

                                                                                                                                                                                    1. Ideological. Do what’s perceived as right regardless. In this case, they should include their politics in their marketing to give clear signal of what’s expected. They should block or eject anyone not compatible even if the talk fails. The example you gave is one where the talk could fail. On other end, certain conferences in highly-liberal areas might fail if not doing enough to address their concerns like inclusive language.

                                                                                                                                                                                    2. Impact and/or financial success. This philosophy says do what it takes to succeed financially or just in terms of conference activity. Nothing else matters. You gave one example where a conference might have to eject folks controversial among highly-liberal people to get attendees. I’ll also note this same rule would justify reinforcing ills of society like racism or sexism at conferences under “don’t rock the boat” concept. Lecturing or politicizing typical bunch of Silicon Valley or enterprise developers, esp the privileged males, will only irritate them with lost sales. This priority is a double-edged sword.

                                                                                                                                                                                    3. In the middle. The great thing about real life is most stuff is a spectrum with tradeoffs. That’s the hard thing but also good here. An example is an organizer might set ground rules that reduce bad behavior instead of force politics front and center. Another example is ignoring diversity or bad behavior on the sales team at conferences or in meetings for enterprise segment to drive up sales since buyers often want to know their partners are “like them” or some crap. Whereas, the backend, developers or community side, can be really diverse without the haters even knowing they’re supporting an organization that heavily invests in developming minority talent. This is one of my hypothetical schemes rather than something I’ve observed outside Fortune 500 trick of having immigrants doing lots of work in background.

                                                                                                                                                                                    So, I see some possibilities here where the conference organizers’ priorities seem to be the biggest factor in whether they should accept or block someone. They might block some but not others depending on level of extremism. They might rule exclusively on behavior instead of beliefs. The crowd they’re serving might like behaviors like sexism or hate it with serving the crowd being morally context-sensitive.

                                                                                                                                                                                    I write off top of my head for honesty. I wrote that before I got to your last paragraph. I was about to say I don’t really have an answer for you past the conditional framing above. Too dependent on circumstances or whose in control. Seems you didn’t have one either, though. It is a very important consideration, though, since conferences are usually created to accomplish specific things instead of brag they were compatible with ideology of a person or group. Most of them anyway.

                                                                                                                                                                                  2. 5

                                                                                                                                                                                    My opponents have a different view. They think everyone should believe/do certain things and not believe/do other things. They should be compatible with those in every forum.

                                                                                                                                                                                    It is possible that there is a belief, or set of beliefs, which are sufficiently sociopathic that they disqualify people who hold them from a platform in any context? Is there some value for X that if someone publicly and explicitly said “X” you would refuse to support them in any way?

                                                                                                                                                                                    I hope it’s uncontroversial that the answer to both of those questions should be “yes”. In making that affirmation we’ve established that the set of things exists. Now the discussion shifts to which things belong in the set. Reasonable people can make reasonable arguments for this or that belief. I think it’s completely understandable that Moldbug’s feudalist racism would cross the threshold for a lot of reasonable people.

                                                                                                                                                                                    Put more succinctly: a society isn’t obligated to give a platform to the intolerant in deference to the abstract right of free expression. Rather the opposite: a society is made better through a vigorous assault on intolerance, in whatever form it blossoms.

                                                                                                                                                                                    1. 3

                                                                                                                                                                                      You might separate things by context but I don’t. People are not compartments. You might think other people should separate by context and not consider that e.g X is a holocaust denier when X speaks on functional programming. Great but don’t dare demand I do the same. That would be super presumptuous. BTW you appear to believe some organized group is after you. I’m unaware of any such group.

                                                                                                                                                                                      1. 1

                                                                                                                                                                                        e.g X is a holocaust denier when X speaks on functional programming. Great but don’t dare demand I do the same.

                                                                                                                                                                                        I always challenge people who say that to list all of their political beliefs on the major topics that provoke controversy somewhere to link in their profile. We’ll just link it before any comment they make so the person replying can see the entire political spectrum of who they’re talking to plus what they’re saying in that moment as one thing. Then, like you said, they can want to interact with that person in their entirety or ignore all value they may have contributed over one thing they didn’t like. I think we should heed Richelieu’s warning instead.

                                                                                                                                                                                        “BTW you appear to believe some organized group is after you. I’m unaware of any such group.”

                                                                                                                                                                                        I just cited a few. The Yarvin thing was a small group of political activists trying to get rid of someone they didn’t like in a shady way. The Opal scandal was Ehmke’s posse pummeling that project on Github with no problems within it. Ehmke’s been in quite a few of these with an openly-stated mission to force her brand of politics (“social justice”) in every forum using her Code of Conduct as leverage. Two people involved in those actions are active in this forum with both voting for a similar CoC here. Ehmke later griped about the hate she and her white-hating buddies receive online and at Github saying it was because she’s trans rather than shoving her politics down the throats of everyone she meets. I particularly loved how they bragged about hiring “token, white people” on their team. Nobody could even joke about that if they said black. Anyway, I called Ehmke out on that submission for trying to pretend her politics had nothing to do with it. Then, some organized group was after me with the community at least being more impressive in how that was handled than most forums those kind of people hit.

                                                                                                                                                                                        (Edit to emphasive these are loosely-organized, small groups that know how to say the right things hitting people not usually expecting it or knowing how to react. They create PR nightmares with passive-aggressive sophistry, basically.)

                                                                                                                                                                                        So, yeah, there’s definitely organized groups doing the exact thing I’m worried about with some here that have done it on previous forums. They always prop up the rules they use as leverage by saying they’re just trying to stop discrimination or hate speech but (a) they get to define what is or isn’t and (b) their own actions are quite discriminatory against other groups with inconsistent enforcement. Even minority members that disagree with them get hit as happened on HN same week where I got slowbanned for quoting women disagreeing with women. Give them an inch in a new place, they’ll take a mile. I’m not giving them an inch.

                                                                                                                                                                                        Note: There’s plenty of similar stuff happening at college campuses across the states, too. A lot of folks doing this sort of thing come out of them. Hard to combat since dissenting speech is considered hate speech or otherwise put down.

                                                                                                                                                                                        1. 7

                                                                                                                                                                                          That’s not a challenge, it is an example of sealioning. I don’t have any obligation to provide you with an algorithm or to be consistent or to satisfy your sense of what’s right. My right to not read Pound’s poetry because he was a fascist or to read Celine’s early work because it is so eloquent even though he became a fascist, or to refuse to attend a conference where Yarvin speaks or to prefer the rules of Recourse center doesn’t depend on your stamp of approval. Sophie didn’t make any demands of you. On the contrary, you are demanding that she not express opinions that make you uncomfortable. Get over yourself. Go explain why Yarvin’s work is so damn great that you don’t care that he’s a smirking racist or cheer for the pseudo-science of the Google Manifesto all you want. You have the right to speak. You do not have the right to demand others approve or refrain from criticizing or even shunning you.

                                                                                                                                                                                          1. 1

                                                                                                                                                                                            I applaud your patience with this guy, who really just seems to be one of those crappy Damore-Dudes, end of story.

                                                                                                                                                                          2. -1

                                                                                                                                                                            Why would you focus on that sentence

                                                                                                                                                                            Because I didn’t have anything to say about the other ones. Do you think I’m obligated to address every sentence in an article if I want to address any of them?

                                                                                                                                                                          3. 7

                                                                                                                                                                            The fact that we almost know who she was talking about proves that they can currently discuss these ideas openly mostly fine.

                                                                                                                                                                            So these people express their opinions, and others are like “well now I don’t want to talk to them”. If you(*) want to barrage people with your unpopular opinions, people will stop wanting to hang out with you .

                                                                                                                                                                            I understand the fear of being shut out of social events like conferences. But they’re social events, so if you make yourself unliked… No amount of rulemaking will solve that, I think.

                                                                                                                                                                            The bad faith logical inverse if your argument is “everyone should be friends with everyone. No matter how much disagreement with social issues are present, someone should always be allowed to be present. This includes allowing to bully other members of the community without repurcussions ever.”

                                                                                                                                                                            It’s the bad faith interpretation, but one that some people will make.

                                                                                                                                                                            (*) Impersonal you

                                                                                                                                                                            1. 5

                                                                                                                                                                              “So these people express their opinions, and others are like “well now I don’t want to talk to them”. “

                                                                                                                                                                              These people express opinions but want anyone disagreeing to shut up. That’s been present in replies on most threads here where people did. Allowing only one side to speak while defining any disagreement as an attack or hate is political domination.

                                                                                                                                                                              “This includes allowing to bully other members of the community without repurcussions ever.””

                                                                                                                                                                              There’s the word games your side is famous for. vyodaiken did it earlier redefining a rhetorical disagreement as an attack on one side but not the rhetoric of the other side that painted everyone without qualification with negative labels. In your case, the people whose politics I oppose here regularly define any disagreement as hate speech, offensive, bullying, behaviors not to be tolerated, and so on. Not all of them do but many do. You all redefine the words from the neutral, tolerable thing they are (eg disagreement or political bickering) to a new word we all have a consensus against (eg bullying, hate speech). Then, you’re arguments for action focus on the new word with its meaning whereas what was actually going on is a lesser offense which wouldn’t be justified.

                                                                                                                                                                              So, what people supporting Sophie actually want is anyone on their side able to express their opinions without disagreement and without repurcussions ever. Whereas, anyone disagreeing with it is automatically labeled as something far worse, dismissed immediately, and for some ejected if allowed by rules. That’s always worth fighting against even if wyager’s parody was as poor a wording strategy as Sophie’s own overly-broad, only-negative portrayal of programmers.

                                                                                                                                                                              1. 3

                                                                                                                                                                                She never advocated censorship. She never said “most programmers” or “all programmers”. So your response is obviously not directed at her words but at something else.

                                                                                                                                                                                1. 2

                                                                                                                                                                                  as Sophie’s own overly-broad, only-negative portrayal of programmers.

                                                                                                                                                                                  Again, this is an opinion unsupported by the data. The examples were specific, and real. The concerns are non-trivial, and real. You’re making something about you that isn’t about you.

                                                                                                                                                                                  1. 0

                                                                                                                                                                                    That’s always worth fighting against even if wyager’s parody was as poor a wording strategy as Sophie’s own overly-broad, only-negative portrayal of programmers.

                                                                                                                                                                                    wyager is arguing that people with bad values should be allowed space in public or in others’ private spaces, which is a bad value. Majority supremacists, patriarchal maximalists, authoritarians, etc. should not be allowed safe spaces, and should never be accommodated.

                                                                                                                                                                                    From your characterizations of the author’s post and how they portrayed programmers, it’s clear you’ve either not read it and are arguing from ignorance, or you have read it and are arguing in bad faith, since the passage is clearly contextualized as part of explaining an internal struggle about how best to grow as a human being.

                                                                                                                                                                                    1. 4

                                                                                                                                                                                      From your characterizations of the author’s post and how they portrayed programmers, it’s clear you’ve either not read it and are arguing from ignorance, or you have read it and are arguing in bad faith

                                                                                                                                                                                      I’ve read it. Part of learning a field and growing as a human being is a fair assessment of what’s going on in it good and bad. Author’s concerns in that section solely focus on the bad… the worst of it actually… with the people side being like talking points out of one part of a political debate. Outside of those, I usually see a wide range of claims about programmers, jobs, effects on world, etc. Author is setting up false, strictly-negative premises in either ignorance or bad faith, maybe even unintentionally due to bias, then struggling to work from within the moral straight-jacket she put on. Totally unnecessary if starting from a more accurate worldview that includes the positive and neutral people and programs.

                                                                                                                                                                                      Note that I liked all the stuff about RC in the article. I enjoyed the article right up to that point. I just mentally deleted that part so I could just think about the rest which was most important parts. As in, more corroboration and anecdotal evidence in favor of RC visits. Then, the debate started.

                                                                                                                                                                                      1. 1

                                                                                                                                                                                        Note that I liked all the stuff about RC in the article. I enjoyed the article right up to that point. I just mentally deleted that part so I could just think about the rest which was most important parts.

                                                                                                                                                                                        I feel like you’re attempting to speak in good faith, so I’m going to do the same.

                                                                                                                                                                                        This point I’ve highlighted here, that you “just mentally deleted that part”, is an example of privilege in action*. You have never had your life or well-being threatened by people or organizations like the ones the author calls out, and you have never had to be concerned with whether or not they were active or influential in the spaces you inhabited. Other people are not so lucky, and have learned from difficult experience that they need to be aware of their surroundings and who might be in them, or else they may be injured or otherwise harmed.

                                                                                                                                                                                        Some people, especially those who come from outside the main software development industries, have heard only that IT/tech has a huge problem with sexism and toxic masculine culture. Some people are members of the marginalized groups whose well-being is directly threatened by the personal values of community leaders of some of the popular software communities, as named by the author of the post. The Recurse Center attracts a lot of people from diverse and non-technical backgrounds, and many of those people share the concerns that the author had, and would appreciate having them explicitly dispelled with regards to RC, as the author did.

                                                                                                                                                                                        So the least that those with privilege, like you and I have, can do, is not make it harder for those less fortunate to engage with the playground we have (programming) that also gives us power and status. It’s bad form to raise barriers against those with a harder lot in life than we have. These kinds of messages, from “the other side” as it were to those people who might be afraid of what they’ll find when they get there, are super important. And it’s not about you, or me, or anyone here, unless they’re part of the problem. It’s for other people like the author or who might be thinking about getting into a tech career by applying to RC, but who have heard the industry has some problems.

                                                                                                                                                                                        *) note that you have this privilege, even if you are not privileged in other ways (eg, you were born into a poor family, etc.). life is complicated.

                                                                                                                                                                                        1. 1

                                                                                                                                                                                          Since you’re being in good faith, do read this next like I’m just bluntly saying something instead of losing my shit or being loud. ;)

                                                                                                                                                                                          “You have never had your life or well-being threatened by people or organizations like the ones the author calls out, and you have never had to be concerned with whether or not they were active or influential in the spaces you inhabited. “

                                                                                                                                                                                          You’re assuming I don’t understand the concept because I’m presumably white male. My first school experience was being attacked or mocked because I was a “nerd.” All but a few people excluded us which happened varying degrees whole time in school. That included “minorities.” They all do to nerds what they claim others do to them, including violence by alpha males but not police. They might interrogate or arrest them if something happened involving computers if said nerd is known programmer or hacker.

                                                                                                                                                                                          Next, I was white in a black-run, mostly-black school where they added to mockery or exclusion the fact that we were shouted down if disagreeing with any issue (especially racial) plus randomly attacked. I doubt most of these people talking about their minority concerns have been held down on a bus while black people take turns beating them with the smirking driver not reporting it. Attempts like that were too common for me until I learned kickboxing and paranoid vigilance, esp wide turns around corners. Still had to dodge fights due to rule white people can’t be allowed to win against black people either at all or too much. Varied. My friends and brothers who went to other black schools endured the same where just bending over a water fountain could be too much vulnerability. I avoided bathroom stalls, too, after seeing what that led to.

                                                                                                                                                                                          I also got to be a man in places run by women who favored women. Essentially, whoever stayed in their good graces talking about what they talked about, being an insider, laughing at anti-male jokes, and so on had more privileges in those places. That would benefit grades, get more work hours, increase odds of promotion, even get some guys laid with those opposing sexism shamed. Unlike women on average, it’s been a while since I dealt with that but happening again in my current company. Highly-political, card-playing woman took over a specific department I was almost transfered to. After exit-interviewing her ex-employees, I blocked transfer fast before expected changes happened: she hired mostly black folks like her (esp exploitable youth), promoted only the older black women exactly like her kissing up instead of mix of races/genders who outperformed them, and politics over performance further destroyed that departments’ numbers with them saying nonsense about why. Current team is good with mix of straight/gay/lesbian, white/black, and liberal/moderate/redneck. Usually fun, interesting group with occasional in-fighting due to differences all apologize for after.

                                                                                                                                                                                          That covers structural racism and sexism which the type of politics I fight denies even exists for whites or men despite supporting data. We get no help. What about “neo-reacitonary?” Well, I am an outspoken liberal and Union man who defends decent Muslims and calls out police corruption on the side in the rural South deep in Trump, meth, and capitalist country. Interesting enough, one insult they fling at me here is probable Hillary supporter while people I argue with on liberal forums assume I’m a right-winger. Biases… Being outspoken in rural spots led me to have to negotiate with people intent on beating or killing me right there if I got too many words wrong. Rare people but non-passive outsiders will run into them. Most online “activists” on social media talk about threats which I find are folks talking shit online or with prank calls that don’t on these issues result in hospitalizations or anything almost ever. Just irritating trolling by jerks shielded by anonymity. Pales in comparison to what even a trip for groceries can cost a white person in impoverished areas in or around Memphis, TN. The First 48 was banned from there over too much stuff to cover. Some police are gang members, too, so gotta act in a way to reduce risk of their attention.

                                                                                                                                                                                          Since you admitted it, you might have privilege of growing up as or hanging with white people that didn’t face racism, sexism, or drug heads’ threats on regular basis. Lot of us in poor areas, minority-controlled areas, areas of opposing politics, isolated areas… these are some where many say they have similar experiences to me. We find it strange people “speaking for oppressed” as they might say ignore existence of probably millions of us due to skin color or gender. Especially rural whites given their high rates of both drug addiction and suicide, too. My friends and family have had to fight those.

                                                                                                                                                                                          Alright, what about someone like Sophie or I who are concerned with environments where we might be facing racists or sexists that hate our group? Well, I agree with you entirely that it can be reassuring to see someone bringing that up saying it doesn’t happen at a specific location. Going from an all-black school to a mixed school where they didn’t hate us was… it was heaven. We had fun together! Likewise, groups with fair/excellent women or being around civil Southerners who only get X-ist if explicitly talking politics. I’d definitely want to know every place or group where I could avoid groups I mentioned first in favor of others if that was best I could hope for.

                                                                                                                                                                                          That said, remember how it started was exclusively portraying the field based on worst of the worst. I don’t do that. Since we’re at that point, I’ll tell you the violent people I met were single digit percentage of each area, the negative bias was huge, there were coping mechanisms to get me past some of it, there were neutral/decent people, and some were so fair or good they inspired me to be more skilled or tough. If I talk about a field, I try not to throw them under the bus entirely or I take the counterpoint I had coming for screwing up due to emotion winning or whatever. You’ll see that in programming with C or PHP languages where I’m a strong opponent but don’t pretend they’re 100% bad even if many developers do damage. Likewise, following my politics, I’m still getting along with and exchanging tips with specific Lobsters who were strongly opposing me in prior political debates.

                                                                                                                                                                                          So, what she was doing isn’t the only way to respond. It was a weaker, overly-broad, politically-charged claim that got low-value reactions followed by a whole battle that distracted from her main points. She set her post up to fail to quite a degree. I’d have told her to be more fair and accurate since bringing politics in is putting a spotlight and a metaphorical scope on you. The negative responses left over would have to be haters or themselves prioritizing some politics. Easy to dismiss when they have little to no ground to stand on. Those of us in minority positions unfairly have to be careful about our claims since they’ll get more scrutiny and attack.

                                                                                                                                                                                          Since she probably made up her mind, I just mentally deleted it like I trained myself to do when saying something to that person won’t change their views IRL. Focus on good, shrug off perceived bad if not an intentional attack, and go on from there. It’s how we integrate and survive down here in our powder keg of diversity. Works fine, too, with most of us getting along well enough. :)

                                                                                                                                                                                          “These kinds of messages, from “the other side” as it were to those people who might be afraid of what they’ll find when they get there, are super important.”

                                                                                                                                                                                          This I disagree on if they’re aiming to affect policy or law anywhere. I’ve already seen it happen in many places with ultra-liberal universities being good examples. In those, allowing it to go too far without participation shifted power to those groups. Those groups built on their politics and power until they regularly belittle whites or males in various ways. They also try to silence disagreement on political issues saying it’s not about them. Well, if we stand to lose anything (even rep or jobs) by decree, then it is about us and we should at least weigh in. I don’t gripe about the reasonable stuff where each person has a view they can state, chance at the job, etc. I’m usually backing it.

                                                                                                                                                                                      2. 2

                                                                                                                                                                                        I’m sure all the people hit with the bad value hammer will disappear into the ether once you get your (apparently unauthoritarian) way.

                                                                                                                                                                                        1. 1

                                                                                                                                                                                          Your false equivalence, that being intolerant of intolerance and hatred, is also cowardly stated using passive aggressive style, as well as sarcasm. That is, you are acting like a coward, lest I be accused of not speaking my point forcefully enough.

                                                                                                                                                                                          1. 0

                                                                                                                                                                                            I find passive aggressive sarcasm allows for remarkable concision, but whatever. I don’t respect you and your group as the arbiters of good and bad values and all people like you have done is make me care substantially less about being labeled a patriarchal maximalist or whatever you’d like. Many people I know feel similarly. We’re not going to leave the field if you succeed in banning us from the recurse center

                                                                                                                                                                                            1. 0

                                                                                                                                                                                              Hey, have fun hanging out with Nazis, then.

                                                                                                                                                                                              1. 0

                                                                                                                                                                                                Enjoy weilding whatever power that label still has while it has any at all.

                                                                                                                                                                                                1. 2

                                                                                                                                                                                                  I don’t want to wield power. I want to not be around assholes. Are you really saying you’d rather hang out with white supremacists and gamergater pigs, than take a stand and say, “Those values are not welcome?” How is this even a question?

                                                                                                                                                                                  2. 12

                                                                                                                                                                                    Great illustration of what she wanted to avoid.

                                                                                                                                                                                    1. 8

                                                                                                                                                                                      I don’t get why people don’t want to talk about this? I don’t necessarily agree with wyager, but this type of discourse is pretty healthy IMO. It’s precisely why I prefer this site to HN, because that comment would surely have been censored by the moderators.

                                                                                                                                                                                      1. 5

                                                                                                                                                                                        It’s also completely off topic in the context, which is about using programming for good, and it’s really obnoxiously phrased to boot. Which does matter.

                                                                                                                                                                                        1. 6

                                                                                                                                                                                          In your opinion it is obnoxious, I didn’t find it so bad, but maybe that is just me.

                                                                                                                                                                                          1. 16

                                                                                                                                                                                            Obnoxious is a bit subjective, but his comment is destructive (as opposed to constructive), and that’s an objective observation.

                                                                                                                                                                                            How dare people discuss controversial and offensive ideas openly?

                                                                                                                                                                                            This is sarcastic and demeaning.

                                                                                                                                                                                            They should be forced underground so those ideas can fester without any external contradiction or moderation.

                                                                                                                                                                                            Sarcastic and a strawman.

                                                                                                                                                                                            And of course people with weird, icky politics should be censored from purely technical events.

                                                                                                                                                                                            Sarcastic and a strawman.

                                                                                                                                                                                            Who knows what kind of whacky fascist programming paradigms they might force on us otherwise?

                                                                                                                                                                                            Sarcastic and a strawman.

                                                                                                                                                                                            Here is a what a more honest, direct version of the post would be:

                                                                                                                                                                                            I think people should be allowed to express controversial and offensive ideas openly. Otherwise, they’re pushed underground where they fester, instead of being brought out into the light where they are exposed to moderation and contradiction.

                                                                                                                                                                                            But that wasn’t the comment we got, and for good reason. The more direct version wouldn’t be posted because it is immediately obvious that it isn’t related to this topic. The response to it might be

                                                                                                                                                                                            The author is just talking about what makes her uncomfortable in most programming community spaces, and why the Recurse center was so valuable for her. She isn’t making an argument or saying you need to feel the same way.

                                                                                                                                                                                            Thus it is clear that the comment, even in a less caustic form, isn’t particularly relevant. I mean, look at the originally quoted snippet in wyager’s post: it’s just a list of facts.

                                                                                                                                                                                            1. 0

                                                                                                                                                                                              “controversial and offensive” is a fluid social contract that changes with audience and context. The big problem is nobody can ever agree on what is controversial and offensive. At the same time people’s nuanced opinions are routinely caricatured as the most extreme version (in both directions, and I’m guilty of it too) then paraded on social media to people with no context.

                                                                                                                                                                                              1. 3

                                                                                                                                                                                                I try my best to avoid the words controversial and offensive. Constructive and destructive are less weighed down with baggage and relativity (though there is always room for people to mess with words). Constructive moves the conversation forward. Destructive moves it backwards.

                                                                                                                                                                                                At the same time people’s nuanced opinions are routinely caricatured as the most extreme version […] then paraded on social media.

                                                                                                                                                                                                Yeah, I’m a bit detached from it since I don’t use Twitter or Facebook, this being a primary reason. It’s a good example of destructive conversation. Nobody ever learns from it, nothing really improves.

                                                                                                                                                                                              2. -5

                                                                                                                                                                                                I’m very sorry I didn’t use the exact rhetorical style you were hoping for. In the future I will avoid using sarcasm and any other rhetorical technique that you don’t like is “destructive”.

                                                                                                                                                                                                1. 5

                                                                                                                                                                                                  God forbid you say what you mean.

                                                                                                                                                                                                  Come off it, you know it isn’t about what I happen to prefer. If you don’t know better, then you should.

                                                                                                                                                                                            2. 3

                                                                                                                                                                                              Hm, I suppose it did completely derail this thread

                                                                                                                                                                                          2. 10

                                                                                                                                                                                            I doubt it. She’s making political points in the post instead of just talking about good things at Recurse Center. She’s putting it front and center in people’s minds as they read. Anyone reading it deserves to respond to that. That automatically means a thread might get political. It’s definitely her intention.

                                                                                                                                                                                            Predictably, someone responded to it with thread turning to the tangent. Ive had enough politics for the week, though. So, just pointing out the obvious that statements like hers with accusations against a bunch of programmers or political statements will definitely get a reaction. She couldve got the points across without that but wanted it political.

                                                                                                                                                                                            1. 10

                                                                                                                                                                                              She’s not allowed to talk about politics? She makes a fairly common point: she finds the environment around programming often unpleasant or hostile and she wanted to avoid that. So she did. Many people, including myself, are put off by people who sound like that Google Memo person or worse and try to avoid it. If that makes other people uncomfortable, that’s too bad.

                                                                                                                                                                                              1. 8

                                                                                                                                                                                                wyager is allowed to counter her politics if she is going to bring it up. It’s not “what she was trying to avoid.” It’s what she or anyone else should expect saying what she did. All Im saying.

                                                                                                                                                                                                Your initial comment read like one should be able to make negative, political characterizations of programmers with no reply expected.

                                                                                                                                                                                                1. 10

                                                                                                                                                                                                  I guess for me it’s not who’s “allowed” to “counter” things or not, but is this actually a useful discussion? The comment reads to me as a wordy way of saying “I disagree with your politics”, which, ok, but what does that add? When I read the original post I could already guess some people would disagree, sure. A person doesn’t have to reply to every in-passing comment they disagree with on the internet. It wasn’t even the main point of the post!

                                                                                                                                                                                                  I’ve noticed more discussions here lately being sort of tangential sniping threads. I posted an article a few weeks ago and the entire discussion was a thread about whether people like PDFs. Ok, fine, but I posted a research paper, and the fact that you don’t like PDFs isn’t really on-topic, novel, or interesting. And then there was one last week where someone didn’t like that the title of an article ended with a question mark. I think we could use less of that kind of thing.

                                                                                                                                                                                                  1. 2

                                                                                                                                                                                                    I’ve noticed more discussions here lately being sort of tangential sniping threads. I posted an article a few weeks ago and the entire discussion was a thread about whether people like PDFs.

                                                                                                                                                                                                    I agree with this. It happens in political threads so much I voted against politics in meta. I can’t overemphasize that since, yet again, one disagreement with a political point in a submission created another situation like this. I basically just represent the dissenting side if they’re getting dogpiled or call out double standards when people pretend it’s about logic or civility rather than politics.

                                                                                                                                                                                                    I totally agree, though, about the sniping thing with me preferring some kind of rule against it if not politics in general. Maybe in addition to. It should make for a quality improvement. I’m still fine with tangents, though, so long as they’re adding insight to a discussion like the meta stuff I try to do connecting sub-fields.

                                                                                                                                                                                                  2. 7

                                                                                                                                                                                                    But he didn’t counter her politics, he attacked her. She didn’t call for suppressing anyone’s speech. She simply said she found a certain common mode of speech in tech, a mode I find offensive too, to be unpleasant and wanted to avoid it. There is no sensible way to take issue with that.

                                                                                                                                                                                                    1. 7

                                                                                                                                                                                                      She said this about programming:

                                                                                                                                                                                                      “A lot of bad things in the world have been created by programmers: software for operating drones that bomb civilians, data-mining that violates privacy, companies that “disrupt” by dropping vast amounts of capital in to a market without any intention of building a sustainable business. A lot of bad people love programming: open source thought leaders who harbor deeply racist views, authors of popular databases who discuss their sexist ideas openly, neo-reactionaries leading functional programming conferences. “

                                                                                                                                                                                                      She painted a picture of programming as if it was mostly bad things done by bad people. She painted the picture that people going to thought leaders, doing database work, or getting involved in functional programming were only going to be dealing with the worst. You’d think the profession was one of most horrible ever invented reading that stuff. Don’t ask that she properly qualify that: take her word for it without any of your own comments or reactions. She is attacking most programmers with a programmer, @wyager, reacting to that statement.

                                                                                                                                                                                                      When a man here said something similarly negative about tech industry, several of us countered him pointing out how he was vastly overstating the problem projecting the worst groups onto the average or majority in a way that was unfair to them. Like her, he exclusively considered the bad things and people in tech when judging the field instead of the vast amount of decent or productive things programmers have done many of whom were OK people. We also suggested maybe he avoid the worst if we couldn’t get rid of them since they were ultimately unnecessary to interact with being a drop in the bucket of the many people and resources out there. I don’t remember all these people being there supporting his view shocked anyone disagreed with him. This one was a woman with different set of politics. Let’s see what happened.

                                                                                                                                                                                                      So, wyager responds with a political comment that looks very motivated by emotion lacking qualifiers, consideration to others, or evidence much like Sophie’s. While Sophie’s ad hominem is allowed to stand, you imply his rhetoric shouldn’t be present at all. @jules deconstructs his aiming for purely logical or information content with some strawman which was not done to Sophie’s (or most here with similar viewpoints). @mjn said it was not adding anything new which was true about Sophie’s (or most here with similar viewpoints). These replies are exclusively given to people whose politics each person disagrees with but not people doing same things whose politics each agrees with. They’re held to a lesser standard. So, rather than it being what it appears, these comments aren’t really about addressing civility, information vs rhetorical content, and so on. You all mostly ignore those attributes for comments supporting your type of views while downvoting for opposite naturally leads to dominance of your side in those threads. As in, it’s political maneuvering by folks of one type of views against another rather than quality assurance with any consistency.

                                                                                                                                                                                                      Here’s a few where those writing thought wyager and others disagreeing were supposed to nod saying it makes sense with what happens next being too ironic and obvious:

                                                                                                                                                                                                      “How dare women suggest tech and especially programming is a potentially hostile environment one might not want to enter!” (fwg) (my emphasis added)

                                                                                                                                                                                                      “But one group actually gets to say racist, sexist, discriminatory stuff and remain in charge. The other can hardly speak on panels and post on their blogs without the whole world jumping down their throats.” (jules) (emphasis added)

                                                                                                                                                                                                      “I’m not allowed to respond about politics?” (wyager)

                                                                                                                                                                                                      “I missed the part where anyone asked for you to be deprived of that right.” (vyodaiken)

                                                                                                                                                                                                      You must have missed yourself and the others basically telling him to shut up, the downvotes adding up by a vocal minority, and wyager’s thread collapsing into oblivion where it isn’t seen unless we expand it. Quite unlike most low-info-content, political comments here that are in favor of view’s like Sophie’s not disappearing. Doesn’t look like Sophie or other women with her views would be facing the “hostile environment” with “censorship” and people “deprived” of the right to speak. That contrived scenario is instead what people that agree with her were doing to others who express themselves in a similarly low-evidence, rhetorical way like Sophie or some of their crowd, but with different views. Some of these talk about how everyone is out to get people on their side of spectrum in the same thread where they disappear their opponents’ claims. As opposed to just disagreeing or discussing. Then, they defend the low-quality, repetitive, rhetorical statements of people like Sophie on the same threads since they agree with their views.

                                                                                                                                                                                                      Gotta love politically-motivated double standards for discourse that exclusively benefit one side. Also, people talking about how folks on their side have a lot to worry about as sub-threads their opponents make sink and disappear with some clicks. That’s just too rich in reality distortion.

                                                                                                                                                                                                      1. 6

                                                                                                                                                                                                        She painted a picture of programming as if it was mostly bad things done by bad people . . . You’d think the profession was one of most horrible ever invented reading that stuff.

                                                                                                                                                                                                        This is not a reasonable conclusion to draw from the passage you quoted.

                                                                                                                                                                                                        1. 6

                                                                                                                                                                                                          You are completely inverting what is happening. Sophie Haskins wrote her opinion. A lot of people here are apparently very angry and want her to shut up. They position their arguments as if she argued for censorship which is a lie and are attempting to shout her down. If you disagree with her opinions, you could say: “My experience is that most programmers are nice” or “It doesn’t matter to me if people who have interesting technical ideas are racists” or otherwise - you know - disagree. But you are not doing that. Instead you are offended that she expressed her opinion and are inventing this whole oppressive regime that wants to suppress your opinions. There is a difference between freedom of speech and impunity. If people want to express racist opinions, for example, they don’t have a right to have other people applaud or pass over in silence or even listen to them. This is exactly the issue of the Google Memo. Its author is free to proclaim all sorts of men’s rights and racist claptrap on his own time, but he has no right to either have his coworkers refrain from reacting to it or have his employer decide that offensive speech in the workplace is ok. The toxic atmosphere of many tech forums is a reality. You should make an effort to understand what Sophie Haskins actually wrote instead of leading a Crusade for the right to be socially acceptable while denigrating others.

                                                                                                                                                                                                          1. 2

                                                                                                                                                                                                            “You are completely inverting what is happening. Sophie Haskins wrote her opinion.”

                                                                                                                                                                                                            Her opinion did not happen in isolation. You yourself mentioned that along with some other people. She is part of a group of people that are concerned with and speaking out about bad actors in tech. That’s all I’m certain about right now. Instead of being fair as you expect of me, she paints an exclusively-negative picture of tech’s contributions and the kind of people in it. As she wonders/worries aloud, what she describes is pretty far from reality of a diverse field with all kinds of people in it that mostly don’t do horrible stuff. Majority just support businesses that provide some value to consumers in the economy. Many are also volunteers in FOSS on code or communities. Many other writers whose work was submitted, including about every woman, had a more balanced view in their writing. The exceptions were those all-in on a specific brand of politics that frames tech in terms of race and gender. She writes more like them.

                                                                                                                                                                                                            “Instead you are offended”

                                                                                                                                                                                                            I’m neither offended, nor did I reply to her. I countered you, not her. I discussed other things as people brought them up. People like her trash-talking whole fields is something people do all the time in many ways. I don’t get offended so much as roll my eyes just to maintain peace of mind if nothing else. Whereas, people expecting nobody to reply to or counter a false, negative claim does concern me. That’s allowing one side to discuss but suppressing another in a place where that can define community norms. I often get involved when that happens. All I was doing initially before other claims appeared.

                                                                                                                                                                                                            Now, you’re talking about racism, denigration, etc that we shouldn’t tolerate. The first to do that was Sophie in her unfair characterization of the field. If you think that’s unfair perception, then you can test if that kind of comment is acceptable to people with opposing views in this thread by going to any forum where they’re dominant submitting this version of Sophie’s claims: a white male is concerned about about going to a workplace, conference, or CompSci courses at specific colleges because “there are some bad programmers” who “hate men” behind filesystem development, “hate whites” organizating at major colleges, and support “radical views” leading community teams of major projects. Each of these people exist in the field with groups of people backing them who will shout down or eject opponents within their area of influence. So, the person you’ll ghost-write as is a non-radical, friendly, white male who is concerned about getting into programming should they run into those people they’ve read about. They just worded it like Sophie did in their context.

                                                                                                                                                                                                            What do you think would happen? We can guess based on prior replies to claims like that. Detractors would show up in large numbers immediately citing evidence showing most people aren’t like what he worries about. They’d say he shouldn’t denigrate entire groups like women or non-whites based on behavior of a small amount. Some would say racism against whites or sexist against men are impossible based on their redefinitions of those words that make it maybe impossible. Others would say it’s unrealistic worrying to point he should know better or even distracts from “real” problems (i.e. their worries). Probably some evil, political intent since only a X-ist would say it. If he said that wasn’t his intention, they’d force him to be clear on a version they were cool with. They’d tell him he should phrase his writing more appropriately so others who are different feel safe in that space. That he must think in terms of how people might read that. The person would be dismissed as a racist, sexist idiot as they dogpiled him like many others have.

                                                                                                                                                                                                            When this woman did it, we’re supposed to assume the best with no concerns about larger implications of what she’s saying in terms of what’s in her head or perception of what she writes. Countering it on just incorrectness like we’d do anything else is now not just dismissing bad ideas or statements: it’s “toxic behavior” that needs to be stamped out. Nah, someone said some political BS on the Internet with disagreement of various quality following. Something we do for any kind of claim here. She doesn’t deserve special treatment or defense of her poor arguments/methods any more than a male does.

                                                                                                                                                                                                            To males, you usually have quick, small rebuttals of ideas you disagree with (esp on tech) where you didn’t do a full exploration of everything they might be thinking before you countered. It’s pretty clear you do a quick take on what they might mean, compare it to your own beliefs, and fire an efficient response. Most people do that most of the time I’d guess. You’re doing the opposite here. Whereas, I’m treating her equally to anyone else by protecting dissent and countering her overly-negative claims like I already did to a man who did the same thing before. Like I’ve done to a lot of people’s claims here and everywhere else. Clearly a political bias in action on other side if expecting her claims to get a level of acceptance or no critique that’s not expected of men here or for other topics. I say they all get treated the same from agreement to critiques or we don’t discuss that stuff at all.

                                                                                                                                                                                                            I’ve said enough for this part of this thread as both our views are plenty clear.

                                                                                                                                                                                                          2. 2

                                                                                                                                                                                                            She painted a picture of programming as if it was mostly bad things done by bad people. She painted the picture that people going to thought leaders, doing database work, or getting involved in functional programming were only going to be dealing with the worst. You’d think the profession was one of most horrible ever invented reading that stuff. Don’t ask that she properly qualify that: take her word for it without any of your own comments or reactions. She is attacking most programmers with a programmer,

                                                                                                                                                                                                            This conclusion is bonkers.

                                                                                                                                                                                                      2. 2

                                                                                                                                                                                                        She’s not allowed to talk about politics?

                                                                                                                                                                                                        I’m not allowed to respond about politics?

                                                                                                                                                                                                        1. 3

                                                                                                                                                                                                          I missed the part where anyone asked for you to be deprived of that right.

                                                                                                                                                                                                      3. 2

                                                                                                                                                                                                        I doubt it. She’s making political points in the post instead of just talking about good things at Recurse Center. She’s putting it front and center in people’s minds as they read.

                                                                                                                                                                                                        Those “political points” are some of the more important “good things” about the Recurse Center.

                                                                                                                                                                                                      4. -5

                                                                                                                                                                                                        is there a latin phrase for “does your mom know you’re gay?”

                                                                                                                                                                                                    1. 4

                                                                                                                                                                                                      I have no specific questions but I wanted to say how much I enjoyed the talk, and how much I look forward to the time when I can brew cask install xi and act as your alpha tester.

                                                                                                                                                                                                      1. 2

                                                                                                                                                                                                        If you’re interested in playing around with Xi on a mac, you should check out xi-mac. It doesn’t have much complex tooling but it does use CoreText which is pretty interesting, and in general is a very smooth feeling editor (compared to say, Atom).

                                                                                                                                                                                                        1. 1

                                                                                                                                                                                                          Yeah, I looked at it! But I couldn’t build it, because I only have the commandline tools, and it requires full Xcode.

                                                                                                                                                                                                        2. 1

                                                                                                                                                                                                          Pretty much I am in the same boat as Peter, both for Xi and Alacritty! Since I am no Rust dev (yet ;)) I feel like it’s too early for me to use it, but I check both projects on Github once in a while.

                                                                                                                                                                                                        1. 5

                                                                                                                                                                                                          Product placement and press release. :(

                                                                                                                                                                                                          1. 4

                                                                                                                                                                                                            This is significant news in an important sector of our industry. Your reflexive negativity is destructive to this website.

                                                                                                                                                                                                            1. 8

                                                                                                                                                                                                              I don’t think the personal attack was necessary here.

                                                                                                                                                                                                              1. 11

                                                                                                                                                                                                                This is significant news in an important sector of our industry.

                                                                                                                                                                                                                Sure, but unfortunately we have somewhat limited space and attention bandwidth here, and if we were to support posting every piece of significant news in important sectors of our industry, we’d find ourselves flooded. There is a great site with news for hackers–this sort of stuff is a great fit for that other site!

                                                                                                                                                                                                                Your reflexive negativity is destructive to this website.

                                                                                                                                                                                                                I’m sorry if that’s how this is perceived. I’ve gone to some lengths to do better in terms of negativity. Unfortunately, it’s hard to be positive when pointing out pathological community behaviors that have actively ruined and destroyed other sites.

                                                                                                                                                                                                                1. 2

                                                                                                                                                                                                                  I think you’re somewhat right– I would have posted a more technical take like this one but didn’t see any posts about it at the time. After the other one was posted, I would have deleted this one if I was able to.

                                                                                                                                                                                                            1. 5

                                                                                                                                                                                                              iPhone 6S and subsequent discovery that the performance restored to its full potential after a battery replacement.

                                                                                                                                                                                                              I was pretty skeptical until I read this bit. At least this feature is bound to the battery performance/age instead of device age as a proxy for battery life.

                                                                                                                                                                                                              These batteries are notoriously difficult to replace, though, right? How much would it cost to use a repair service to replace the battery on an iphone 6/6S?

                                                                                                                                                                                                              1. 5

                                                                                                                                                                                                                I just had my iPhone 6 battery replaced at a Genius Bar. It cost $80 and took 2 prime-time hours.

                                                                                                                                                                                                                1. 4

                                                                                                                                                                                                                  2 hours to replace a battery. A few years ago on any android device this would have taken about 5 minutes and cost $20.

                                                                                                                                                                                                                  1. 3

                                                                                                                                                                                                                    It doesn’t actually take that long. I got my battery replaced at a non-Apple shop and it was 5-10 minutes.

                                                                                                                                                                                                                    1. 2

                                                                                                                                                                                                                      And your phone has the extra overhead of clips, switches, and whatever other components are necessary to make it easy to disassemble. You may prefer that overhead and that’s fine, but I think it’s fairly obvious that Apple doesn’t, which is fine too.

                                                                                                                                                                                                                      1. 1

                                                                                                                                                                                                                        5110 etc. replaceable battery as the whole back cover.

                                                                                                                                                                                                                    2. 1

                                                                                                                                                                                                                      These batteries are notoriously difficult to replace, though, right? How much would it cost to use a repair service to replace the battery on an iphone 6/6S?

                                                                                                                                                                                                                      Batteries on iPhones aren’t that bad to replace - you remove the screen, disconnect the battery (and unglue it) and then put the new one in. The problem is IIRC, third-party batteries might not be working with the sensors, so you’ll still have the throttling.

                                                                                                                                                                                                                      1. 1

                                                                                                                                                                                                                        Is it possible to find genuine Apple battery without risking of buying clones that lack proper control electronics? I think they’re distributed weirdly to authorized companies so it’s not easy to find genuine batteries.

                                                                                                                                                                                                                    1. 1

                                                                                                                                                                                                                      Does not work for me: macOS Sierra 10.12.6 (16G29). I don’t have a root password or separate admin account. My user account is admin.

                                                                                                                                                                                                                      1. 7

                                                                                                                                                                                                                        High Sierra exclusive.