1. 4

    I’m L. Tindall and I write about Rust, Python, hacking, reverse engineering, and sometimes hardware at https://leotindall.com

    1. 3

      Apart from the right to complain under the new rules and few marginal rights — which are primarily of interest to the corrupt and the criminal, like the right to be forgotten

      This is a very dangerous path to go down. It’s possible to do things you regret and want the world to forget without being either corrupt or criminal. See, for example, the recent case of director James Gunn, who pissed off the alt right to the extent that they dug up deleted Tweets from a decade ago, for which he had already apologized and which in no way indicate his current beliefs as far as anyone can tell, in order to pressure his employer into firing him.

      1. 6

        Immediately connecting this argument to Mastodon, Pleroma, and the rest of the AP-based fediverse is largely missing the point. The use case for federation is Mastodon isn’t privacy; it’s moderation.

        Mastodon especially, and Pleroma and PeerTube as well, have or are building robust anti-harassment toolkits which integrate well with the federated model, because:

        1. Keeping nodes (and thus communities) small reduces moderator burden at any one node
        2. Threat of de-federation will force moderators to actually moderate
        3. Splinter fediverses can form for instances unwilling to provide adequate moderation (freezepeach.x instances come to mind) or with extremely strict moderation standards (awoo.space did this on purpouse).
        1. 2

          Yeah, this is a really good point.

          In my experience, both instance admins & devs like Gargron are really open about the fact that private messages aren’t really private, & try to make sure folks are basically aware that confidentiality isn’t a priority. The priority is basically always chunking moderation so that it’s doable & trying to make performing that moderation relatively straightforward – to try to grow communities that aren’t cesspools.

        1. 24

          As I read this I thought about my experiences with Diaspora and Mastodon. Pages like this one or this one (click “Get Started”, I couldn’t do a deep link because JavaScript) are, IMHO, a big part of the reason these services don’t take off. How can an average user be expected to choose from a basically random list of nodes? How can I, a reasonably “technical” person, even be expected to do so?

          So then why not host my own node? First, I don’t have time and most people I know don’t either. If I was 15 again I totally would because I had nothing better to do. I also don’t want to play tech support for a good chunk of my social network, and providing a service to someone has a tendency to make them view you as the tech support.

          Second, if I do that I’m now in charge of security for my data. As terrible as Twitter and Facebook are, they’re probably still a lot better at securing my data than I am (at the very least they probably patch their systems more often than I would). Even worse, if some non-technical person decides to bite the bullet and create a node for his/her friends, how secure do you think that’s going to be?

          Further, what are the odds that I, or whoever is maintaining the node, basically gets bored of it one day and kills the whole thing? Pretty damn high (maybe I and all my friends are assholes, though, so whatever).

          Anyway, this post really spoke to me because I’ve been trying to escape Evil companies for awhile now and “federated” just doesn’t seem to be the answer. I now believe that centralized is here to stay, but that we should start looking at the organizations that control the data instead of the technology. For example, if Facebook were an open non-profit with a charter that legally prevented certain kinds of data “sharing” and “harvesting” maybe I wouldn’t have any problem with it.

          1. 18

            How can an average user be expected to choose from a basically random list of nodes?

            How did they choose their email provider? Not be carefully weighing the technical options, surely. They chose whatever their friends or parents used, because with working federation it doesn’t matter.

            what are the odds that I, or whoever is maintaining the node, basically gets bored of it one day and kills the whole thing?

            Same as what happened with many early email providers: when they died, people switched to different ones and told their friends their new addresses.

            Really, all this argument of “what if federation isn’t a holy grail” is pointless because we all already use a federated system — email — and we know for a fact that it works for humans, despite all its flaws.

            1. 8

              How did they choose their email provider? Not be carefully weighing the technical options, surely. They chose whatever their friends or parents used, because with working federation it doesn’t matter.

              In contrast to mastodon instances - which are very alike - email providers have differentiated on the interface and guarantees they provide and market that. People react to that.

              1. 2

                In contrast to mastodon instances

                While this was largely true in the beginning, many Fediverse nodes now do market themselves based on default interface, additional features (e.g. running the GlitchSoc fork or something like it), or even using non-Mastodon software like Pleroma. I suspect this will only increase as additional implementations (Rustodon) and forks (#ForkTogether) take off and proliferate.

              2. 8

                How did they choose their email provider?

                I think federated apps like Mastodon are fundamentally different than email providers. Most email providers are sustainable businesses, they earn money with adds or paid plans or whatever and have their own emails servers and clients with specific features. Self-hosted email servers are a minority. Please tell if I wrong, but I don’t think one can easily earn money with a Mastodon instance.

                However I agree that both are federated.

                1. 1

                  i don’t know if any nodes do this but you could charge for mastodon hosting

                2. 6

                  You’re certainly not wrong, though I would argue that email, particularly as it was 20+ years ago when it went “mainstream”, is much simpler (for instance, it doesn’t require any long-term persistence or complicated access control) and therefore easier to federate successfully (in a way that humans can handle) than social networking.

                  1. 1

                    AP style social network federation also doesn’t require long-term persistence or complicated access control.

                    1. 1

                      email is social networking. are there particular social networking features you had in mind?

                      1. 3

                        Yeah, I listed them in my comment… “long-term persistence or complicated access control”. Admittedly I didn’t go into much detail. Email is a very simple social network, there isn’t much “meat” to it, particularly as it existed when it became popular.

                        1. 1

                          email has very long term persistence, much longer than something like facebook because it’s much easier to make backups of your emails than to make backups of your facebook interactions.

                          i guess i don’t know what you mean by “complicated access control.”

                          1. 1

                            Email is basically fire and forget. You download it to your computer and then you’ve got it forever (modern email does more, but also includes more of the privacy / data issues that come with other social networks). But most users can’t easily give other people on-demand access to their emails, which is the case with Facebook, Twitter, etc. Email is really meant for private communication (possibly with a large group, but still private), Facebook and company are for private, semi-private, and even public communication, and they require a user to be able to easily retroactively grant or retract permissions. Email doesn’t handle these other use-cases (this isn’t a fault of email, it doesn’t try to).

                        2. 2

                          The ability for interested parties to interact without reply all. I can post a picture of a beautiful burrito, and people can comment or ignore at their leisure, and then reply to each other. I guess there’s some preposterous email solution where I mail out a link to an ad hoc mailing list with every update and various parties subscribe, but… meh.

                          1. 2

                            something that handles a feature like that need not be email per se, but it could have a very similar design, or be built on top of email. something like what you suggested wouldn’t seem preposterous if the clients were set up to facilitate that kind of use.

                      2. 3

                        In the case of Mastodon, which instance you pick does matter. Users can make posts that are only visible to others in the same instance. If you pick the “wrong” home instance, you’ll have to make another account in another instance to see the instance-private posts there. If you’re a new Mastodon user, you might not know that one instance is good for artists and another good for musicians, etc. In any case, this is as easily solvable problem by adding descriptions and user-provided reviews to each instance.

                      3. 2

                        These ‘which instance to join’ sites are completely useless, I wish they wouldn’t exist at all.

                        1. 1

                          Second, if I do that I’m now in charge of security for my data. As terrible as Twitter and Facebook are, they’re probably still a lot better at securing my data than I am

                          Setting a price tag on your datas doesn’t secure them. There are enough scams and hoaxes on Facebook to share your information with other companies that I have to disagree with you. And since those social networks are collecing more data than necessary, it is easier to lose data.

                          1. 2

                            Facebook and Twitter also present single valuable targets and are thus more likely to be targeted. A hundred mastodon instances may be individually less secure due to the operators having fewer resources or less experience, but compromising a single server won’t get you as much.

                            1. 2

                              That’s a good point, although Wordpress vulnerabilities are still a big deal even though there are tons of small servers. The server might not be a monolith, but if the software is then it’s only slightly more work to attack N instances.

                              1. 1

                                True, although it depends whether the vulnerabilities are in the application being served or in the web server or OS serving it.

                        1. 21

                          One of the biggest pet peeves[1] I have with the software industry, and something I try hard to be conscious of in my work, is that we have a tendency to build software for our hardware, not the hardware our customers will use, and sacrifice performance for our convenience; this is the old maxim of “CPU time is cheaper than developer time”.

                          This is problematic partly because we neglect the needs of many users. We buy nice computers, peripherals, data plans, and home internet access plans because they are our tools; we need them. However, this means that something snappy and responsive for us, which we don’t question during our design and testing, could be very slow or even unusable (in the case of highly restrictive timeouts) for people with less money or simply no particular reason to buy an expensive phone or PC.

                          It is also problematic because CPU usage generates heat and uses energy. Modern CPUs are very, very good at “spinning down” via P-states and C-states [2]. I suggest you read the linked blog posts, but the very reductive TL;DR is that CPUs can use less power than their maximum TDP when executing sparse instructions (P-states) and can use even less power during periods in which one or more cores is completely idle by shutting off almost all power to those cores (C-states).

                          This means that two developer practices can introduce major energy savings: batching and optimization. Optimization is obvious - if your program requires fewer instructions to run, it will run for a shorter time and will allow the CPU to sleep in a C-state for longer.

                          Batching, collecting expensive operations to be run together, can have a similar effect. Rather than running one 50ms operation every 100ms, we could run three 50ms operations every 300ms. The duty cycle is the same (50%), but the CPU is likely to be able to enter a deeper sleep for a longer time during that inactive 150ms than during the three 50ms inactive periods, thus saving power.

                          Similar techniques can be applied with great success to memory access, storage access, and especially radio access (WiFi and cellular).

                          This is one reason I constantly rail against tools like Electron, which trade off developer efficiency (not having to learn a GUI toolkit, maintain multiple front-end codebases) for extremely terrible performance, huge memory usage, and constant CPU wakeups.

                          In short, inefficient programs produce heat and use energy, not to mention causing problems for less wealthy or less technical users of one’s software, and the maxim that “CPU time is cheaper than developer time” is less accurate than many seem to think.

                          1: In that it’s probably not that big of a deal compared to other things like Amazon exploiting warehouse workers or people writing racist predictive policing systems, but it annoys me a lot.

                          2: https://software.intel.com/en-us/articles/power-management-states-p-states-c-states-and-package-c-states

                          1. 7

                            I don’t understand why OP didn’t actually progress from the “evaluating Rust based on online documentation” stage to the “trying to implement a solution in Rust” stage. The exact issue being looked at, responding to certain OS signals, is entirely trivial due to this crate, which came up with a simple DDG search.

                            If the language has the problem that people are fighting with the language in order to become productive with it, perhaps something is wrong with the language, and not the programmers?

                            This misses the point. Rust is opinionated about how code should handle sharing access to data, and about when data should be shared rather than copied. It has been observed that people often take time to adjust to this, which is noted in the docs. I don’t see why that’s an issue.

                            1. 9

                              I don’t understand why OP didn’t actually progress from the “evaluating Rust based on online documentation” stage to the “trying to implement a solution in Rust” stage.

                              Author provided a solution in Rust…did you not read the whole article?

                              1. 3

                                He did a somewhat superficial research on what libraries or crates could be used though.

                                It is the same with ocaml/reason actually: he complains about the lack of a build system but the vast majority of packages are now using dune/jbuilder that is trivial to learn and use, well documented and extremely powerful, and he does not even mention it. He picks Containers as standard library replacement but it seems unclear to me if he has even evaluated base or core for example (even if I like containers myself). He also mention the introduction of multicore as something present even though it is nit yet part of the runtime yet

                                1. 8

                                  somewhat superficial research

                                  I think that’s pretty realistic for almost anyone in the same situation though. If I’m trying to decide between 3 or 4 different languages for a task that needed to be done yesterday, how much time do I really have to learn all the nuances of the ecosystem?

                                  So, yeah, complain that he didn’t know about X, or didn’t know about Y… But, really, if you are a member of the Z community for which X and Y is relevant, instead of complaining that people missed this well known tool, help make sure that a newcomer’s first introduction to Z informs them of X and Y. That’d be super helpful.

                                  1. 1

                                    I agree with you, but I think the three communities mentioned above are doing the best to make sure that this is the case.

                                    And about the reason/ocaml stuff, what I mention appears in most reason tutorials, almost every package and any recent blog or forum thread, and there are dozen of discussions on the current lack of multicore, so I still believe the research was superficial.

                                    This said, I wasn’t claiming that the post is bad per se, I have found it quite interesting and I agree that the current situation is not bad but still suboptimal. I was actually pleasantly surprised to see that he dod actually implement some quite non trivial example code in all those, and even contributed to pony!

                                    EDIT: updated twice to try and clarify my complaints

                                2. 2

                                  Your question confused me for quite a while, as I was unable to find this Rust solution in the article, despite multiple reloads. The page looks like this to me: https://leotindall.com/static/noRustVersion.png

                                  Eventually, I looked at it on my mobile phone where, mysteriously, there is a code snippet. I was baffled until I realized that, indeed, the only difference between my mobile device and my laptop is… I have JavaScript disabled in my browser on my laptop.

                                  So, my apologies to OP on this one. I was unfair. On the other hand, this serves as a great cautionary tale: make sure your site works without JavaScript.

                                  1. 2

                                    make sure your site works without JavaScript.

                                    Why draw the line at Javascript?

                                    1. 1

                                      Not him, so I can only answer for myself.

                                      JavaScript is turing complete, so it can do everything and can communicate results outside my control, so I want the ability to stop that.

                                      CSS is also turing complete, but AFAIK it can’t communicate outside without JavaScript, and unlike JavaScript it’s really hard to make it do something crazy like mine bitcoin (which with JavaScript is very easy to do).

                                      1. 7

                                        Now I want to write a Bitcoin miner in pure-CSS.

                                        CSS is also turing complete, but AFAIK it can’t communicate outside without JavaScript

                                        Enter: CSS Exfil and friends.

                                        1. 1

                                          Good lord.

                                      2. 1

                                        You’re right, I should revise that statement: make sure your site works without requiring me to allow you to execute arbitrary code just to read an article you wrote.

                                        To be clear, there is an obvious tradeoff here: syntax highlight on the server side is annoying. My blog solves this by having an acceptable no-JS fallback that is less pretty but is not missing content.

                                      3. 1

                                        That sure would be confusing! It looks like the author embedded a gist, rather than using Medium’s code tool. I assume you can embed code in Medium without JavaScript….

                                  1. 1

                                    Interesting slide deck, I’m excited to see what comes of these projects.

                                    I find the idea of a near-native WebAssembly kernel interesting too… Perhaps someone will build a wasm machine!

                                    1. 5

                                      I like the sound of the headline. Ironically, I couldn’t read the article, as this banner covered most of the page:

                                      This site uses cookies, tokens, and other third party scripts to recognize visitors of our sites and services, remember your settings and privacy choices, and - depending on your settings and privacy choices - enable us and some key partners to collect information about you so that we can improve our services and deliver relevant ads. By continuing to use our site or clicking Agree, you agree that CBS and our key partners may collect data and use cookies for personalized ads and other purposes, as described more fully in our privacy policy. You can change your settings at any time by clicking Manage Settings.

                                      It appears I have to visit every “key partner’s” website to opt out. I use a tracking blocker extension, but still found it humorous.

                                      1. 6

                                        That is, indeed, very funny. I didn’t notice, likely due to NoScript, but it’s unfortunate that so many tech news outlets pursue such scummy tactics while preaching about privacy.

                                      1. 1

                                        In the Rust community this is known as the “newtype” pattern.

                                        1. 5

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

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

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

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

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

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

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

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

                                          What does this even mean?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

                                          1. 4

                                            I do want to pick on one thing here:

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

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

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

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

                                            1. 5

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

                                              1. 0

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

                                                  1. 4

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

                                                    1. 2

                                                      Pinterest is quite a different environment than my employer.

                                                      Here are a few of the differences:

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

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

                                                      1. 1

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

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

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

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

                                                    2. 1

                                                      It was! Thank you.

                                                1. 3

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

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

                                                  EDIT:

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

                                                  1. 8

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

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

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

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

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

                                                    1. 4

                                                      … it’s a valid one.

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

                                                      1. 5

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

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

                                                        1. 1

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

                                                          1. 1

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

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

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

                                                            1. -1

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

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

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

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

                                                              I don’t assume your gender

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

                                                              1. 3

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

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

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

                                                                So, we get:

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

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

                                                                To hammer this home with a concrete example:

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

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

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

                                                                1. 2

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

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

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

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

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

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

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

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

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

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

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

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

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

                                                                  1. 1

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

                                                                    Yes, but I take your point.

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

                                                                    1. 3

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

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

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

                                                                      1. 1

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

                                                                        1. 4

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

                                                                          1. 1

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

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

                                                                            1. 1

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

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

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

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

                                                                              1. 2

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

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

                                                                                seems shortsighted and somewhat foolish.

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

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

                                                                                1. 1

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

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

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

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

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

                                                                          2. 1

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

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

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

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

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

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

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

                                                                          3. 2

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

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

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

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

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

                                                                2. 1

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

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

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

                                                                  1. 2

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

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

                                                                    1. 1

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

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

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

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

                                                                      1. 2

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

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

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

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

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

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

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

                                                          1. 1

                                                            The article doesn’t appear at all without Javascript :(

                                                            1. 6

                                                              There was an embedded image widget before from getty images which may have been a problem, I replaced it, can you try now? It should just be a plain vanilla wordpress post.

                                                              It’s also on Medium: https://medium.com/@markjeftovic/why-should-any-non-euro-companies-care-about-the-gdpr-68bd9907537c

                                                              1. 5

                                                                Works perfectly! Thank you so much :)

                                                            1. 5

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

                                                              This is likely an push with political intentions.

                                                              1. 1

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

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

                                                                1. 8

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

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

                                                                  1. 0

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

                                                                    1. 3

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

                                                                      1. 2

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

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

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

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

                                                                      2. 1

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

                                                                        1. -1

                                                                          Duplicate.

                                                                1. 3

                                                                  Continuing to work on several video courses for Packt Publishing, as well as trying to get the 0.3 release of my cross-platform, minimal UI toolkit (based on libui) out the door.

                                                                  1. 13

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

                                                                    1. 8

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

                                                                      1. 5

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

                                                                        It is a right to attempt to get paid.

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

                                                                      2. 4

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

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

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

                                                                        1. 2

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

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

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

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

                                                                        1. 27

                                                                          Agreed wholeheartedly with everything on this list (esp. Docker and Nix) except for the Code of Conduct line. Sadly, we’re living in a time where assholes need to be explicitly uninvited.

                                                                          1. 15

                                                                            I don’t share the concept of gender with the FreeBSD CoC. When growing up, i observed the world with my own eyes, and found that its an rather arbitrary abstraction not providing value. Should others be allowed to force me to use that concept against my conscience? I’m not rude or disrespectful towards peers (inc. actual transgender persons) because of that.

                                                                            Does that make me an asshole that needs to be explicitly uninvited?

                                                                            1. 20

                                                                              If you do the things that the FreeBSD CoC says you shouldn’t do (calling people by names they’ve explicitly said shouldn’t be used especially) then yes. Otherwise I don’t really see how it affects you?

                                                                              1. 10

                                                                                Having control over the abstractions people use also limits what those people can express. Achilles and the Tortoise is a good illustration of that.

                                                                                Forcing these abstractions over people is what violates their autonomy, which is why the FreeBSD CoC was so controversial in the first place. Its that the proponents argue that you have nothing to fear if you are “a good person”, equating lawfulness with being a good person. Which is fundamentally wrong. Yes, Edward Snowden violated laws, but i doubt he is a bad person because of that.

                                                                                1. 11

                                                                                  Can you be more practical, less philosophical, and provide an example of something you’d say, that the CoC would consider wrong? (No bad intentions or hidden agenda in this question, just generally wondering how a real life example of the issue looks like for you).

                                                                                  1. 12

                                                                                    “/me hugs nullp0tr

                                                                                    “You shouldn’t beat your children tho”

                                                                                    “I dislike that you program killer robots for the CIA”

                                                                                    1. 6

                                                                                      Thanks for the examples. I understand your frustration with it a bit more now. How would you deal with someone who’s constantly hugging or backrubbing someone else after being asked to stop? and how does your view on gender affect your empathy towards people with a different view and who get offended by someone who’s constantly using the wrong pronoun?

                                                                                      1. 11

                                                                                        Constantly harassing another user will get you warned, kicked or even banned with our without a CoC. Worst case (if the channel moderation doesn’t care) is that you need to block/set them on your ignore list.

                                                                                        I don’t have an generic attitude on that, and i didn’t have IRL conflicts on pronouns yet. The transgender persons i interacted with were respectable persons and individually got me to use their preferred pronoun without force.

                                                                                        Conflict is a component of daily life. Persons who handle conflict by getting offended and expecting others to change their mind are akin to the kid in the mall throwing a tantrum because mom wont buy the gummy bears. That’s just shitty diplomacy and wont get you anywhere. Embodying such an attitude into an community law will make your community a toxic place.

                                                                                        1. 6

                                                                                          I don’t have an generic attitude on that, and i didn’t have IRL conflicts on pronouns yet. The transgender persons i interacted with were respectable persons and individually got me to use their preferred pronoun without force.

                                                                                          So is it okay in your opinion to intentionally use the wrong pronoun if the persons in question were not respectable?

                                                                                          Constantly harassing another user will get you warned, kicked or even banned with our without a CoC. Worst case (if the channel moderation doesn’t care) is that you need to block/set them on your ignore list.

                                                                                          What’s the difference between having a written rule about what would get you banned and not having one?

                                                                                          Conflict is a component of daily life. Persons who handle conflict by getting offended and expecting others to change their mind are akin to the kid in the mall throwing a tantrum because mom wont buy the gummy bears. That’s just shitty diplomacy and wont get you anywhere. Embodying such an attitude into an community law will make your community a toxic place.

                                                                                          How would you handle conflicts created by racism, sexism, etc in a non toxic way?

                                                                                          1. 9

                                                                                            So is it okay in your opinion to intentionally use the wrong pronoun if the persons in question were not respectable?

                                                                                            If people start interacting with me by insulting me, then i definitely wont let them tell me how to call them.

                                                                                            What’s the difference between having a written rule about what would get you banned and not having one?

                                                                                            Power. Rulemakers wield extraordinary power because they are the ones who interpret a situation as lawful or unlawful. Not getting in trouble with the law is, to an extent, doing good diplomacy with the rulemakers.

                                                                                            How would you handle conflicts created by racism, sexism, etc in a non toxic way? Ideally:

                                                                                            • Tell that i did not find it appropriate, explain why
                                                                                            • Optional discussion, quite often its just an misunderstanding
                                                                                            • Avoid being antagonistic, not calling them sexist or insults (burns bridges instantly)

                                                                                            Best case is that i can base my standpoint upon their values. Using authoritative power to deploy sanctions should always be the last resort.

                                                                                            1. 3

                                                                                              If people start interacting with me by insulting me

                                                                                              What are the ways you get insulted? What if someone does it by accident?

                                                                                              If people start interacting with me by insulting me, then i definitely wont let them tell me how to call them.

                                                                                              Didn’t you just say being diplomatic is key?

                                                                                              Persons who handle conflict by getting offended…

                                                                                              I’m confused why you would revert to being a kid in the mall by not calling someone by their preferred pronoun if they insulted you. I agree with your overall idea of being diplomatic.

                                                                                              1. 2

                                                                                                Thanks for taking the time to clarify your stand.

                                                                                                It seems you’d rather have an environment of mutual respect and no single/few figures that can decide on what constitutes as wrong doing selectively, and you’d rather solve the issues the FreeBSD CoC tries to address through diplomacy and listening to all parties?

                                                                                                How would you go about implementing your ideal conflict resolution approach in real communities? (alternatively, do you have an example of a community that already does that or something similar?)

                                                                                                1. 4

                                                                                                  My preference aren’t as exotic at it seems on the first view.

                                                                                                  I dont need to implement it on my own, its already live in such an community, an local instance of the Chaos Computer Club in germany. Hacker culture tends to be decentral and skeptical of authorities in general, probably because hackers tend to be persons that value personal autonomy high. Socially adjacent communities (alot of artists here!) and companies share alot of the mindset.

                                                                                                  Edit: These communities are also the ones where most positive feedback about my CoC-critical stuff comes from. I think i hit a nerve there that already bothered quite some people

                                                                                      2. 7

                                                                                        “I think that the memo that James Damore wrote about gender diversity efforts at Google was by and large correct and that Google was wrong to fire him. He should be considered welcome to contribute in good standing to this open-source software project if he so chooses.”

                                                                                        Any code of conduct that allowed me to say that sentence is (probably) fine; any code of conduct that treated me saying that sentence as a violation is not fine.

                                                                                        1. 5

                                                                                          That is a surprisingly good litmus test. Regardless of your actual view on the Damore memo or subsequent furore, a CoC that can penalize you for expressing your view about a person or situation like that is probably overstepping the mark.

                                                                                          It’s not whether someone would agree with you that he should be welcome to contribute to a project, it’s whether you are allowed to say it. In that regard I really like it as an overreach test.

                                                                                          1. 4

                                                                                            I’ve read the whole memo. I think he gets some things wrong and disagree with him here and there, but I’m glad I read it. Overall he does have a lot of good points, and it does show a big problem with the “leftness” of silicon valley tech culture.

                                                                                            Instead of trying to get more women in STEM/tech, how about we make it more socially acceptable for everyone, both men and women, to go after things they actually like to do. How many people do you know in tech, both men and women, hate their cubeville life. So many people I know, no matter how enthusiastic they might seem at times, deep down, do not like their jobs. We’ve got Dilbert, Office Space, We the Robots and so many other things in entertainment that show how awful these jobs can be. People want to escape.

                                                                                            I feel like there is a lot of pressure on men (and I guess now more on women) to earn enough to provide for a family. We mock people with English or Philosophy degrees with their steamy piles of debt; debt the previous generation would not have had because they could pay for school by working at a grocery store. The cost of education is too high and it’s being turned into a pipeline to the industry that is in demand. The debt locks people in.

                                                                                            Want to solve income inequality? Make everyone’s income public. Every employee knows what every other employee makes and that should be a Federal mandate. Why the fuck is there a taboo over income anyway. If you know what people are worth, you know what you should be wroth. I have a hypothesis that if you could somehow measure confidence, people’s incomes would directly correlate with their confidence level and not their genders.

                                                                                            I think people are locked into a certain political ideology and the false left/right paradigm that they fail to see the real issues are not the issues they’re addressing. Those are symptoms of a much deeper cause.

                                                                                            1. 4

                                                                                              I honestly haven’t read the memo. Is it something specific in the memo that you wanna be able to express your agreement with? or do you want to be able to express any opinion regardless of what it entails?

                                                                                              1. 1

                                                                                                I’m still overall confused by James Damore’s memo. It was mostly an incoherent mess when I read it. What part was he right about in regards to Google’s gender diversity efforts?

                                                                                            2. 3

                                                                                              Ok. What do you do that violates the CoC that isn’t bad? So far all I’ve heard is weird analogies that don’t really make sense. Can you articulate your concrete concerns?

                                                                                              1. 9

                                                                                                Not fighting for moral autonomy because you agree with it is analogous to not fighting for free speech because you agree with what the state says.

                                                                                                I do enjoy my moral autonomy, i exercise it, and i expect other people to let me do it. And the FreeBSD CoC says, “not here”. So i avoid FreeBSD.

                                                                                                Like free speech, moral autonomy is an essential part of democratic society (Lawrence Kohlberg: “Moral Development”), even if not everyone needs it.

                                                                                                1. 7

                                                                                                  Not fighting for moral autonomy because you agree with it is analogous to not fighting for free speech because you agree with what the state says.

                                                                                                  This is entirely disingenuous. FreeBSD is not the state, and requiring that contributors to an open source project not express violent prejudice against other contributors in order to be allowed to contribute is not at all similar to state censorship.

                                                                                                  I do enjoy my moral autonomy, i exercise it, and i expect other people to let me do it.

                                                                                                  Thanks for clarifying. You should realize that this is literally the purpose of CoCs like this one. You value your ability to do whatever you like over the productivity and comfort of others, and that’s not the attitude FreeBSD, Rust etc want in their community, because it tends to decrease productivity and cause burnout, not to mention just being a pain in the ass to work with.

                                                                                                  So, yes, I agree with the others in this thread. Please continue to avoid FreeBSD, and if possible, me as well.

                                                                                                  1. 3

                                                                                                    FreeBSD is not the state, and requiring that contributors to an open source project not express violent prejudice against other contributors in order to be allowed to contribute is not at all similar to state censorship.

                                                                                                    Would you not avoid a project that required you to limit your freedom of speech simply on principle? Or, if you would not, do you at least understand why someone else might on principle?

                                                                                                    The only difference in this example is that you at least have a reasonable choice of simply not using/contributing to FreeBSD if you disagree.

                                                                                                    1. 5

                                                                                                      Would you not avoid a project that required you to limit your freedom of speech simply on principle?

                                                                                                      Assuming you don’t mean “freedom of speech” (as in, freedom from state censorship) and actually mean “freedom to say whatever you want, whenever you want, in whatever forum you want”, this question is so broad as to be meaningless. If you DO mean “freedom of speech”, then it is so narrow as to be irrelevant, since the policies of open source projects don’t affect your legal freedom of speech. In either case, you miss the point.

                                                                                                      Community standards exist in order to prevent, in specific spaces, behavior that will adversely affect the community that creates them. All communities have standards. Codes of Conduct formalize and write down those standards, and allow people to examine them. If a community with standards by which one did not wish to abide existed and was otherwise appealing, one might join it and be unpleasantly surprised. On the other hand, a CoC allows one to see, up front, the norms and standards of a community. This is good.

                                                                                                      Therefore, it seems like @liwakura doesn’t disagree so much with the existence of a CoC as with the community standards many of them encode - in particular, those of the Node.js and FreeBSD communities. Now comes the critical point:

                                                                                                      Rather than engage with specific problems in the CoC (e.g., “[specific rule] is open to serious abuse and provides little protection for the accused”, et cetera), liwakura focused on the “restriction of autonomy”. Yes, community standards restrict autonomy. That is the point. They prevent behavior such as the purposeful, spiteful misgendering liwakura described as a likely outcome with a negative interaction with a trans person, or purposeful ignorance (as in, the noun form of “to ignore”, not as in lack of knowledge) of social structure of gender- and sex-based oppression. By preventing those behaviors from being displayed by liwakura in FreeBSD spaces, the CoC has succeeded.

                                                                                                      In other words, the CoC says “If you’re going to be a jerk, such as in these specific ways, stay out”, and liwakura’s response was “How dare you tell me that you don’t want me to be a jerk in these specific ways! I’m going to do what you say and not participate in your community, but also whine about it on the Internet.”

                                                                                                      1. 2

                                                                                                        Community standards exist in order to prevent, in specific spaces, behavior that will adversely affect the community that creates them.

                                                                                                        From what I’ve seen, the CoC being enforced in these specific spaces does not usually happen - they are enforced outside of those spaces as well. If I say some homophobic stuff on IRC, and it gets screencapped and posted on Twitter, do I get kicked out as a member of Project XYZ that uses a CoC which specifically prohibits that sort of language? Obviously I’ve said it, and there is public record of it - but I wasn’t saying it in context of the project, or to any member of the project, and in a (relatively) private setting. If I’m punished for something like that, then I’ve lost moral autonomy outside of the project.

                                                                                                        1. 1

                                                                                                          I would consider that to be a very arguable case. Is it possible that one’s external behavior will negatively impact the project and its community? Yes. Is your objection about moral autonomy outside the project valid? Also yes.

                                                                                              2. 0

                                                                                                Ok. What do you do that violates the CoC that isn’t bad? So far all I’ve heard is weird analogies that don’t really make sense. Can you articulate your concrete concerns?

                                                                                          2. 2

                                                                                            To be fair, I fall between the OP and the parent. Aside from one pre-COC level FreeNAS, I don’t use FreeBSD (which is the example) because of the shitty CoC. I’m not opposed to a well-structured one, but FreeBSD doesn’t appear to have one. Using a product means you condone the producer’s practices. I don’t use Facebook. I’m slowly degoogling my life, and I’m getting rid of Linux. Amazon Prime will be a hard plaster to pull off, but I’m working up to that. I see FreeBSD the same way - I don’t support their CoC implementation, ergo I won’t support the product by using it.

                                                                                            The very fact that any online discussion quickly devolves into poisonous ad-hominem is reason enough for me to be put off by the presence of one, but they can serve a purpose when well implemented (if GNU had a well-designed CoC then the recent Glibc abort() debacle could’ve been handled through it for example). When they’re poorly implemented like with FreeBSD, it’s not properly serving it’s existing community.

                                                                                            1. 2

                                                                                              Why are you getting rid of linux?

                                                                                              1. 5

                                                                                                It’s a combination of factors, some of which are due to shitshows like systemd, issues with breaking compatibility (e.g. ifconfig) and the realisation after moving to docker that for the most part, I have absolutely no idea what code is running on these systems.

                                                                                                I wrote about this in another comment here: https://lobste.rs/s/yxswhm/what_are_you_self_hosting#c_8reclz

                                                                                                To be fair, a lot of this is a result of my own poor personal choices, but I now feel like I’m fighting Linux to make it do what I want predictably, and not do things I didn’t tell it to do. It’s very reminiscent of MacOS’s shift a few years back.

                                                                                                I’m going to spend some time with Alpine simply because that’s what a lot of my docker containers for public systems run on, but I’m not building new systems to run docker, no longer buying raspberry pis (thanks, binary blobs) and instead of migrating to Linux, I’m migrating a lot of systems to Open and NetBSD. I would’ve chosen FreeBSD, but the CoC debacles mean I’m less comfortable supporting it. My next NAS build may well run Illumos instead.

                                                                                          1. 11

                                                                                            overreaching Code of Conducts.

                                                                                            The author realizes that you don’t have to follow the code of conduct to use the software? Also 80% of the items on the freebsd code of conduct are illegal. the four that stick out to me that aren’t are these.

                                                                                            Comments that reinforce systemic oppression related to gender, gender identity and expression, sexual orientation, disability, mental illness, neurodiversity, physical appearance, body size, age, race, or religion.

                                                                                            Unwelcome comments regarding a person’s lifestyle choices and practices, including those related to food, health, parenting, drugs, and employment.

                                                                                            Deliberate misgendering.

                                                                                            Deliberate use of “dead” or rejected names.

                                                                                            Author basically feels that if the developers can’t get intimately involved with another developer’s personal life without consent then the author does not want to use the software. Frankly it seems like you could just create a code of conduct with the line “Thinking code of conducts are bad” and you’d filter out everyone who apparently wants to get in your grill.

                                                                                            The other rules are okayish but would rule out basically everything if applied strictly.

                                                                                            1. 11

                                                                                              Also 80% of the items on the freebsd code of conduct are illegal.

                                                                                              Code’s of conduct don’t have anything to do with law, though. An organization can block your participation in it for any reason they see fit. There are restrictions for businesses and employers, but they don’t apply to open source projects.

                                                                                              1. 17

                                                                                                Right and if you don’t agree with those reasons you don’t have to contribute or you can create your own organization. I was saying 80% of them are illegal to do as an individual. Sexual harassment? Stalking? Threatening? A lot of the CoC is basically just “We won’t enable your criminal behavior and allow you to use the organization as a way to find targets”. The 4 here are basically, “Don’t purposely be an asshole to other members, here are four ways of being an asshole that are explicitly not allowed.”. If you think Open Source means “I get to be a dick to other people and get away with it because it’s not a job” then you’re honestly doing more harm than good and should do something else with your life.

                                                                                                1. 6

                                                                                                  Oh sorry, I misunderstood what you mean by illegal. I thought you were saying much of the CoC was illegal.

                                                                                                  1. 14

                                                                                                    The 4 here are basically, “Don’t purposely be an asshole to other members, here are four ways of being an asshole that are explicitly not allowed.”.

                                                                                                    That kind of playing with definitions is one of reasons I fight broad Codes of Conduct. It’s not how they play out. Instead, those promoting or enforcing will be specific groups of people having specific, political views on everything from words to identity to societal structures, expecting the entire world to comply with those views, and punishing anyone in their immediate setting who doesn’t using whatever methods are available. Those methods range from shaming to exclusion to removing their ability to pay bills.

                                                                                                    To me, that sounds like being assholes that shove their politics down others’ throats telling them to get lost if they don’t like it. Even more so when I see plenty of people be civil without going that far in mischaracterizing or banning other groups’ means of expressing themselves. Then, a person supporting such politics shows up saying it’s just about not being an asshole. People reading that get a different impression than “no political disagreement or differences are allowed in this list of categories whose reach increases whenever we say.” I don’t expect more honesty from most promoters about the goals since subterfuge and “end justifies the means” is the norm in that group.

                                                                                                    1. 12

                                                                                                      What about it shoves politics? I would think all the points I mentioned are basically apolitical. There’s no rule against “political disagreement” within the CoC. You can be super hard line conservative and still follow these rules. I’m specifically talking about the FreeBSD CoC.

                                                                                                      1. 7

                                                                                                        It’s not really based on “politics”, but on basic respect. If you’re a conservative who is respectful of people’s preferred names and doesn’t shit all over people because of their lifestyles, you won’t have a problem. If you’re a liberal or Leftist who is super racist, anti-Semitic (hello, tankies) or constantly judges poor people overly harshly (of which there are many), you will have one.

                                                                                                        That said, if you feel that trans people asserting that we should be called by the names we choose for ourselves is somehow a political act, then yes, the purpose of the CoC is to “shove politics down your throat”.

                                                                                                        1. 1

                                                                                                          if you feel that trans people asserting that we should be called by the names we choose for ourselves is somehow a political act

                                                                                                          Isn’t it? I have no problem with calling you as you like, really.

                                                                                                          And I’d like it would be the common ground of our international culture.

                                                                                                          But it is Politics. I’d argue that it’s the best expression of politics at all, as it establish a kind environment where we can confront on.

                                                                                                          On the other hand, “keep the discourse on topic or you will be banned” should be a pretty good CoC, everywhere.

                                                                                                          Now, if we can go off-topic, and you tell on a public space (say IRC or a mailing list) you do something I consider bad, you are engadging a discourse. You can’t say “I like eating people, cannibalism improve my health” and than invoke the CoC if anyone object.

                                                                                                          People should understanding that speaking in public implies a will to listen.
                                                                                                          More exactly, speaking implies a will to challenge own opinions, putting them at stake in the conversation.

                                                                                                          If you don’t want to listen any objection, if you don’t want to change your mind, why speak in the first place?
                                                                                                          Are you doing propaganda? Marketing? If so, you are the problem, not who engage with you.

                                                                                                          Also, if we can go off-topic, and you tell you like to hurt your children, I’ll comment on that, whatever the CoC. After the denounce obviously, with all the reference I can get to find you (including your email, ip, os, whatever I can get through my technical knowledge and tools).

                                                                                                          So in general, the CoC is a political tool. It could be used for good or evil.

                                                                                                          But it doesn’t fix the lack of a democratic culture of dialoge in a community.

                                                                                                        2. 1

                                                                                                          Without a CoC you are at the mercy of the hidden political views of the project owners. Their decisions to ban start looking arbitrary. Either way, you deal with political views. Wouldn’t you prefer to know what they are before engaging? Worst would be spending a lot of your time on a project only to find out you get banned because you said something that was in disagreement with the owners of the project.

                                                                                                    2. 14

                                                                                                      They are too broad (e.g. large swaths of the population would violate it by with their daily interactions), which puts selective enforcement at charge. If its selective enforcement, then its just an power instrument with the rule makers at the power end, even if the contents of the CoC are all well-meaned and good in their intentions.

                                                                                                      Its not directly about the contents of the CoC, its about taking peoples moral autonomy.

                                                                                                      1. 12

                                                                                                        I think it’s reasonable to treat open source work within an organization with the same level of respect and dignity that you would expect from a job. You could get fired at a job for nearly every one of these. Using dead names even, if an employee asks you to stop and you don’t and they file a complaint against HR, HR might decide that you’re creating a hostile work environment for basically no reason. Most people don’t get fired for misconduct, so I’m going to actually say that you can’t possibly be right about that claim.

                                                                                                        Keep in mind that the responses are

                                                                                                        A private reprimand from the working group to the individual(s) involved.

                                                                                                        A public reprimand.

                                                                                                        An imposed vacation from FreeBSD Project controlled spaces (e.g. asking someone to “take a week off” from a mailing list or IRC).

                                                                                                        A permanent or temporary ban from some or all FreeBSD Project controlled spaces (events, meetings, mailing lists, IRC, etc.)

                                                                                                        A request for a public or private apology.

                                                                                                        A request to engage in mediation and/or an accountability plan.

                                                                                                        These aren’t that extreme. Sure you can be banned but that can happen in any OSS project where they can say “We won’t accept pull requests from dirt bags like you.”. In this case the things you can do wrong are at least actually laid out so that you know what behaviors to avoid and which ones to follow.

                                                                                                        1. 16

                                                                                                          Still, the CoC assumes moral authority over me, which is an no-go for freedom lovers and hackers like me. That people like you don’t exercise their own moral autonomy and fail to understand that others do (with different results) is the reason why CoC create unnecessary controversy and drama.

                                                                                                          And yes, the FreeBSD CoC makes me feel violated in my moral autonomy, and yes, the FreeBSD CoC embodies political views i do not share.

                                                                                                          1. 9

                                                                                                            A CoC has no moral authority and frankly morality isn’t even a real thing. It’s merely a set of rules that people who work together have agreed to follow while working together. You don’t have to work with them and you don’t have to use their software, but since you wanted to be on record disagreeing, I wanted to be on record agreeing with CoC and why I feel the way I do.

                                                                                                            1. 4

                                                                                                              Again, this is a strong pro-CoC statement. If they are successful in excluding people like you, they are working as intended.

                                                                                                              1. 10

                                                                                                                I was hoping to keep things civil. Perhaps there’s a more generous way you could phrase this?

                                                                                                                1. 5

                                                                                                                  Not really, given that the author has emphatically stated their disagreement with either the values motivating the rules, or the rules themselves. Regardless, such a person is a real risk to the health of the community, and it’s nice that there’s such an effective repellent.

                                                                                                                  1. 18

                                                                                                                    I’m honest about not being a feminist. I consider the concept of gender harmful (from an philosophical standpoint), but people like you seem seem convinced that not sharing your point on that makes me an bad person.

                                                                                                                    But thanks for determining i’m a hazard to community, it surely helped me to recognize the superiority of your standpoint.

                                                                                                                    1. 7

                                                                                                                      By “considering the concept of gender harmful” you are willfully ignorant to the way that society works and by effect you are a part of the problem creating inequality and fostering an environment where harassment and hate crimes can thrive.

                                                                                                                      You don’t get to invent your own reality and pretend this one doesn’t exist.

                                                                                                                      1. 16

                                                                                                                        Yeah also you can consider gender harmful without refusing to respect how other people would like to be referred to. For example I will now out of respect for your disdain for the concept of gender refer to you strictly in non-gendered nouns. Notice how I disagreed with your viewpoint but didn’t invalidate your identity.

                                                                                                                      2. 1

                                                                                                                        I don’t care about your honesty. I don’t care to have you recognize the superiority of my viewpoint; I know nothing I can say will sway you. I care to prevent you from contaminating the spaces I care about.

                                                                                                                        1. 22

                                                                                                                          You’ve and @liwakura have both explained well how you differ fundamentally, and I appreciate that. This comment is pulling that discussion into a dark place, please don’t continue on this theme casting someone as an unredeemable danger who must be eradicated. Lobsters is not good at being “Tinder, but for finding a nemesis”.

                                                                                                                        2. 2

                                                                                                                          You don’t fight the concept of gender by standing on the sidelines watching those that do have the concept of gender dominate half the population. Just because you believe there isn’t gender, doesn’t mean people who consider themselves women aren’t getting the short end of the stick in our society.

                                                                                                                        3. 3

                                                                                                                          thanks, that’s much clearer. :)

                                                                                                                  2. 6

                                                                                                                    You could get fired at a job for nearly every one of these.

                                                                                                                    Depends on the job. Many employers won’t punish people who have political differences. Especially in Mid-South where we’re quite a diverse bunch of liberals, conservatives, white, black, latino, etc. The rule is that we either avoid those topics entirely to keep things civil or you better be able to take the kind of discussion you were dishing out. Essentially, we recognize those claiming disagreement is “offensive” to just be silencing their opposition. They’re trying to attack and control the other person. People still try that but don’t get far.

                                                                                                                    So, in such a truly, inclusive environment, people will be saying things that bother others since there’s conflict on a deep level. My relatives and I have worked in many such places. They’ll have heated arguments sometimes. It almost always ends up “agree to disagree” with them making up for it being nice to each other later. Sometimes people figure out who each other are underneath, permanently dislike each other, work together just enough to get the job done, and avoid one another otherwise.

                                                                                                                    People almost never quit over this sort of thing. It’s also not what most gripe about. Those griping or quitting over assholes bring up people who folks in every group agree are assholes. We wouldn’t need a CoC to deal with them. Just decent managers or owners that respond to employee complaints. If managers or owners aren’t decent, then no policies or CoC’s are going to make the work environment better.

                                                                                                                    1. 13

                                                                                                                      I really don’t understand how you got this from the CoC mentioned. There is no rule in the CoC that you must conform politically. I would be very shocked to hear that the entire FreeBSD team is not conservative. The rule is merely that you treat other people with dignity. I live in the south and every single one of my workplaces would fit this CoC save for maybe the rules around transgendered folks. Frankly even when I was a deeply religious and hardline conservative I would have no trouble following these rules. I never treated anyone less than human because they had different views than me. Furthermore that “rule” you gave is a kind of CoC and CoC’s matter once the size of the organization grows. Its very easy to fall into a tyranny of structurelessness as an organization gets larger. This is because nobody can agree on what is right or wrong or what the response should be to a problem. By having a CoC you can agree as an org what actions are against the group and what a good response looks like. If you don’t have any response strategy mob mentality kicks in and things can escalate to threats and violence. After all if someone is a huge asshole and nobody is doing anything about it it would seem natural to find a way to make them stop.

                                                                                                                      Frankly there’s nothing in this CoC that has any bias against conservatives whatsoever. Nothing in the CoC says you have to be a liberal, and it specifically protects people from false claims. Your micro-CoC actually fails to protect individuals from false claims.

                                                                                                                      Publication of non-harassing private communication without consent.

                                                                                                                      Publication of non-harassing private communication with consent but in a way that intentionally misrepresents the communication (e.g., removes context that changes the meaning).

                                                                                                                      Knowingly making harmful false claims about a person.

                                                                                                                      1. 11

                                                                                                                        Depends on the job. Many employers won’t punish people who have political differences.

                                                                                                                        This is such a disingenuous frame shift of the issue that it invalidates everything else about your argument. Being respectful is not political. Enforcing consent in interactions is not political. Being gay or tolerant of same is not political. Asserting that any effort to shift culture away from the status quo is an out-of-bounds “political” act is a cowardly way to attempt to silence those that you disagree with. You are personally guilty, to an incredibly advanced degree, of every evil thing you claim to be against.

                                                                                                                        “Politics” is the process by which humans come to consensus for shared interests. Shitting on the less powerful and providing moral or intellectual cover for those that seek to do the same is not politics; it’s craven thuggery disguised as keeping things peaceful.

                                                                                                                        1. 0

                                                                                                                          Politics is whatever action affects the polis, and by extension any group of humans.

                                                                                                                          Thus being respectful is political.
                                                                                                                          Enforcing consent in interactions is political.
                                                                                                                          Being tolerant of anything is political.

                                                                                                                          In Italy we have the same kind of differences that @nickpsecurity describes, and we are used to joke about our differences a lot. And we debate harshly about many things, but usually these debates grow our relations.

                                                                                                                          As an example, I had a girlfriend that was a deeply religious Catholic when I was atheist (and rather angry at Church). And we talked a lot about religion and politics back then, without that affecting negatively the relation.

                                                                                                                          One of the best engineer I worked with voted for the worst political party we had in Italy for decades. I had the opposite view. We debated a lot. We debated so much about politics that when we had to design a framework together to under a huge pressure, we keep debating with the same style. And after 10 years in production, the framework still rocks the customers are satisfied and we can’t find anything remotely on par with it around.
                                                                                                                          Why? Because we were used to listen deeply and respectfully the other’s opinion.

                                                                                                                          1. 2

                                                                                                                            I grant that being tolerant is political, and so it follows that everything is political. Which means that my point is still relevant: it’s disingenuous to dismiss concerns about behavior as “political”, as though that made it irrelevant.

                                                                                                                            In Italy, you are allowed to have those debates because the stakes are much lower: you’re less likely to die from poverty, your livelihood is less contingent upon social approval, etc.

                                                                                                                            In the United States, it’s not like that. If you lose your job, you could die. If you are systematically excluded from high-paying industries, like digital technology, your quality of life massively suffers in comparison to those who are welcomed by that industry. All policies must be considered in the context of an entrenched and reactionary old guard that dominates all other effects. Any overt attempt to improve the lives of the marginalized is treated as a threat to the old order, and rightfully so. The stakes are literally life and death.

                                                                                                                            Mr. P. Security doesn’t work in the the industry, and largely speaks from a position of willful ignorance about these issues.

                                                                                                                            1. 0

                                                                                                                              In Italy, you are allowed to have those debates because the stakes are much lower

                                                                                                                              I do not know United States enough for a comparison, but sadly we have poverty here too. Our livelihood is not based on social approval, but it’s often strongly based on social relationships.

                                                                                                                              We just know we are all on the same boat.

                                                                                                                              So I don’t know if we are free to talk because we have lower stakes, or we have lower stakes because we are free to talk.

                                                                                                                              In any case, an international project should not be ruled according to the issues of a single country.

                                                                                                                              1. 1

                                                                                                                                In any case, an international project should not be ruled according to the issues of a single country.

                                                                                                                                I don’t understand what this is in reference to, or what it could possibly mean in terms of what kind of governance structure or details. I was pointing out that there are cultural differences that make it easier or harder for people who are forced together to have disagreements about their values, or be able to set aside those differences in order to do something together.

                                                                                                                        2. 10

                                                                                                                          The CoC is about civility, not politics. And I can’t believe you don’t know that. So what is your purpose? Are you standing up for the right to humiliate people or be rude to them? That’s a principle for you?

                                                                                                                          1. 0

                                                                                                                            Just decent managers or owners that respond to employee complaints…

                                                                                                                            Poor employees, at the mercy of their benevolent dictators.

                                                                                                                        3. 3

                                                                                                                          Wait, you believe without a CoC, owners of a project have less power? An owner of a project already has views of what kind of behavior they think is good and what they think is bad. If they don’t write it down in CoC, you are still at their mercy, but now you have to guess what the hell they are thinking.

                                                                                                                          I’m not sure how a CoC increases any power they already have. You still don’t have moral agency because we live in a society where there are owners and non-owners. There is still a power differential. If you want democratic rule, then you need to fight against ownership by paper.

                                                                                                                          1. 2

                                                                                                                            Even without a CoC the project owners selectively enforce hidden rules. I’m not sure how making the rules hidden is better than making them explicit.

                                                                                                                        1. 5

                                                                                                                          There really needs to be a federated github.

                                                                                                                          1. 46

                                                                                                                            Like… git ?

                                                                                                                            1. 21

                                                                                                                              So github but without the hub. May be on to something.

                                                                                                                              1. 7

                                                                                                                                Github is one of my favorite stories when I talk about how decentralized systems centralize.

                                                                                                                                1. 7

                                                                                                                                  But did GitHub really centralize something decentralized? Git, as a VCS is still decentralized, nearly everyone who seriously uses it has a git client on their computer, and a local repository for their projects. That part is still massively decentralized.

                                                                                                                                  GitHub as a code sharing platform, that allows issues to be raised and discussed, patches/pull requests to be submitted, etc. didn’t previously exist in a decentralized manner. There seems to have always been some central point of reference, be it website or just a mailing list. It’s not as if whole project were just based around cc’ing email to one another all the time. How would new people have gotten involved if that were the case?

                                                                                                                                  The only thing I could see as centralising is the relative amount of project hosted on GitHub, but that isn’t really a system which can be properly described as “decentralized” or “centralized”..,

                                                                                                                                  1. 4

                                                                                                                                    It’s the degree to which people are dependent on the value-adds that github provides beyond git. It’s like a store having a POS that relies on communication with a central server. Sure, they can keep records on paper do sales but it’s not their normal course, so they don’t. This comment on HN sums it up: https://news.ycombinator.com/item?id=16124575

                                                                                                                                  2. 1

                                                                                                                                    Got any other examples?

                                                                                                                                    1. 3

                                                                                                                                      Email would be a prominent one. Most people (and I can’t say I am innocent) use gmail, hotmail, yahoo mail, etc. I belive there is some general law that describes this trend in systems, which can then be applied to the analysis of different topics, for example matter gathering in around other matter in physics or money accumulating itself around organization with more money, etc.

                                                                                                                                      On the other side you have decentralized systems which didn’t really centralized significantly, for whatever reason, such as IRC, but which had a decrease in users over time, which I also find to be an interesting trend.

                                                                                                                                      1. 4

                                                                                                                                        Many businesses run their own email server and also I don’t have to sign up to gmail to send a gmail user an email but I do have to sign up to github.

                                                                                                                                        1. 1

                                                                                                                                          A tendency towards centralisation doesn’t mean that no smaller email servers exist, I’m sorry if you misunderstood me there. But on the other hand, I have heard of quite a few examples where businesses just use gmail with a custom domain, so there’s that.

                                                                                                                                          And it’s true that you don’t have to be on gmail to send an email to a hotmail server, for example, but most of the time, if just a normal person were to set up their mail server, all the major mail providers automatically view this new host as suspicious and potentially harmful, thus more probably redirecting normal messages as spam. This wouldn’t be that common, if the procentual distribution of mail servers weren’t that centralised.

                                                                                                                                      2. 1

                                                                                                                                        Did a talk using them. This cuts to the chase: https://www.youtube.com/watch?v=MgbmGQVa4wc#t=11m35s

                                                                                                                                  3. 1

                                                                                                                                    Git has a web interface?

                                                                                                                                    1. 7

                                                                                                                                      … federation is about data/communications between servers.. but seeing as you asked, yes it does: https://manpages.debian.org/stretch/git-man/gitweb.1.en.html

                                                                                                                                      1. 10

                                                                                                                                        To be fair, whjms did say “a federated github”. The main feature of GitHub is its web interface.

                                                                                                                                        1. 2

                                                                                                                                          Right, and there are literally dozens of git web interfaces. You can “federate” git and use whichever web ui you prefer.

                                                                                                                                          1. 12

                                                                                                                                            But you then miss out on issue tracking, PR tracking, stats, etc. I agree that Git itself provides a decentralized version control system. That’s the whole point. But a federated software development platform is not the same thing. I would personally be very interested to see a federated or otherwise decentralized issue tracking, PR tracking, etc platform.

                                                                                                                                            EDIT: I should point out that any existing system on par with Gitea, Gogs, GitLab, etc could add ActivityPub support and instantly solve this problem.

                                                                                                                                            1. 4

                                                                                                                                              Doesn’t give you access to all the issues, PRs and comments though.

                                                                                                                                              1. 4

                                                                                                                                                git-appraise exists. Still waiting for the equivalent for issues to come along.

                                                                                                                                                https://github.com/google/git-appraise

                                                                                                                                                1. 4

                                                                                                                                                  huh git appraise is pretty cool.

                                                                                                                                                  I was going to suggest some kind of activitypub/ostatus system for comments. A bit like peertube does to manage comments. But a comment and issue system that is contained within the history of the project would be really interesting. Though it would make git repos take a lot more space for certain projects no?

                                                                                                                                                  1. 3

                                                                                                                                                    I’d assume that those could potentially be compressed but yes. It’s definitely not ideal. https://www.fossil-scm.org/index.html/doc/tip/www/index.wiki

                                                                                                                                                    ^^^^ Unless I’m mistaken, Fossil also tracks that kind of stuff internally. I really like the idea that issues, PRs, and documentation could live in the same place, mostly on account of being able to “go back in time”, and see when you go back to a given version, what issues were open. Sounds useful.

                                                                                                                                                2. 3

                                                                                                                                                  BugsEverywhere (https://gitlab.com/bugseverywhere/bugseverywhere), git-issues (https://github.com/duplys/git-issues), sit (https://github.com/sit-it/sit) all embed issues directly in the git repo.

                                                                                                                                                  Don’t blame the tool because you chose a service that relies on vendor lock-in.

                                                                                                                                                  1. 4

                                                                                                                                                    If I recall correctly the problem here is that to create an issue you need write access to the git repo.

                                                                                                                                                    Having issues separated out of the repositories can make it easier, if the web interface can federate between services, that’s even better. Similar to Mastodon.

                                                                                                                                                    1. 1

                                                                                                                                                      There’s nothing to say that a web interface couldnt provide the ability for others to submit issues.

                                                                                                                                                3. 3

                                                                                                                                                  Right, and there are literally dozens of git web interfaces.

                                                                                                                                                  Literally dozens of git web interfaces the majority of developers either don’t know or care about. The developers do use GitHub for various reasons. voronoipotato and LeoLamda saying a “federated Github” means the alternative needs to look like or work with Github well enough that those using Github, but ignoring other stuff you mentioned, will switch over to it. I’m not sure what that would take or if it’s even legal far as copying appearance goes. It does sound more practical goal than telling those web developers that there’s piles of git web interfaces out there.

                                                                                                                                                  1. 1

                                                                                                                                                    Im going to respond to two points in reverse order, deliberately:

                                                                                                                                                    or care about.

                                                                                                                                                    Well, clearly the person I replied to does care about a git web interface that isn’t reliant on GitHub.com. Otherwise, why would they have replied?

                                                                                                                                                    Literally dozens of git web interfaces the majority of developers either don’t know [about]

                                                                                                                                                    Given the above - The official git project’s wiki has a whole page dedicated to tools that work with git, including web interfaces. That wiki page is result 5 in google and result 3 in duckduckgo when searching for “git web interface”. If a developer wants a git web interface, and can’t find that information for themselves, nothing you, or I or a magic genie does will help them.

                                                                                                                                            2. 5

                                                                                                                                              It’s not built-in, but Gogs and Gitea are both pretty nice.

                                                                                                                                              1. 2

                                                                                                                                                Hard agree. I run a personal Gogs site and it’s awesome.

                                                                                                                                          2. 7

                                                                                                                                            It would be enough if people stopped putting all their stuff on github.

                                                                                                                                            1. 8

                                                                                                                                              It won’t happen for a while due to network effects. They made it easy to get benefits of a DVCS without directly dealing with one. Being a web app, it can be used on any device. Being free, that naturally pulls people in. There’s also lots of write-ups on using it or solving problems that are a Google away due to its popularity. Any of these can be copied and improved on. The remaining problem is huge amount of code already there.

                                                                                                                                              The next solution won’t be able to copy that since it’s a rare event in general. Like SourceForge and Github did, it will have to create a compelling reason for massive amounts of people to move their code into it while intentionally sacrificing the benefits of their code being on Github specifically. I can’t begin to guess what that would take. I think those wanting no dependency on Github or alternatives will be targeting a niche market. It can still be a good one, though.

                                                                                                                                              1. 2

                                                                                                                                                I hear the ‘network effects’ story every time, but we are not mindless automatons who have to use github because other people are doing it. I’m hosting the code for my open source projects on a self-hosted gitlab server and i’m getting contributions from other people without problems. Maybe it would be more if the code was on github, but being popular isn’t the most important thing for everyone.

                                                                                                                                                1. 1

                                                                                                                                                  Just look at sourceforge, if everyone had to set up their own CVS/SVN server back in the say do you think all those projects would have made it onto the internet?

                                                                                                                                                  Now we have a similar situation with got, if GitHub/Bitbucket/etc. didn’t exist I’m sure most people would have stuck with sourceforge (Or not bothered if they had to self host).

                                                                                                                                                  You can also look at Googlecode to see the problem with not reaching critical mass (IMHO). There were some high profile projects there, but then I’m sure execs said, why are we bothering to host 1% (A guess) of what is on GitHub?

                                                                                                                                                  1. 1

                                                                                                                                                    ‘Network effects’ doesn’t mean you’re mindless automatons. It means people are likely to jump on bandwagons. It also means that making it easy to connect people together, esp removing friction, makes more of them do stuff together. The massive success of Github vs other interfaces argues my point for me.

                                                                                                                                                    “Maybe it would be more if the code was on github”

                                                                                                                                                    That’s what I telling you rephrased. Also, expanded to the average project as some will get contributions, some won’t, etc.

                                                                                                                                                2. 4

                                                                                                                                                  Heck even I won’t move off of it until there is a superior alternative, sorry.

                                                                                                                                                3. 3

                                                                                                                                                  I thought about a project along these lines a while ago. Something along the lines of cgit, which could offer a more or less clean and consistent UI, and a easy to set up backend, making federation viable in the first place. Ideally, it wouldn’t even need accounts, instead Email+GPG could be used, for example by including an external mailing list into the repo, with a few addition markup features, such as internal linking and code highlighting. This “web app” would then effectively only serve as an aggregator of external information, onto one site, making it even easier to federate the entire structure, since the data wouldn’t even be necessarily bound to one server! If one were to be really evil, one could also use GitHub as a backend…

                                                                                                                                                  I thought about all of this for a while, but the big downsides from my perspective seemed to be a lack of reliability on servers (which is sadly something we have come to expect with tools such as NPM and Go’s packaging), asynchronous updates could mess stuff up, unless there were to be a central reference repo per project, and the social element in social coding could be hard to achieve. Think of stars, followings, likes, fork overviews, etc. these are all factors which help projects and devs display their reputation, for better or for worse.

                                                                                                                                                  Personally, I’m a bit sceptical that something along these lines would manage to have a real attractiveness, at least for now.

                                                                                                                                                  1. 3

                                                                                                                                                    Lacks a web interface, but there are efforts to use ipfs for a storage backend.

                                                                                                                                                    https://github.com/cryptix/git-remote-ipfs

                                                                                                                                                    1. 3

                                                                                                                                                      I think there have been proposals for gitlab and gitea/gogs to implement federated pull request. I would certainly love it since I stuff most of my project into my personal gitea instance anyway. Github is merely a code mirror where people happen to be able to file issues.

                                                                                                                                                      1. 3

                                                                                                                                                        I think this would honestly get the work done. Federated pull request, federated issue discussion

                                                                                                                                                        1. 1

                                                                                                                                                          I’m personally a bit torn if a federated github-like should handle it like a fork, ie, if somebody opens an issue they do it on their instance and you get a small notification and you can follow the issue in your own repo

                                                                                                                                                          Or if it should merely allow people to use my instance to file issues directly there like with OAuth or OpenID Connect. Probably something we’ll have to figure out in the process.

                                                                                                                                                          1. 2

                                                                                                                                                            just make it work like gnusocial/mastodon. username@server.com posted an issue on your repo. You can block server, have a whitelist, or let anyone in the world is your oyster.

                                                                                                                                                        2. 1

                                                                                                                                                          Would be nice if I could use my gitlab.com account to make MRs on other gitlab servers.

                                                                                                                                                        3. 1

                                                                                                                                                          I always thought it would be neat to try to implement this via upspin since it already provides identity, permissions, and a global (secure) namespace. Basically, my handwavy thoughts are: design what your “federated github” repo looks like in terms of files. This becomes the API or contract for federation. Maybe certain files are really not files but essentially RPCs and this is implemented by a custom upspin server. You have an issue directory, your actually git directory, and whatever else you feel is important for managing a software project on git represented in a file tree. Now create a local stateless web interface that anyone can fire up (assuming you have an upspin user) and now you can browse the global upspin filesystem and interact with repos ,make pull requests, and file issues.

                                                                                                                                                          I was thinking that centralized versions of this could exist like github for usability for most users. In this case users’ private keys are actually managed by the github like service itself as a base case to achieve equal usability for the masses. The main difference is that the github like service exports all the important information via upspin for others to interact with via their own clients.

                                                                                                                                                        1. 21

                                                                                                                                                          Is anyone else bothered by the use of the term ricing? As far as I know it is co-opting the automotive term which has racist origins.

                                                                                                                                                          1. 21

                                                                                                                                                            If somebody brings up ricing and linux, I have to think of this old site making fun of gentoo users w/o a clue:

                                                                                                                                                            https://web.archive.org/web/20080830031318/http://funroll-loops.info/

                                                                                                                                                            1. 15

                                                                                                                                                              This thread got pretty ugly. It started out good talking about the history of the term and what it means to people but has sunk into personal attacks. If someone would like to cite academic sources on the history of the term in tech or racing, go ahead, but otherwise we’ve stopped adding new information and this thread is done. Please don’t post further comments.

                                                                                                                                                              I’m also going to delete the comments with personal attacks. Please don’t do this. If you’re right, being mean doesn’t make you more right. Nobody has ever taken incoming vitriol and abuse are a sign that someone must really be worth listening to and seriously considering, and they’re not appropriate here.

                                                                                                                                                              Tagging so everyone in the thread sees this: @fimad @fs111 @voronoipotato @djsumdog @mjtorn @nebkor @brendes @btaitelb @dz @vhodges @leolambda

                                                                                                                                                              1. 5

                                                                                                                                                                Sorry, I missed this because I was writing the post and went out to the food truck. honest mistake, wasn’t trying to be a butt. I got a little reactionary there, it won’t happen again.

                                                                                                                                                                1. 3

                                                                                                                                                                  Nobody has ever taken incoming vitriol and abuse are a sign that someone must really be worth listening to and seriously considering, and they’re not appropriate here.

                                                                                                                                                                  Let’s etch that in bronze and hang that over every discussion area on the Internet, please.

                                                                                                                                                                  1. 2

                                                                                                                                                                    Exactly.

                                                                                                                                                                2. 13

                                                                                                                                                                  Hmm, I didn’t know about that at all. Would be nice to have a better term. Customization seems too general.

                                                                                                                                                                  1. 10

                                                                                                                                                                    “Tweaking” seems to capture it pretty well.

                                                                                                                                                                    1. 9

                                                                                                                                                                      I considered that, but “tweaking” also means being high on stimulants, which is just common enough in the hacker community that I think it would be confusing.

                                                                                                                                                                      Perhaps modding, but that’s already a massively overloaded term: game modding, hardware modding, etc.

                                                                                                                                                                      I’m inclined to use “dotting”, as in “dotfile”, but also with the connotation of meticulousness (as in “dotting i’s and crossing t’s”. Its alternate definitions are pretty tame, as well.

                                                                                                                                                                      1. 1

                                                                                                                                                                        Dotting sounds what a dotard does, but I guess that’d be “doting”.

                                                                                                                                                                        1. 1

                                                                                                                                                                          Yeah, good point. I like “styling”.

                                                                                                                                                                    2. 7

                                                                                                                                                                      tuning, maybe?

                                                                                                                                                                      1. 1

                                                                                                                                                                        That looks more apropriate: https://en.wikipedia.org/wiki/Tuning

                                                                                                                                                                        Fine tuning a computer environment” could be your job. “Like car tuning but for software” would be the hobby.

                                                                                                                                                                      2. 5

                                                                                                                                                                        from other communities: Hot Rodding (cars - more Chip Foose than useless spoilers on the back) and Modding (computer cases)

                                                                                                                                                                        1. 3

                                                                                                                                                                          Given that there’s a lot of style at work, maybe “peacocking”, spiffing up”, “turning out”, something riffing on fashion.

                                                                                                                                                                          1. 2

                                                                                                                                                                            It’s like styling, but like even more so. Stylizing?

                                                                                                                                                                            1. 4

                                                                                                                                                                              Styling is good, yeah. “Stylize” actually means “to depict or treat in a mannered and nonrealistic style”, so I don’t think it’s really applicable here.

                                                                                                                                                                          2. 3

                                                                                                                                                                            I had never seen it used in the Linux desktop. The term ricer may not have the same racist meanings as before but two things are common about ricers in my area:

                                                                                                                                                                            1. mostly second hand Japanese cars because they are cheap but American pickup trucks are also part of it
                                                                                                                                                                            2. many ricers seem to be of Hispanic ethnicity so it’s no longer a racist slang about Asians

                                                                                                                                                                            My personal view is that, even when a word has no racist origins, if there is a specific ethnicity that it applies to, it will quickly become a racist word anyway. Luckily there are more and more white dudes who bought their first car and became a ricer 🍚

                                                                                                                                                                            1. 5

                                                                                                                                                                              I had never seen it used in the Linux desktop.

                                                                                                                                                                              My perspective is exactly the opposite – I have never heard this term in connection to cars, just with *nix customization, especially in and around the Linux/Unix community. In over 4 years I’ve never heard anyone use it in any other context, nor was I in any sense aware that it had this other meaning. And I would suppose that most people, especially non-car enthusiasts like me would have probably never found out, nor use the term with this connotation.

                                                                                                                                                                              All in all, it seems like a fantastic starting point for a horrible confusion…

                                                                                                                                                                            2. 5

                                                                                                                                                                              Yes, and yes. :( . It’s unfortunate when a racist term becomes so normalized that it’s just vernacular. Then the people who want to use it xenophobically basically get to do so and nobody speaks up because it’s just a word everyone uses. The term in guns is “Tacticool”. Perhaps there’s a good word for this that is less regressive and a little more general.

                                                                                                                                                                              1. 5

                                                                                                                                                                                It doesn’t have racist origins; or at least not in the context we used it in back when I was in various SCCA and use to race. A ricer is just someone who adds all kinds of shit to their car. Each sticker adds 2hp. The K&N air filter adds 10hp. Big cardboard wing adds 90hp. Fart can exhaust adds 30hp. That carbon fibre hood? 120hp right there.

                                                                                                                                                                                Most ricers were white. They were just kids who didn’t know dick about cars and pretended they did. They’d fill the parking lot and hang out in their riced out Hondas while the rest of us raced. I mean if you stretch, some people might trace ricer back to the term wigger referring to white people enacting black culture.

                                                                                                                                                                                Ricers had nothing to do with race and more to do with shitty car mods like these: https://www.reddit.com/r/Shitty_Car_Mods/

                                                                                                                                                                                1. 12

                                                                                                                                                                                  Ricer aka rice burner kinda does though because it was about japanese cars. Yes this is where the term comes from and no I’m not shitting you.

                                                                                                                                                                                  Rice burner is a pejorative, used as early as the 1960s, originally describing Japanese motorcycles, then later applied to Japanese cars, and eventually to Asian-made motorcycles and automobiles in general. The term most often refers to vehicles manufactured in East Asia, where rice is a staple food.

                                                                                                                                                                                  I’ll be honest terms like wigger are also regressive. I’m not telling you how to speak or trying to say this is what you meant by it. Obviously you can use a word with racist or ethnocentric origins non-racistly. Just keep in mind that not everyone who uses it is using it the way you’re using it. Also keep in mind that someone who sees you using it might think you have it out for a specific ethnicity until they get to know you a bit better.

                                                                                                                                                                                  Frankly the title evokes a “Yikes” from me but in a “Yikes they don’t even know how bad that sounds” way. Like people who know you will probably go “Oh but that’s djsumdog, he doesn’t mean it in a racist way”, but wow it is just a really bad idea to lead with a racially loaded term in your article title to the general public.

                                                                                                                                                                                  1. [Comment removed by author]

                                                                                                                                                                                    1. [Comment removed by moderator pushcx: https://lobste.rs/s/es3acm/how_i3_vim_ricing_enhance_my_developer#c_u525ta]

                                                                                                                                                                                      1. [Comment removed by author]

                                                                                                                                                                                        1. 0

                                                                                                                                                                                          Someone can be unaware of how racist language affects thoughts and opinions without “being a racist”. Being said yea just because you heard the term from a person of the affected group does not mean it’s cool to say. Case in point if you dropped the n-word because you saw a black person doing it you’d probably get some frowns.

                                                                                                                                                                                          1. [Comment removed by author]

                                                                                                                                                                                            1. 11

                                                                                                                                                                                              I think that’s a really good definition of a microaggression, a term that people don’t knowingly use offensively, but which has offensive origins and still conveys that offensiveness to some.

                                                                                                                                                                                              Growing up, I’d use the term jip [sic] all the time as a synonym for screwing someone over in a deal. I actually thought it was less offensive to say than to say screw. Then I learned that the word has racist origins about stereotypes for Gypsies, so I went through the process that I think a lot of us go through. At first I was defensive because there was a discongruity in my reality between how I saw myself and how others might see me, so I rationalized that the word didn’t really mean that any more. And if someone happened to be offended by it, they were probably just being overly sensitive and should get a thicker skin.

                                                                                                                                                                                              But over time, I realized I had the choice when using words, and that it’s not up to me to dictate how others should feel. So I slowly started correcting myself, because when given the choice, I’d rather not use words that offend a group of people, especially when I’m not part of that group.

                                                                                                                                                                                              1. 3

                                                                                                                                                                                                I didn’t think you meant that, sorry I was responding to the intense reaction to your post. Yeah I do think that’s the case. The root problem is like when you use a word that has racist origins, and a racist takes it as like “Ah they also hate the japs” validation for their racist attitudes. Which is bad. It also sucks because words that are that way primarily the racists, and the marginalized know what it means because they grew up in an environment where the intention behind the origin was more clear.

                                                                                                                                                                                                I hope you understand I do not agree with painting you as a bad guy simply because you grew up in an area where a word was the norm and you didn’t see harm with it. Doesn’t mean there isn’t harm? It just means it was the norm and you were used to it and it would be exceptional for you to escape that norm, and not the default expectation. At least you’re not shutting down the discussion.

                                                                                                                                                                                                Suffice to say, normal people have likely forgotten it, racists remember these things with a death grip and will use it to dehumanize people as much as physically possible.

                                                                                                                                                                                        2. 3

                                                                                                                                                                                          You quoted it yourself: it’s pejorative, not racist. The difference is significant, yet the whole point is moot, because so few people are neurotic about political correctness in slang etymology[citation needed]

                                                                                                                                                                                          1. 5

                                                                                                                                                                                            Things can be both pejorative and racist? Many racist things are pejorative. The term is racist because it uses East Asian products as a way to describe inferiority. To put in in a more personal way it would be like me saying “oh that’s snake code” as a pejorative for python programmers.It tries to illogically assert that since you’ve seen a python programmer make bad code, that a python programmer can never write good code. This is of course is horseshit, and is bigoted against python programmers. I’m merely trying to dislodge bullshit like that from the public consciousness.

                                                                                                                                                                                            1. [Comment removed by moderator pushcx: https://lobste.rs/s/es3acm/how_i3_vim_ricing_enhance_my_developer#c_u525ta]

                                                                                                                                                                                              1. [Comment removed by moderator pushcx: https://lobste.rs/s/es3acm/how_i3_vim_ricing_enhance_my_developer#c_u525ta]

                                                                                                                                                                                                1. [Comment removed by moderator pushcx: https://lobste.rs/s/es3acm/how_i3_vim_ricing_enhance_my_developer#c_u525ta]

                                                                                                                                                                                                  1. [Comment removed by moderator pushcx: https://lobste.rs/s/es3acm/how_i3_vim_ricing_enhance_my_developer#c_u525ta]

                                                                                                                                                                                                    1. [Comment removed by moderator pushcx: https://lobste.rs/s/es3acm/how_i3_vim_ricing_enhance_my_developer#c_u525ta]

                                                                                                                                                                                                      1. 1

                                                                                                                                                                                                        There’s nothing wrong with LeoLambda’s article, I liked it too. The title gave me a yikes, but that doesn’t mean that they’re a bad person it probably just means they either didn’t know about the origin of the word, or they knew about it but thought it wasn’t used that way anymore. I also like talking about culture, it doesn’t mean I’m virtue signaling. Though frankly I think you are virtue signalling to the pc-panic crew. You basically pooped your pants when you read the word racist like christ himself was being crucified. Exploring alternative words that are less racist isn’t virtue signalling it’s called not being actively hostile to an entire demographic for no reason.

                                                                                                                                                                                                      2. -1

                                                                                                                                                                                                        Potentially ironically, “hysterical” has sexist origins.

                                                                                                                                                                                                        This whole conversation is a little frustrating to me. I hope @mjtorn and @brendes are just reading past what’s being said to them, due to defensiveness and confirmation bias. The responses to their comments aren’t being worded to tiptoe around their feelings, which is also pretty understandable—these conversations are an emotional investment, and there are lots of aggressive racists out there who will throw that investment back in your face. I don’t really have a solution, but I think the situation is regrettable. The path to realization that subtle racism is everywhere always seems to involve an epiphany after the fact, not careful reading and understanding of the arguments.

                                                                                                                                                                                          2. 7

                                                                                                                                                                                            From my experience it is probably racist. Case in point: In Edmonton they call riced cars ‘Nip’d up’ (racial slang for Japanese) since it would be mostly Asian drivers doing the mods.

                                                                                                                                                                                        1. 5

                                                                                                                                                                                          The main thing one has to watch out for in my opinion is to not get caught up in excessive ricing and over-customisation. It’s kind of the same thing like distro-hopping, which I have come to interpret as projecting a lack of satisfaction with ones computer experience onto presumably “wrong” consumer user choices. I used to be stuck with both, until I managed to get a sane setup, and but some thought into what I actually want and need, instead of focusing on aesthetics. I mean, it’s a worthwhile game to play from time to time, but at least in my experience it does become stressful after a while.

                                                                                                                                                                                          Part of the reason for this could be that, remembering that the major ricing community (around /r/unixporn, YouTube, and /g/, especially on the latter) constantly see spam threads like “KERNEL BUG FOUND. Linux users on suicide watch!!!!” or “When did you grow up and stop using Linux?”, where one could feel the need to legitimize ones choices (especially in a society where who you are is the same question as what do you choose). I’m not saying that everyone is subconsciously motivated by these kinds of things, all I know is that I see that factor playing a role when I was into these kinds of things, and maybe it might be true for others too.

                                                                                                                                                                                          1. 3

                                                                                                                                                                                            IDK. I’m very happy with my choice of distro, I just like a bit of variety in color scheme.

                                                                                                                                                                                            1. 1

                                                                                                                                                                                              I used distro hopping as an alternative example of what can be a compulsive feeling to chance and change all the time, ricing (switching WMs, shells, themes) as another one. Again, I’m not saying that this what I say true for everyone, but that I it is a phenomenon, which I believe exists.

                                                                                                                                                                                              And an another question: Aren’t transparent terminals with detail-rich backgrounds kind of hard to work with, or at least tiresome? (Recently, for example, I’ve stopped using images for wallpapers all together, and instead just set a nice graytone with xsetroot).

                                                                                                                                                                                          1. 3

                                                                                                                                                                                            Did you try to apply terminal padding?

                                                                                                                                                                                            Like this: https://i.redd.it/rh3n3dxby8fy.png

                                                                                                                                                                                            Every terminal has its own setting how to do this kind of padding, i.e. for gnome-terminal or xfce4-terminal you can set it like this:

                                                                                                                                                                                            [~/.config/gtk-3.0]$ cat gtk.css 
                                                                                                                                                                                            VteTerminal, vte-terminal {
                                                                                                                                                                                                padding: 20px;
                                                                                                                                                                                            }
                                                                                                                                                                                            
                                                                                                                                                                                            1. 1

                                                                                                                                                                                              That screenshot looks so… zen.

                                                                                                                                                                                              1. 1

                                                                                                                                                                                                What does this do?

                                                                                                                                                                                                1. 2

                                                                                                                                                                                                  Not OP, but padding is spacing inside the object. So the text gets pushed 20px away from the border.