Threads for bitrot

  1. 15

    Oh yeah, totally, the problem with the internet is not enough “autonomy”. As opposed to having our personas traded by data brokers, brains melted by social media, behaviors modified by targeted advertising and influencer culture.

    These techno-libertarian 80s MIT hacker derivative “autonomy” and “freedom” arguments have been such a massive distraction from a material analysis of how power actually uses technology to exploit people for profit. The spectacle of the individual atomizes people and alienates them from common cause.

    But if only we were to perfect our APIs and network protocols. Then we would not be exploited by internet companies. We would have autonomy 🙄

    1. 3

      I would like to subscribe to your newsletter

      1. 1

        I mean, we already have “autonomy” just layer your protocol on IP and away with you beasties!

      1. 121

        I used to give the same advice, but I completely changed my opinion over the past 10 years or so. I eventually put in the time and learned shell scripting. These days my recommendation is:

        1. Learn to use the shell. It’s a capable language that can take you very far.
        2. Use ShellCheck to automatically take care of most of the issues outlined in the article.

        I really don’t want to figure out every project’s nodejs/python/ruby/make/procfile abomination of a runner script anymore. Just like wielding regular expressions, knowing shell scripting is a fundamental skill that keeps paying dividends over my entire career.

        1. 60

          Bingo.

          My advice is:

          • Always use #!/usr/bin/env bash at the beginning of your scripts (change if you need something else, don’t rely on a particular path to bash though).
          • Always add set -eou pipefail after that.
          • Always run shellcheck.
          • Always run shfmt.
          • Always pay attention to what version of bash you need to support, and don’t go crazy with “new” features unless you can get teammates to upgrade (this is particularly annoying because Apple ships an older version of bash without things like associative arrays).
          • Always use the local storage qualifier when declaring variables in a function.
          • As much as possible, declare things in functions and then at the end of your script kick them all off.
          • Don’t use bash for heavy-duty hierarchical data munging…at that point consider switching languages.
          • Don’t assume that a bashism is more-broadly acceptable. If you need to support vanilla sh, then do the work.

          While some people like the author will cry and piss and moan about how hard bash is to write, it’s really not that bad if you take those steps (which to be fair I wish were more common knowledge).

          To the point some folks here have already raised, I’d be okay giving up shell scripting. Unfortunately, in order to do so, a replacement would:

          • Have to have relatively reasonable syntax
          • Be easily available across all nix-likes
          • Be guaranteed to run without additional bullshit (installing deps, configuring stuff, phoning home)
          • Be usable with only a single file
          • Be optimized for the use case of bodging together other programs and system commands with conditional logic and first-class support for command-line arguments, file descriptors, signals, exit codes, and other nixisms.
          • Be free
          • Don’t have long compile times

          There are basically no programming languages that meet those criteria other than the existing shell languages.

          Shell scripting is not the best tool for any given job, but across every job it’ll let you make progress.

          (Also, it’s kinda rich having a Python developer tell us to abandon usage of a tool that has been steadily providing the same, albeit imperfect, level of service for decades. The 2 to 3 switch is still a garbage fire in some places, and Python is probably the best single justification for docker that exists.)

          1. 26

            While some people like the author will cry and piss and moan about how hard bash is to write, it’s really not that bad if you take those steps (which to be fair I wish were more common knowledge).

            I think “nine steps” including “always use two third-party tools” and “don’t use any QoL features like associative arrays” does, in fact, make bash hard to write. Maybe Itamar isn’t just “cry and piss and moan”, but actually has experience with bash and still think it has problems?

            1. 2

              To use any language effectively there are some bits of tribal knowledge…babel/jest/webpack in JS, tokio or whatever in Rust, black and virtualenv in Python, credo and dialyzer in Elixir, and so on and so forth.

              Bash has many well-known issues, but maybe clickbait articles by prolific self-pronoters hat don’t offer a path forward also have problems?

              1. 15

                If your problem with the article is that it’s clickbait by a self-promoter, say that in your post. Don’t use it as a “gotcha!” to me.

                1. 2

                  I think there’s merit here in exploring the criticism, though room for tone softening. Every language has some form of “required” tooling that’s communicated through community consensus. What makes Bash worse than other languages that also require lots of tools?

                  There’s a number of factors that are at play here and I can see where @friendlysock’s frustration comes from. Languages exist on a spectrum between lots of tooling and little tooling. I think something like SML is on the “little tooling” where just compilation is enough to add high assurance to the codebase. Languages like C are on the low assurance part of this spectrum, where copious use of noisy compiler warnings, analyzers, and sanitizers are used to guide development. Most languages live somewhere on this spectrum. What makes Bash’s particular compromises deleterious or not deleterious?

                  Something to keep in mind is that (in my experience) the Lobsters userbase seems to strongly prefer low-tooling languages like Rust over high-tooling languages like Go, so that may be biasing the discussion and reactions thereof. I think it’s a good path to explore though because I suspect that enumerating the tradeoffs of high-tooling or low-tooling approaches can illuminate problem domains where one fits better than the other.

                  1. 2

                    I felt that I sufficiently commented about the article’s thesis on its own merits, and that bringing up the author’s posting history was inside baseball not terribly relevant. When you brought up motive, it became relevant. Happy to continue in DMs if you want.

                  2. 6

                    You’re really quite hostile. This is all over scripting languages? Or are you passive aggressively bringing up old beef?

                2. 9

                  Integrating shellcheck and shfmt to my dev process enabled my shell programs to grow probably larger than they should be. One codebase, in particular, is nearing probably like 3,000 SLOC of Bash 5 and I’m only now thinking about how v2.0 should probably be written in something more testable and reuse some existing libraries instead of reimplementing things myself (e.g., this basically has a half-complete shell+curl implementation of the Apache Knox API). The chief maintenance problem is that so few people know shell well so when I write “good” shell like I’ve learned over the years (and shellcheck --enable=all has taught me A TON), I’m actively finding trouble finding coworkers to help out or to take it over. The rewrite will have to happen before I leave, whenever that may be.

                  1. 11

                    I’d be interested in what happens when you run your 3000 lines of Bash 5 under https://www.oilshell.org/ . Oil is the most bash compatible shell – by a mile – and has run thousands of lines of unmodified shell scripts for over 4 years now (e.g. http://www.oilshell.org/blog/2018/01/15.html)

                    I’ve also made tons of changes in response to use cases just like yours, e.g. https://github.com/oilshell/oil/wiki/The-Biggest-Shell-Programs-in-the-World


                    Right now your use case is the most compelling one for Oil, although there will be wider appeal in the future. The big caveat now is that it needs to be faster, so I’m actively working on the C++ translation (oil-native passed 156 new tests yesterday).

                    I would imagine your 3000 lines of bash would be at least 10K lines of Python, and take 6-18 months to rewrite, depending on how much fidelity you need.

                    (FWIW I actually wrote 10K-15K lines of shell as 30K-40K lines of Python early in my career – it took nearly 3 years LOL.)

                    So if you don’t have 1 year to burn on a rewrite, Oil should be a compelling option. It’s designed as a “gradual upgrade” from bash. Just running osh myscript.sh will work, or you can change the shebang line, run tests if you have them, etc.

                    There is an #oil-help channel on Zulip, liked from the home page

                    1. 2

                      Thanks for this nudge. I’ve been following the development of Oil for years but never really had a strong push to try it out. I’ll give it a shot. I’m happy to see that there are oil packages in Alpine testing: we’re deploying the app inside Alpine containers.

                      Turns out that I was very wrong about the size of the app. It’s only about 600 SLOC of shell :-/ feels a lot larger when you’re working on it!

                      One thing in my initial quick pass: we’re reliant on bats for testing. bats seemingly only uses bash. Have you found a way to make bats use Oil instead?

                      1. 1

                        OK great looks like Alpine does have the latest version: https://repology.org/project/oil-shell/versions

                        I wouldn’t expect this to be a pain-free experience, however I would say should definitely be less effort than rewriting your whole program in another language!

                        I have known about bats for a long time, and I think I ran into an obstacle but don’t remember what it was. It’s possible that the obstacle has been removed (e.g. maybe it was extended globs, which we now support)

                        https://github.com/oilshell/oil/issues/297

                        In any case, if you have time, I would appreciate running your test suite with OSH and letting me know what happens (on Github or Zulip).

                        One tricky issue is that shebang lines are often #!/bin/bash, which you can change to be #!/usr/bin/env osh. However one shortcut I added was OSH_HIJACK_SHEBANG=osh

                        https://github.com/oilshell/oil/wiki/How-To-Test-OSH

                      2. 1

                        Moving away from Python? Now it has my interest… in the past I skipped past know it’d probably take perf hits and have some complicaged setup that isn’t a static binary.

                        1. 2

                          Yes that has always been the plan, mentioned in the very first post on the blog. But it took awhile to figure out the best approach, and that approach still takes time.

                          Some FAQs on the status here: http://www.oilshell.org/blog/2021/12/backlog-project.html

                          Python is an issue for speed, but it’s not an issue for setup.

                          You can just run ./configure && make && make install and it will work without Python.

                          Oil does NOT depend on Python; it just reuses some of its code. That has been true for nearly 5 years now – actually since the very first Oil 0.0.0. release. Somehow people still have this idea it’s going to be hard to install, when that’s never been the case. It’s also available on several distros like Nix.

                          1. 1

                            What is the status of Oil on Windows (apologies if it’s in the docs somewhere, couldn’t find any mentioning of this). A shell that’s written in pure C++ and has Windows as a first class citizen could be appealing (e.g. for cross-platform build recipes).

                            1. 1

                              It only works on WSL at the moment … I hope it will be like bash, and somebody will contribute the native Windows port :-) The code is much more modular than bash and all the Unix syscalls are confined to a file or two.

                              I don’t even know how to use the Windows sycalls – they are quite different than Unix! I’m not sure how you even do fork() on Windows. (I think Cygwin has emulation but there is way to do it without Cygwin)

                              https://github.com/oilshell/oil/wiki/Oil-Deployments

                    2. 4

                      To the point some folks here have already raised, I’d be okay giving up shell scripting. Unfortunately, in order to do so, a replacement would: […] There are basically no programming languages that meet those criteria other than the existing shell languages.

                      I believe Tcl fits those requirements. It’s what I usually use for medium-sized scripts. Being based on text, it interfaces well with system commands, but does not have most of bash quirks (argument expansion is a big one), and can handle structured data with ease.

                      1. 4

                        Always use #!/usr/bin/env bash at the beginning of your scripts (change if you need something else, don’t rely on a particular path to bash though).

                        I don’t do this. Because all my scripts are POSIX shell (or at least as POSIX complaint as I can make them). My shebang is always #!/bin/sh - is it reasonable to assume this path?

                        1. 4

                          you will miss out on very useful things like set -o pipefail, and in general you can suffer from plenty of subtle differences between shells and shell versions. sticking to bash is also my preference for this reason.

                          note that the /usr/bin/env is important to run bash from wherever it is installed, e.g. the homebrew version on osx instead of the ancient one in /bin (which doesn’t support arrays iirc and acts weirdly when it comes across shell scripts using them)

                          1. 4

                            My shebang is always #!/bin/sh - is it reasonable to assume this path?

                            Reasonable is very arbitrary at this point. That path is explicitly not mandated by POSIX, so if you want to be portable to any POSIX-compliant system you can’t just assume that it will exist. Instead POSIX says that you can’t rely on any path, and that scripts should instead be modified according to the system standard paths at installation time.

                            I’d argue that these days POSIX sh isn’t any more portable than bash in any statistically significant sense though.

                            1. 2

                              Alpine doesn’t have Bash, just a busybox shell. The annoying thing is if the shebang line fails because there is no bash, the error message is terribly inscrutable. I wasted too much time on it.

                              1. 2

                                nixos has /bin/sh and /usr/bin/env, but not /usr/bin/bash. In fact, those are the only two files in those folders.

                              2. 3

                                https://mkws.sh/pp.html hardcodes #!/bin/sh. POSIX definitely doesn’t say anything about shs location but I really doubt you won’t find a sh at /bin/sh on any UNIX system. Can anybody name one?

                              3. 2

                                I would add, prefer POSIX over bash.

                              4. 18

                                I checked, and shellcheck (at least the version on my computer) only catches issue #5 of the 5 I list.

                                1. 14

                                  That’s because the other ones are options and not errors. Yes, typically they are good hygiene but set -e, for example, is not an unalloyed good, and at least some experts argue against using it.

                                  1. 3

                                    Not for lack of trying: https://github.com/koalaman/shellcheck/search?q=set+-e&type=issues

                                    There are tons of pedants holding us back IMO. Yes, “set -e” and other options aren’t perfect, but if you even know what those situations are, you aren’t the target audience of the default settings.

                                  2. 17

                                    I eventually put in the time

                                    Yup, that’s how you do it, It’s a good idea to put in the the time to understand shell scripting. Most of the common misconceptions come out of misunderstanding. The shell is neither fragile (it’s been in use for decades, so it’s very stable) nor ugly (I came from JavaScript to learning shell script, and it seemed ugly indeed at first, now I find it very elegant). Keeping things small and simple is the way to do it. When things get complex, create another script, that’s the UNIX way.

                                    It’s the best tool for automating OS tasks. That’s what it was made for.

                                    +1 to using ShellCheck, I usually run it locally as

                                    shellcheck -s sh
                                    

                                    for POSIX compliance.

                                    I even went as far as generating my static sites with it https://mkws.sh/. You’re using the shell daily for displaying data in the terminal, it’s a great tool for that, why not use the same tool for displaying data publicly.

                                    1. 6

                                      No, it really is ugly. But I’m not sure why that matters

                                      1. 13

                                        I believe arguing if beauty is subjective or not is off topic. 😛

                                    2. 16

                                      I went the opposite direction - I was a shell evangelist during the time that I was learning it, but once I started pushing its limits (e.g. CSV parsing), and seeing how easy it was for other members of my team to write bugs, we immediately switched to Python for writing dev tooling.

                                      There was a small learning curve at first, in terms of teaching idiomatic Python to the rest of the team, but after that we had much fewer bugs (of the type mentioned in the article), much more informative failures, and much more confidence that the scripts were doing things correctly.

                                      I didn’t want to have to deal with package management, so we had a policy of only using the Python stdlib. The only place that caused us minor pain was when we had to interact with AWS services, and the solution we ended up using was just to execute the aws CLI as a subprocess and ask for JSON output. Fine!

                                      1. 15

                                        I tend to take what is, perhaps, a middle road. I write Python or Go for anything that needs to do “real” work, e.g. process data in some well-known format. But then I tie things together with shell scripts. So, for example, if I need to run a program, run another program and collect, and then combine the outputs of the two programs somehow, there’s a Python script that does the combining, and a shell script that runs the three other programs and feeds them their inputs.

                                        I also use shell scripts to automate common dev tasks, but most of these are literally one-ish line, so I don’t think that counts.

                                        1. 2

                                          This makes sense to me

                                        2. 8

                                          we immediately switched to Python for writing dev tooling.

                                          FWIW when shell runs out of steam for me, I call Python scripts from shell. I would say MOST of my shell scripts call a Python script I wrote.

                                          I don’t understand the “switching” mentality – Shell is designed to be extended with other languages. “Unix philosophy” and all that.

                                          I guess I need to do a blog post about this ? (Ah I remember I have a draft and came up with a title – The Worst Amounts of Shell Are 0% or 100%https://oilshell.zulipchat.com/#narrow/stream/266575-blog-ideas/topic/The.20Worst.20Amount.20of.20Shell.20is.200.25.20or.20100.25 (requires login)

                                          (Although I will agree that it’s annoying that shell has impoverished flag parsing … So I actually write all the flag parsers in Python, and use the “task file” pattern in shell.)

                                          1. 2

                                            What is the “task file” pattern?

                                            1. 5

                                              It’s basically a shell script (or set of scripts) you put in your repo to automate common things like building, testing, deployment, metrics, etc.

                                              Each shell function corresponds to a task..

                                              I sketched it in this post, calling it “semi-automation”:

                                              http://www.oilshell.org/blog/2020/02/good-parts-sketch.html

                                              and just added a link to:

                                              https://lobste.rs/s/lob0rw/replacing_make_with_shell_script_for

                                              (many code examples from others in that post, also almost every shell script in https://github.com/oilshell/oil is essentially that pattern)

                                              There are a lot of names for it, but many people seem to have converged on the same idea.

                                              I don’t have a link handy not but Github had a standard like this in the early days. All their repos would have a uniform shell interface so that you could get started hacking on it quickly.

                                        3. 5

                                          You should investigate just for task running. It’s simple like make but none of the pitfalls of it for task running.

                                        1. 16

                                          Not listed but a really common reason for continuing to use Y over X is when, regardless of the original choice, the cost of switching doesn’t approach justifying any marginal differences.

                                          1. 7

                                            This seems to be what the article meant by “Our custom internal solution is good enough”, except that that wording excluded the possibility of one’s current external solution being good enough.

                                          1. 14

                                            I don’t have a problem with hacktivism and calling attention to injustice is generally the right thing to do. But the idea that you can call out war crimes by indiscriminately targeting disk drives of Russian citizens is really missing the point.

                                            1. 12

                                              This morning I would had said you are right, however today I have picked up my children from their preschool where an Ukrainian boy at their age pissed under himself because he saw an unknown male (me), after having spent two days in a darkened evacuation train and having left behind everyone except his mum - and probably much more she would not tell. I have never seen a more scared being in my life. It wasn’t an anxiety, it was a kind of fear I wasn’t aware humans were able to experience. Let’s say I have a problem with that. If this ‘malware’ will stop at least one Russian ammunition train or make one Russian more stand up, the collateral damage(money) it causes is worth much more than the collateral damage(dead kids) that may be caused by the said ammunition. I don’t blame anyone having other opinion, but I understand and would myself do what the author of the module has and had to do.

                                              1. 6

                                                We must do something;
                                                This is something;
                                                Therefore, we must do this.

                                                Just because it’s an action that can be taken doesn’t mean it will help. In fact, I rather suspect this hurts the overall effort.

                                                1. 3

                                                  If this ‘malware’ will stop at least one Russian ammunition train or make one Russian more stand up, the collateral damage(money) it causes is worth much more than the collateral damage(dead kids) that may be caused by the said ammunition. I don’t blame anyone having other opinion, but I understand and would myself do what the author of the module has and had to do.

                                                  I see where you’re coming from. But I don’t see such methods changing the opinions or stance of a previously-indifferent (much less one who is supportive of the regime) Russian. I see frustration and anger, because they almost certainly aren’t thinking of the plight of Ukrainian families fleeing chaos, they’re thinking about their lost files.

                                                  1. 3

                                                    I am not endorsing either side here, but your comment seems to presuppose that the sides of their target audience (people in Russia) are supports and opposes. I think in the view of the author of this hazardous code the sides are three: supports, opposes, and mildly in favor of the fictitious events pictured in Russian propaganda. If the theory is that the last group is the largest then they would need only small margin over 50% of that group to be pushed into the opposes group in order to justify the operation to themselves. Again, I’m not endorsing either viewpoint here – I’m just trying to highlight how views can shift depending on (mis)understanding of the subgroups and the size of those groups. Personally I don’t think we have very good estimates for these parameters but tbh I haven’t done a lot of research either.

                                              1. 1

                                                This all depends on the broader context in which code is getting written. There’s no discussion of the incentives which lead to debt and guard against fixing it. It would be nice if our industry were to do science on quality, rather than just opinion.

                                                1. 4

                                                  Some instance of this rant is posted to this website every day.

                                                  1. 9

                                                    What an embarrassing thing to publish. What not-strawmen/ real world programmers is DHH referring to?

                                                    1. 3

                                                      This was my reaction as well. I was looking for some content or impassioned speech about being our best selves with some philosophical underpinnings. Instead we ended up with a tweet and a meme at the end.

                                                    1. 9

                                                      I really like your “why should you try Emacs in 2021” list. It rings very true to my experience with emacs (and vim). Back when I used it more regularly, aside from any kool-aid I drank around the efficiency of keyboard-driven editing, if I’m being honest, the main motivation was simply that it was fun. Emacs was cool to me because I saw it as vintage, alternative, customizable, a component and expression of a hacker identity. It was an expression of programming-as-hobby as opposed to programming-as-profession. Of course I genuinely did enjoy the editing experience, and developing a healthy .emacs. I loved magit, projectile, helm, the clojure packages, etc. But I ended up in a place professionally where ultimately Emacs had no leverage over more specialized tools for what I was working on.

                                                      1. 6

                                                        I personally don’t think you should be submitting posts from your company blog at all, ideally another community member would organically post it themselves if it’s interesting enough. Or the actual author of the post.

                                                        If you feel like you must promote your company blog, then I think you shouldn’t say you authored the post if you didn’t write it but you should also disclose your relationship with the company in a comment. I don’t think what you’re doing right now - saying you authored the post even though didn’t - sufficiently signals to readers the nature of the conflict and that the post is marketing for your company. There’s no need to add new site features for this either, a top-level comment on the story is sufficient.

                                                        1. 6

                                                          I agree in principle, but if the content is good enough so that I don’t care that it’s on a company blog (this seems to be the case here), posting it (as not-the-author) is fine. So is an extra comment with “my coworker wrote this, happy to answer questions because *knowlede).

                                                          1. 2

                                                            I see where your coming from but want to offer counterpoint.

                                                            Not every person follows every blog. So the assumption that content will get posted if it’s good enough ignores the idea that different people have are tapped into different information networks due to their social experiences, whether it’s a job or an online community.

                                                            I don’t see an inherent problem with posting content produced within the poster’s workplace. I don’t believe the stakes are remotely high enough on an aggregator site like this for there to be a conflict of interest. I also believe that on here, there’s no moral issue with a quality post coming from a company vs hobby blog, even considering the poster’s intent. There might be incidental issues, like a company blogging about ethically compromised tech, but that can be easily dealt with on a case by case basis.

                                                            1. 1

                                                              Hard agree with all of this.

                                                            1. 17

                                                              Personally, I’m excited about the “melting face” emoji, as well as a few of the new gender and skin color variants that will piss off chuds. Also, the Emoji block of Unicode now has not one, but two amulets against the evil eye, which I expect will be extremely valuable for social media.

                                                              1. 6

                                                                I’m torn between “melting face” and “dotted line face”, I think they’ll replace my usage of 🙃going forwards.

                                                                1. 5

                                                                  The emoji thing is so totally irresponsible. Humanity is never going to replace Unicode. We’re stuck with it until we either go extinct or go Luddite. Adding emoji based on whims is how you end up with things like this sticking around for four thousand years and counting. The Egyptians at least had the excuse that they didn’t know what computers were.

                                                                  1. 11

                                                                    I actually have that one saved in my favorites in UnicodePad for Android. Of course, the modern spelling would be 🍆💦.

                                                                    1. 10

                                                                      Adding emoji based on whims is how you end up with things like this sticking around for four thousand years and counting. The Egyptians at least had the excuse that they didn’t know what computers were.

                                                                      Not sure what the problem is? Ancient Egyptians living thousands of years ago didn’t share your particular cultural taboos and sensitivities, which seems like an entirely valid “excuse” to me.

                                                                      1. 2

                                                                        Right, there’s nothing that the Egyptians were doing “wrong”, because when they decided to use a penis as a letter, they had no way of knowing that for the remainder of human civilization we will have to use the penis as a letter, whether it’s culturally taboo or cool or we replace men with artificial sex bots or whatever. We however do know that Unicode is forever, and so the bar to adding a new character should be really fucking high. Like, here is an alphabet that was already in use by a non-trivial amount of people for some length of time. Not, it would be cool to make a new kind of smiley face.

                                                                        A better system would be to do what is already done with flags. For flags, the flag 🇺🇸 is just

                                                                        U+1F1FA 🇺       REGIONAL INDICATOR SYMBOL LETTER U
                                                                        U+1F1F8 🇸       REGIONAL INDICATOR SYMBOL LETTER S
                                                                        

                                                                        We could do the same thing for other ephemera, and not have to burden Unicode with an open ended and endless list of foods that were popular with the Unicode committee in the 21st century.

                                                                        1. 10

                                                                          We don’t “have to use the penis as a letter” because it exists in Unicode. It’s just that it is technically representable. I’ll admit there’s nuance here - there are probably some things I’d rather see us avoid in Unicode, i.e. violence. But I’m struggling to see the harm caused in this particular case.

                                                                          1. 5

                                                                            Who’s to say that the United States will still be around in 4,000, 1,000, or 200 years? Or that the “US” code won’t be recycled for some other country? Hell, why should our current ISO system of labelling countries even persist? Once you start talking about these kind of timeframes anything is up for grabs really.

                                                                            “Forever” is a heck of a long time. I don’t think we’re stuck with Unicode for all eternity, there’s all sorts of ways/scenarios we could come up with something new. I think we should just address the issues of the day; there’s no way what the future will be like anyway; all we can do is focus on the foreseeable future.

                                                                            1. 3

                                                                              I just imagined some kind of a Unicode successor system that would have a “compatibility” block with 200k+ slots and groaned.

                                                                              1. 1

                                                                                That’s the whole point. US won’t mean 🇺🇸 forever. It will naturally change over time and when it does, the old codes will still be decipherable (flag for something called “US”) without needing to be supported anymore.

                                                                                Tbh, the most likely a scenario is a RoC, PRC thing where two countries claim to be the US, and then the international community will have to pick sides. Anyway, still better than having the flag as a real emoji!

                                                                                1. 2

                                                                                  I don’t really follow how one scheme is more advantageous over the over; at the end of the day you’re still going have to map some “magic number” to some specific meaning. I suppose you could spell out “happy” or “fireman” in special codepoints, but that just seems the same as mapping specific codepoints to those meaning, but with extra steps (although “fireman” already consists of two codepoints: “man” + “fire engine”, or “person” and “women” for other gender variants).

                                                                                  The reason it’s done with flags probably has more to do that it’s just easier.

                                                                                  1. 1

                                                                                    It’s not just that it’s easier it’s that obsolescence is a built in concept. New countries come and old countries go and ISO adds and removed country codes. Using Slack and GitHub style :name: emojis mean that you can add and drop support for specific emoji without needing to just serve up a �. It is also more forward compatible. When your friend on a new phone texts you :dotted smiley: you won’t just see �, you’ll see words that describe what is missing. Plus you aren’t using up a finite resource.

                                                                                    1. 3

                                                                                      Plus you aren’t using up a finite resource.

                                                                                      TIL integers are a finite resource.

                                                                                      1. 2

                                                                                        To be fair, I’ll be the first to grab popcorn when they announce that everyone and their toaster now has to adopt utf8 with 1-5 bytes. Will probably be as smooth and fast as our ipv4 to ipv6 migration.

                                                                                      2. 1

                                                                                        When your friend on a new phone texts you :dotted smiley: you won’t just see �

                                                                                        Right, that would be useful.

                                                                                        Changing the meaning of specific codepoints or sequences of codepoints over time just seems like a recipe for confusion. “Oh, this 300 year old document renders as such-and-such, but actually, back then it meant something different from today” is not really something that I think will help anyone.

                                                                                        This already exists to some degree; e.g. “Ye olde tarvern” where “Y” is supposed to represent a capital Thorn, which is pronounced as “th”, not as Y (written as þ today, but written quite similar to Y in old-fashioned cursive writing, and early German printing presses didn’t have a Thorn on account of that letter not existing in German so people used Y as a substitute). In this case it’s a small issue of pronunciation, but if things really shift meaning things could become a lot more apt to misunderstandings in meaning.

                                                                                        1. 1

                                                                                          Emoji have already shifted in ways that change their meaning. The gun emoji has become a ray gun due to political correctness and sometimes points left and sometimes right. Shoot me → zap you. The grimace 😬 was a different emotion on Android and iOS for a while. There are other documented examples of this kind of semantic shift in just a short amount of time. I think it’s a bit hopeless to try to pin them down while you keep adding stuff. The use of eggplant and peach for penis and butt is based on their specific portrayal and subject to the visual similarity being lost if they redraw them in different ways. What if President Xi demands a less sexy 🍑? Will it stick around or be a bit of passing vulgar slang from the early twentieth century? Impossible to predict.

                                                                            2. 4

                                                                              Why can’t we have a little fun? What is the problem you are seeing with this?

                                                                              1. 3

                                                                                Your body shame is a culturally specific artifact and hardly a universal experience.

                                                                                1. 1

                                                                                  You’re missing the point. I’m not ashamed of weiners. They are hilarious. The point is that a character can be taboo or not and we’re still stuck with it.

                                                                                  1. 2

                                                                                    If it’s not something to be ashamed of, is it really taboo enough to exclude from the Unicode standard? And furthermore, why is being stuck with it an issue? It can even be valuable from an anthropological standpoint.

                                                                                2. 1

                                                                                  Just because a standard exists doesn’t mean we have to use all of it all the time.

                                                                                  Or should the ASCII maintainers be embarrassed that their standard contains Vertical Tab?

                                                                                  1. 2

                                                                                    My dude, Unicode inherited vertical tab from ASCII. That’s my point. Things are only going to continue to accumulate for now until the collapse of civilization. It will never shrink.

                                                                              1. 20

                                                                                It’d be nice to have some actual background on hashing in here instead of just broad generalizations and links to various hash functions. Examples:

                                                                                • There’s no mention of cyclic redundancy checks and why they are not valid as crypto functions (a mistake some programmers have made).
                                                                                • There’s no mention of avalanche effects, which is a good way of seeing how “random” a digest scheme is (with some implications for how well the output can be predicted/controlled by an attacker).
                                                                                • The mentioned attack on JSON hash tables in PHP (if you dig into it) would’ve been a great place to talk about trivial hashes (e.g., f(x) =0 or f(x)=x) and why they cause problems even in non-hostile environments, but that would’ve required more of an introduction to how hashing works…)
                                                                                • Lots of usage of jargon like “non-invertible”, “collision-resistance”, “preimage attack resistance”, etc. which is probably inaccessible if your audience is programmers who “don’t understand hash functions”.
                                                                                • There’s not really an explanation about the differences/similarities of crypto-strong hash functions, password hash functions, and key derivation functions, other than a mention that there is some relation but which isn’t elaborated on at all.
                                                                                • There’s not really any useful information at all about perceptual hashing vs other forms of multimedia digest approaches–there’s just some Apple hate.
                                                                                • etc.

                                                                                Programmers might not understand hash functions, but infosec furries may also not understand pedagogy.

                                                                                (also, can you please cool it with the inflammatory article headlines?)

                                                                                1. 24

                                                                                  Programmers might not understand hash functions, but infosec furries may also not understand pedagogy.

                                                                                  Please don’t pick a fight. It seems more angry than friendly.

                                                                                  1. 22

                                                                                    Honestly I think it’s a valid concern. One of the biggest problems with the computer security world, as stated repeatedly by leading experts in the field, is communication and teaching.

                                                                                    1. 23

                                                                                      A valid concern would be “infosec experts may not understand pedagogy” but why call out “infosec furries” specifically? Unless we should be concerned about infosec furries in particular vs other infosec experts?

                                                                                      Are these acceptable?

                                                                                      • but infosec gays may also not understand pedagogy
                                                                                      • but infosec women may also not understand pedagogy
                                                                                      • but infosec people of color may also not understand pedagogy

                                                                                      No. So why furries? People need to get over it and quit furry bashing. This isn’t acceptable behavior on Lobste.rs, and I’m tired of it.

                                                                                      1. 3

                                                                                        See elsewhere for the explanation; furry bashing doesn’t enter into it, though I see why you might have read it that way. Furries are internet denizens like the rest of us, with all that entails.

                                                                                        1. 12

                                                                                          I agree with you that it’s a bad title.

                                                                                          I also think that you wouldn’t have reacted nearly this strongly to the title if it wasn’t a furry blog.

                                                                                          1. 11

                                                                                            I read your other comments. But you said what you said, and that undermines all your pontificating about the harm of “insulting/demeaning a group” and “the sort of microaggression/toxicity that everybody talks so much about.” Take your own advice.

                                                                                          2. 2

                                                                                            “Furry” is a kink, not an identity or protected class. And normally you have to get people’s consent before you bring them into your kink.

                                                                                            1. 7

                                                                                              I don’t see any sexual imagery in this blog post.

                                                                                              1. 2

                                                                                                The OP’s site has some pretty well reasoned and presented articles on precisely why “furry” cannot reasonably be summarized as “a kink”.

                                                                                                And, no, you do not “normally” have to get someone’s consent to introduce them to the idea of your kink, unless said introduction involves you engaging them in the practice of your kink.

                                                                                              2. 1

                                                                                                Sorry, I didn’t realize the “furry” part was what you were opposed to. It sounded like you were upset with the implication that the infosec world is bad at teaching.

                                                                                          3. 6

                                                                                            Programmers might not understand hash functions, but infosec furries may also not understand pedagogy.

                                                                                            (also, can you please cool it with the inflammatory article headlines?)

                                                                                            https://www.youtube.com/watch?v=S2xHZPH5Sng

                                                                                            1. 10

                                                                                              One of the things he talks about there is testing the hypothesis and seeing which title actually worked. I only clicked this link because I recognized your domain name and knew you had written interesting articles in the past and might legitimately explain something I didn’t know. If not for that, I probably would have bypassed it since the title alone was not interesting at all.

                                                                                              1. 9

                                                                                                Even so, it is still possible to write clickbait titles that aren’t predicated on insulting/demeaning a group.

                                                                                                • “Hash functions: hard or just misunderstood?”
                                                                                                • “Things I wish more programmers knew about hashes”
                                                                                                • “Programmer hashes are not infosec hashes”
                                                                                                • “Are you hashing wrong? It’s more common than you might think”
                                                                                                • “uwu whats this notices ur hash function

                                                                                                How would you feel if I wrote “Gay furries don’t understand blog posting”? Even if I raise good points, and even if more people would click on it (out of outrage, presumably), it would still probably annoy a gay furry who wrote blogs and they’d go in with their hackles raised.

                                                                                                1. 8

                                                                                                  The important difference between what I wrote and your hypothetical is the difference between punching up and punching down.

                                                                                                  My original title was along the same lines as “Falsehoods Programmers Believe About _____” but I’ve grown a distaste for the cliche.

                                                                                                  1. 7

                                                                                                    The difference between “Programmers don’t understand hash functions” and “Gay furries don’t understand blog posting” is quite obvious to me and I definitely don’t want to engage in whatever Internet flame is going on here. Especially since, uh, I have a preeetty good idea about what the problem here is, and I tend to think it’s about gay furries, not article titles, which is definitely not a problem that I have. (This should probably be obvious but since I’m posting in this particular thread, I wanted to make sure :P).

                                                                                                    But I also think this title really is needlessly nasty, independent of how it might be titled if it were about other audiences. It’s a bad generalisation – there are, in fact, plenty of programmers who understand hash functions – and it’s not exactly encouraging to those programmers who want to get into security, or who think their understanding of these matters is insufficient.

                                                                                                    I am (or was?) one of them – this was an interest of mine many, many years ago, at a time when I was way too young to understand the advanced math. My career took me elsewhere, and not always where I wanted to go, and I tried to keep an eye on these things in the hope that maybe one day it’ll take me there. Needless to say, there’s only so much you can learn about these topics by spending a couple of evenings once in a blue moon studying them, so I never really got to be any good at it. So I think the explanation is amazing, but it would definitely benefit from not reminding me of my inadequacy.

                                                                                                    And I’m in a happy boat, actually, this is only an interest of mine – but there are plenty of people who have to do it as part of their jobs, are not provided with adequate training of any kind, have no time to figure it out on their own, and regularly get yelled at when they get it wrong.

                                                                                                    Now, I realise the title is tongue-in-cheek to some degree, the playful furries and the clever humour scattered throughout the post sort of gives it away. If you think about it for a moment it’s pretty clear that this is meant to grab attention, not remind people how much they suck. But it’s worth remembering that, in an age where web syndication is taken for granted to the point where it sounds like a Middle English term, this context isn’t carried everywhere. Case in point, this lobste.rs page includes only the title. Some people might react to it by clicking because you grabbed their attention, but others might just say yeah, thanks for reminding me, I’ll go cry in a corner.

                                                                                                    Even if I didn’t realise it was tongue-in-cheek, it probably wouldn’t bother me, partly because I understand how writing “competitively” works (ironically, from around the same time), partly because I’ve developed a thick skin, and partly because, honestly, I’ve kindda given up on it, so I don’t care about it as much as I once did. But I can see why others would not feel the same way at all. You shouldn’t count on your audience having a thick skin or being old enough to have given up on most of their dreams anyway.

                                                                                                    I know this is a real struggle because that’s just how blogs and blogging work today. You have to compete for attention to some degree, and this is particularly important when a large part of the technical audience is “confined” to places like HN and lobste.rs, where you have to grab attention through the title because there’s nothing else to grab attention through. But maybe you can find a kinder way to grab it, I dunno, maybe a clever pun? That never hurt anyone. These radical, blunt (supposedly “bluntly honest” but that’s just wishful thinking) headlines are all the rage in “big” Internet media because, just like Internet trolls, they thrive on controversy, us vs. them and a feeling of smugness, but is that really the kind of thing you want to borrow?

                                                                                                    (Edit: just to make sure I get the other part of my message across, because I think it’s even more important: title aside, which could be nicer, the article was super bloody amazing: the explanation’s great, and I like the additional pointers, and the humour, and yes, the drawings! Please don’t take any of all that stuff above as a criticism of some sort: I wanted to present a different viewpoint from which the title might read differently than you intended, not that the article is bad. It’s not!)

                                                                                                    1. 15

                                                                                                      How do you know that you’re punching up?

                                                                                                      What if the person encountering your blog is a programmer from an underrepresented background, just barely overcoming imposter syndrome, and now here’s this scary suggestion that they don’t understand hash functions? What if they actually made one of the mistakes in the article, and feel like they’re a complete fraud, and should leave the industry? This is the sort of microaggression/toxicity that everybody talks so much about, if I’m not mistaken.

                                                                                                      The point is: you don’t know. You can’t know.

                                                                                                      So, err on the side of not adding more negative shit to the world accidentally in the name of pageviews–especially when there are many, many other more positive options in easy reach.

                                                                                                      EDIT:

                                                                                                      I wouldn’t care if it weren’t for the fact that you’re a smart dude and clearly passionate about your work and that you have good knowledge to share, and that it pains me to see somebody making mistakes I’ve made in the past.

                                                                                                      1. 8

                                                                                                        I wouldn’t care if it weren’t for the fact that you’re a smart dude and clearly passionate about your work

                                                                                                        I’m neither of those things :P

                                                                                                        and that you have good knowledge to share, and that it pains me to see somebody making mistakes I’ve made in the past.

                                                                                                        I appreciate your compassion on this subject. It’s definitely new territory for me (since forever I’ve been in the “boring headline out of clickbait adversion” territory).

                                                                                                        1. 9

                                                                                                          Do you actually not see a difference between saying a slightly negative thing about people of a certain profession and how they engage in that profession, and an ad-hominem using sexual orientation? What a weird and bad analogy?

                                                                                                          I’m trying to assume good intent here but all your comments make it sound like you’re annoyed at the furry pics and awkwardly trying to use cancel culture to lash out the author.

                                                                                                          1. 7

                                                                                                            Neither the label of programmers (with which I identify) nor of gay furries (with which the author identifies, according to their writing) is being misapplied. I’m sorry you feel that a plain statement of fact is somehow derogatory–there is nothing wrong with being a proud programmer or a proud gay furry.

                                                                                                            My point in giving that example was to critique the used construction of “ is ”. I picked that label because the author identified with it, and I picked the “bad at blogging” because it’s pretty obviously incorrect in its bluntness. If I had picked “lobsters” or “internet randos” the conjured association for the person I was in discussion with may not have had the same impact it that “programmers” had on me, so I went with what seemed reasonable.

                                                                                                            1. 4

                                                                                                              What do you gain by emphasizing soatok’s sexual identity, other than this morass of objections?

                                                                                                            2. 5

                                                                                                              I’m trying to assume good intent here

                                                                                                              that’s exactly what friendlysock is hoping for

                                                                                                              1. 5

                                                                                                                you’re right but it’s best not to feed them

                                                                                                              2. 8

                                                                                                                What if the person encountering your blog is a programmer from an underrepresented background, just barely overcoming imposter syndrome, and now here’s this scary suggestion that they don’t understand hash functions?

                                                                                                                Or they may read this and think ‘I’m glad it’s not just me!’. As a programmer who probably has a better than average understanding of hash functions, I don’t feel demeaned by this generalisation, if I were worried about my level of understanding I’d feel comforted by the idea that I wasn’t in a minority in my lack of understanding.

                                                                                                                What if they actually made one of the mistakes in the article, and feel like they’re a complete fraud, and should leave the industry?

                                                                                                                Or they may feel better that this mistake is so common that someone writes about it on a list of mistakes programmers make.

                                                                                                                1. 1

                                                                                                                  What if the person encountering your blog is a programmer from an underrepresented background….

                                                                                                                  While I said you’re picking a fight (and would add: “look at the thread, it’s a fight”), I see what you’re saying in this paragraph. I also value non-judgmental explanations.

                                                                                                              3. 6

                                                                                                                My problem with the title isn’t that it’s insulting, but that it’s inaccurate. Clearly some programmers do understand hash functions, even if other programmers do not. If nothing else, @soatok, a programmer, presumably understands hash functions, or why else would he write a blog post purporting to explain the right way to use them?

                                                                                                                Programmers don’t understand hash functions, and I can demonstrate this to most of the people that will read this with a single observation:

                                                                                                                When you saw the words “hash function” in the title, you might have assumed this was going to be a blog post about password storage.

                                                                                                                Specifically is wrong, at least about me, and almost certainly among other programmers as well. I don’t claim to have deep knowledge about cryptography, and I do expect that there’s probably something I could learn from this blog post, which I will read more carefully when I have a chance. But I am aware that the computer science concept of hash functions is useful for a variety of programming problems, and not just storing password-related data.

                                                                                                          1. 13

                                                                                                            I am intrigued by the framing of the Sturm und Drang about the state of the web as being driven, to some significant degree, by politics internal to Google.

                                                                                                            1. 26

                                                                                                              As I stated earlier this week, promo packets are what’ll do in the web.

                                                                                                              I think a lot of developers simply lack the interest in context to process the realpolitik that shapes and distorts the fabric of spacetime for our industry.

                                                                                                              If you refuse to understand that Google’s whole business is threatened by adblockers, you probably would be confused at the some of the changes to web extensions webRequest that make that work harder. If you don’t understand the desire to make SEO, crawling, and walled gardens easier AMP probably seemed like a great return to roots.

                                                                                                              Other companies do this too, of course. If you didn’t know about OS/2 Warp some of the Windows APIs probably seemed weird. If you don’t know about Facebook trying to own everything you do then the lack of email signup for Oculus probably seems strange. If you invested heavily into XNA you probably got bit when internal shifts at Microsoft killed XNA off. If you don’t know about internal Canonical and RHEL shenanigans, systemd and other things probably are a surprise.

                                                                                                              Developers need to pay as much attention to the business dependencies as the technical ones.

                                                                                                              1. 6

                                                                                                                What do you mean by promo packets? I’m not familiar with this term.

                                                                                                                1. 21

                                                                                                                  When you’re doing a performance review at Google, you can request a promotion. If you do this, you put together a ‘packet’ including the impactful work you’ve done. New work is rewarded heavily, maintenance less so. For senior engineers, shipping major projects with an industry wide impact is a path to promotion.

                                                                                                                  1. 30

                                                                                                                    Which means Google rewards doing something new for the sake of doing something new. It’s tremendously difficult to get promoted by improving older systems. Crucially, you often need to demonstrate impact with metrics. The easiest way to do that is sunset an old system and show the number of users who have migrated to your new system, voluntarily or otherwise.

                                                                                                                    1. 16

                                                                                                                      Ew. Thanks for the insight. But ew.

                                                                                                                    2. 1

                                                                                                                      Is there any material evidence suggesting that someone’s promotion is the reason that chrome will remove alert? Obviously google will push the web in the direction that juices profit, but an individual promotion? Seems like a red herring.

                                                                                                                      1. 6

                                                                                                                        It is often difficult to pick it apart as it’s rarely a single person or team. What happens in large organizations is that there is a high-level strategy and different tactics spring from that. Then, there are metrics scorecards, often based on a proxy, which support the tactics delivering the strategy. This blurs the picture from the outside and means that rarely one person is to blame, or has singular control over the successes.

                                                                                                                        I haven’t followed the alert situation very closely, but someone familiar with large organizations can get a good read from the feature blurb. There is a strong hint from the language that they are carrying a metric around security, and possibly one around user experience. This translates to an opportunity for a team to go and fix the issue directed by the metrics since it’s quantifiable. The easiest way to start might be to work back from what moves the metric, but this is a very narrow perspective.

                                                                                                                        Developers may know what the best things to work on having been a developer in that area for 10 years, but their impact tracks towards those top-level strategies. Management can’t justify promotion because someone else is very focused on metrics that drive the strategy.

                                                                                                                        In lots of places this is called alignment. Your boss may only support X amount of work on non-aligned projects, if you do at least Y amount of work on Y projects. A classic big company alignment example is a talented person in a support department. If they can fix your biggest problem at the source it’d be best to let them do this. However, metrics incentivize assigning them to solving N support cases per week and other metrics designed for lower-skilled individuals instead of working on fixing root causes. Eventually, they leave unless you have smart management taking calculated risks, manage the metrics at the team level so the team is not noticed working the way it wants, seeking paths for talented people to work on the product, etc.

                                                                                                                        1. 1

                                                                                                                          Many of us understand how metrics and incentives at tech companies work. Was just pointing out that it’s a bold claim to assume that chrome is removing alert due to an individual seeking a promotion.

                                                                                                                  2. 3

                                                                                                                    I think about this in terms of my time at Apple – like, people ascribed all kinds of causes to various seemingly peculiar Apple decisions that to those of us on the inside were obvious cases of internal politicking leaking out.

                                                                                                                    1. 2

                                                                                                                      WHATWG is a consortium of multiple companies so I’m curious why everyone is pointing the finger at Google here, or is the assertion that Google has so much power over the WHATWG and Chrome at this point that there’s no ability for other companies to dissent? (And I mean we all know that the W3C lost and WHATWG won so a consortium of vendors is the web.)

                                                                                                                      1. 9

                                                                                                                        The multiple companies are Apple, Google, Microsoft, and Mozilla (https://whatwg.org/sg-agreement#steering-group-member, section 3.1b) Of the three, only Apple develops a browser engine that is not majority funded by Google.

                                                                                                                        1. 4

                                                                                                                          I’m pretty sure Apple develops a browser engine that is majority funded by Google: https://www.theverge.com/2020/7/1/21310591/apple-google-search-engine-safari-iphone-deal-billions-regulation-antitrust

                                                                                                                          1. 5

                                                                                                                            That’s some pretty weird logic.

                                                                                                                            The browser engine Apple creates is used for a whole bunch of stuff across their platforms, besides Safari:

                                                                                                                            Mail, iMessage, Media Store fronts, App Store fronts.. Those last two alone produce revenue about 4x what Google pays Apple to make it the default.

                                                                                                                            Do I wish they’d get more people using alternatives and pass on the google money? Sure. Is there any realistic chance their ability to fund Safari and/or Webkit would be harmed by not taking the google money? Seems pretty unlikely.

                                                                                                                            1. 1

                                                                                                                              I don’t think the stores use WebKit. They didn’t last time I investigated.

                                                                                                                            2. 4

                                                                                                                              It’s true-ish. But I’m sure the most profitable company in the world probably doesn’t require that money and would be able to continue without.

                                                                                                                              1. 3

                                                                                                                                You don’t become the most profitable company by turning down revenue.

                                                                                                                            3. 1

                                                                                                                              Right I was just wondering if folks think the WHATWG is run solely by Google at this point. Thanks for the clarification.

                                                                                                                            4. 5

                                                                                                                              The point is that many of those new APIs don’t happen in standards groups at all. Exactly because they’d require more than one implementation.

                                                                                                                              1. 5

                                                                                                                                Yes, this. Google’s play here is less about controlling standards per se (ed: although they do plenty of that too) and more about getting everyone to treat Whatever Google Does as the standard.

                                                                                                                              2. 4

                                                                                                                                WHATWG was run at inception by a Googler and was created to give Google even more power over the standards process than the hopelessly broken W3C already gave them. That they strong armed Mozilla into adding their name or that Apple (who was using the same browser engine at the time) wanted to be able to give feedback to the org doesn’t change the Googlish nature of its existence, IMO

                                                                                                                            5. 12

                                                                                                                              Like it or not, Google is the www. It is the driving force behind the standards, the implementations (other than Safari), and the traffic that reaches websites.

                                                                                                                              It would be odd if Google’s internal politics didn’t leak into the medium.

                                                                                                                              1. 6

                                                                                                                                Right, it’s just … one of those things that is obvious in retrospect but that I would never be able to state.

                                                                                                                                1. 9

                                                                                                                                  A lot of people seem to think that standards work is a bit like being in a university - people do it for the love of it and are generally only interested in doing what’s best for all.

                                                                                                                                  In reality it’s a bunch of wealthy stakeholders who realize that they need to work together for everyone’s best - they’re not a monopoly, yet - but in the meantime it behooves them to grab every advantage they can get.

                                                                                                                                  As mentioned in the post, standards work is hard and time-consuming, and if an organisation can assign a dedicated team to work on standards, that work will get implemented.

                                                                                                                                  1. 3

                                                                                                                                    Universities work like that too now

                                                                                                                                    1. 1

                                                                                                                                      This is sadly true.

                                                                                                                            1. 12

                                                                                                                              Another nice project with an S3 compatible API is seaweedfs (née weedfs): https://github.com/chrislusf/seaweedfs, inspired by the haystack paper (from FB, when FB had around 1-2K photo uploads per second); we use it in production (albeit not in distributed mode). A lightning talk I did a few month ago: https://github.com/miku/haystack

                                                                                                                              1. 1

                                                                                                                                if you do not mind, a question – did you find any solutions that are based on JDK 11+ (Java/clojure/scala, etc) – I am looking for a file store open source lib, but I would like it to be compatible with a JVM ecosystem.

                                                                                                                                1. 1

                                                                                                                                  Interesting, I’d assume a JVM ecosystem would permit non JVM code. Is it a JVM client library you want?

                                                                                                                                  1. 1

                                                                                                                                    Not the OP, but I’ve heard that some banks will refuse to deploy any code that doesn’t run on the JVM.

                                                                                                                                    1. 1

                                                                                                                                      Wow, do you have perhaps an example, or country of a possible example?

                                                                                                                                      I know crux db is on the JVM, and they can use and even encourage their object store to be on Kafka (famously JVM)

                                                                                                                                      1. 1

                                                                                                                                        Unfortunately, no. This was just word-of-mouth from people in adjacent businesses so feel free to take it with a grain of salt.

                                                                                                                                        The general contour of reasoning was that with security being a top concern, they prefer to deploy code in ways that are familiar.

                                                                                                                                    2. 1

                                                                                                                                      Thank you for the follow-ups. I would like the whole service to be packageable and accessible as a JAR that I can incorporate in our ‘uber’ JAR.

                                                                                                                                      The backend I am working on, has one of its ‘features’ – a simple deployment. In the translation, it means a single-jar + PostgresSQL.

                                                                                                                                      The single-jar within it, has about 20 ‘micro-services’, essentially. So a user can start one up just one jar and have everything in ‘one host’ or start the jar with config params telling the JAR which microservices to start on which host. That configuration file is like a ‘static’ service orchestrator. It is the same for all the hosts, but there are sections for each host in the deployment.

                                                                                                                                      One of the microservices (or easier to call them just services) I am going to be enhancing is a ‘content server’. Today the content service basically needs a ‘backend-accessible-directory’.

                                                                                                                                      That service does all the others things: administering the content, acting as IAM Policy Enforcement Point, caching content in a memory-mapped db (if a particular content is determined to be needed ‘often’), a non-trivial hierarchical directory management to ensure that too many files do not end up in ‘one folder’, and so on.

                                                                                                                                      I need to support features where files are in a ‘remote content server’ (rather then in a locally accessible directory). Where the content server is an S3 (or some other standard compatible system) So I would like the ‘content server’ to be included as a 21st service in that single JAR.

                                                                                                                                      Which is why, I am not just looking for a client, but for the actual server – to be compatible with JVMs. Hope the explanation gives more color to the question I asked.


                                                                                                                                      With regards to other comment where folks mention that some organizations like banks – prefer a JVM only code. That’s true to a degree, it is a preference, not an absolute requirement though.

                                                                                                                                      That’s because some of these organizations have built by themselves ‘pre-docker’ deployment infrastructures. Where it is easy to request a ‘production capacity’ as long as the deployed backend is a JAR (because those deployment infrastructures are basically JVM clusters that support migrations, software defined networks, load balancing, password vaults, monitoring, etc)

                                                                                                                                      So when a vendor (or even internal team) comes in and says: for our solution we run on docker, it is OK, but they have invested millions… and now want to continue to get benefits (internal payment basically) for their self-build infrastructure management tools … Which is why there is a preference for JVM-only solutions and, perhaps, will be for some time.

                                                                                                                                      And to be honest, JVM (and JVM based languages) and their tools ecosystem continues to evolve (security, code analysis, performance, etc) — it seems that the decisions back then about investing into managed infrastructure around JVM – were good decisions.

                                                                                                                                1. 8

                                                                                                                                  Oh, also: whatever approach you choose, you are going to also need to provide an ergonomic, performant animation API.

                                                                                                                                  This is where I died inside. Just no. Animations are one of the most despicable developments of recent UIs. I don’t want to keep either waiting for the computer to do its trivial jobs, or distract me in general altogether. Want to make your phone faster? Disable animations!

                                                                                                                                  You need to support emoji.

                                                                                                                                  Also no, this is a largely pointless complication.

                                                                                                                                  Async You do have nice ergonomic async support, don’t you?

                                                                                                                                  What does this even mean? Win32/X11/Qt/GTK+ are all async by their sheer nature.

                                                                                                                                  He’s describing an opinionated, everything-but-the-kitchen-sink approach. But a decent overview nonetheless.

                                                                                                                                  1. 33

                                                                                                                                    Complaints about animations an emoji sound very much like “old man yells at cloud”.

                                                                                                                                    Emoji (and generally Unicode support for more than BMP) is now an expected feature of modern software.

                                                                                                                                    UI animations can be done well and be helpful, and hint how UI items relate to each other spatially. It’s really weird that even low-end mobile devices have GPUs that can effortlessly animate millions of 3D triangles, but sliding a menu is considered a big effort.

                                                                                                                                    1. 7

                                                                                                                                      I’ve honestly never seen a single helpful UI animation in my life, other than spinning wheels and the likes, indicating that the application/system hasn’t frozen up completely. Instead of “click, click, click, be done”, things tend to shift into “click, have your attention grabbed, click, have your attention grabbed, throw your computer out of the window and go live in the woods”. GNOME Builder and GIMP 3 settings dialogues are spectacular examples of GNOME keeping digging its grave.

                                                                                                                                      One would expect the computer to be a tool, rather than a work of art.

                                                                                                                                      1. 19

                                                                                                                                        Maybe that’s just a failing of GNOME?

                                                                                                                                        For example, macOS has generally well-done animations that don’t get in the way. It tends to animate after an action, but not before. Animations are very quick, unless they’re used to hide loading time. There are also animations to bring your attention to newly created/focused elements. Reordering of elements (menu icons, tabs) is smooth. IMHO they usually add value.

                                                                                                                                        Touchscreen OSes also animate majority of elements that can be swiped or dragged. The animation is not on a fixed timer, but “played” by your finger movements, so you may not think about it as an animation, but technically it is animating positions and sizes of UI elements. Users would think UI is broken if it instantly jumped instead of “sticking” under the finger.

                                                                                                                                        1. 4

                                                                                                                                          Eh, macOS has sort of jumped the gun on animation, too. I’ve activated the “Reduce motion” for it because, by default, the transition between full-screen apps is done by having windows “slide” in and out of view. It’s not just slow (it takes substantially more time to do the transition that in takes to Cmd-Tab between the applications), it legit makes you dizzy if you keep switching back and forth.

                                                                                                                                          I imagine it’s taken verbatim from iPad (last macOS version I used before Big Sur was… Tiger, I think? so I’m not sure…) where it makes some sense, but I can’t for the life of me understand what’s the point of it on a thing that has a keyboard and doesn’t have a touch screen.

                                                                                                                                          1. 3

                                                                                                                                            I can’t for the life of me understand what’s the point of it on a thing that has a keyboard and doesn’t have a touch screen.

                                                                                                                                            Probably because most people will use their MacBook trackpad to swipe between full screen apps/desktops. I only rarely use the Ctrl-arrow shortcuts for that. A lot of macOS decisions make more sense when you assume the use of a trackpad rather than a mouse (which is why I’ve always found it weird they don’t ship a trackpad with iMacs by default)

                                                                                                                                            1. 1

                                                                                                                                              You can still cmd-tab between full-screen applications, which is what a lot of people actually do – a “modern” workplace easily gets you an email client, several Preview windows, a Finder window, and a spreadsheet. Trackpad swiping works great when you have two apps open, not so much when you got a bunch of them.

                                                                                                                                              When you’re on the seventh out of the fifteen invoices you got open, you kindda want to get back to the spreadsheet without seeing seven invoices again. That’s actually a bad example because full-screen windows from the same app are handled very poorly but you get the point: lots of apps, you don’t always want to see all of them before you get to the one you need…

                                                                                                                                            2. 1

                                                                                                                                              These animations are helpful, and have been shown to be so. It’s not something some asshole down at Cupertino just cooked up because he thought it would look cool. Cues as to the spatial relations of things (as the desktops have an order and you use left/right gestures to navigate them) are very valuable to a lot of people, and they even let you turn them off, I don’t really see anything worth complaining about.

                                                                                                                                              I mean there’s a lot of questionable things Apple is doing these days, but that’s not one of them.

                                                                                                                                              1. 2

                                                                                                                                                I’m not talking about desktops, but “maximized” applications (i.e. the default, full-screen maximisation you get when you press what used to be the green button).

                                                                                                                                                You get full-screen sliding animations when you Cmd-Tab between apps in this case, even though there’s no spatial relations between them, as the order in which they’re shown in the Cmd-Tab stack has nothing to do with the order in which they’re shown in Mission Control (the former is obviously mutable, since it’s in a stack, the latter is fixed).

                                                                                                                                                In fact, precisely because one’s a stack and the other one isn’t, the visual cue is wrong half the time: you switch to an application to the right of the stack, but the screen slides out to the left.

                                                                                                                                                Animation when transitioning between virtual desktops is a whole other story and yes, it makes every bit of sense there.

                                                                                                                                                and have been shown to be so.

                                                                                                                                                Do you have a study/some data for that? I know of some (I don’t have the papers at hand but I can look it up if you’re curious), but it explicitly expects only occasional use so it doesn’t even attempt to discuss the “what if you use it too much” case. So it’s not even close to applying to the use case of e.g. switching between a spreadsheet and the email client several times a minute.

                                                                                                                                                (Edit: just for the fun of it, I tried to count how often I Cmd-Tab between a terminal window and the reference manual after I ended up ticking the reduce animation box in accessibility options. I didn’t automate it so I gave up after about half an hour, at which point I was already well past 100. Even if this did encode any spatial cues, I think spatial cues are not quite as valuable as not throwing up my guts.)

                                                                                                                                          2. 9

                                                                                                                                            There are many legitimate uses for animations. Yes loading spinners are one of them, unless you think that every single operation can be performed instantly. Sliding and moving elements around on mobile especially is another one. A short animations to reveal new elements after a user action can also improve the UX.

                                                                                                                                            Not everything has to be one extreme or another - it’s not pointless animations everywhere, or no animations at all. When used well they can improve usability.

                                                                                                                                            1. 1

                                                                                                                                              Loading spinners are far from ideal though. A progress bar would be generally better so you have some idea of if it is actually still working and how far is left to go. Or anything else that provides similar information.

                                                                                                                                              I’ve seen so many times when a loading spinner sits there spinning forever because, for example, the wifi disconnected. The animation then is misleading, since it will never complete.

                                                                                                                                              1. 4

                                                                                                                                                That’s an entirely different loading element. You can have animated progress bar. And when progress is indeterminate a spinner makes the most sense. A spinner not stopping on error is a UI bug, not a problem with the concept. If you want to get mad at bad design, how about programming languages and paradigms that don’t make you explicitly handle errors to get in this state.

                                                                                                                                              2. 1

                                                                                                                                                The standard way of indicating length is to say so to the user, and possibly add a progress bar, for when progress can be sensibly measured. Like adding a spinner, it needs to be done explicitly. Revealing new elements can be done responsively by improving the design–the standard way is by turning an arrow.

                                                                                                                                                The notion of phones invading GUIs, as x64k hinted at, is interesting here (though not new). Transplanting things that do not belong, just because of familiarity.

                                                                                                                                                Going back to the article, it said I needed to. I don’t. And still, I can make anything I desire with the toolkit, with no real change to the required effort. Except for “modern” IM, when I don’t care to implement pictures as pseudo-characters.

                                                                                                                                              3. 7

                                                                                                                                                One would expect the computer to be a tool, rather than a work of art.

                                                                                                                                                The computers I remember most fondly all had some qualities of art in it. Sometimes in the hardware, others in the software, and the ones I like the most had it in both.

                                                                                                                                                Animations are important in devices in which there is mostly visual feedback. Most computers don’t have haptics, and we often get annoyed at audio feedback. Visual cues that an action was performed or that something happened are important. There is a difference between UI animation and a firework explosion in the corner of the app.

                                                                                                                                                1. 5

                                                                                                                                                  One would expect the computer to be a tool, rather than a work of art.

                                                                                                                                                  You, me, and everybody in this thread is in the top 0.001% of computer power users. What’s important to us is totally different than what’s important to the rest of the population. Most normies I talk to value pleasing UIs. If you want to appeal to them, you’re going to need animations.

                                                                                                                                                  1. 6

                                                                                                                                                    I’d argue even further that the 0.001% of computer power users also need animations. When done well, animations really effectively convey state changes in a way that speaks to our psychology. A great example is that when I scroll a full page in my web browser, the brief scroll animation shows my brain how where I am now relates to where I was a split second ago. Contrast this to TUIs which scroll by a full page in a single frame. It’s easy to consciously believe that we can do without things like animations, but I’m pretty sure that all the little immediate state changes can add up to a subperceptual bit of cognitive load that nevertheless can be fatiguing.

                                                                                                                                                    1. 2

                                                                                                                                                      I think good animations are ‘invisible’, but bad ones aren’t. So people remember the bad more than the good.

                                                                                                                                                2. 3

                                                                                                                                                  UI animations can be done well

                                                                                                                                                  Absolutely. I love the subtle animations in iOS. Like when I long-press on the brightness slider to access more controls like the dark mode toggle. I’m already making an action that takes more time than a simple tap, and the OS responds with a perfectly timed animation to indicate that my action is being processed.

                                                                                                                                                  On the other hand, animations can be very easily abused. Plenty of examples, like today’s Grumpy Website post, show animations that hinder accessibility. I think the cases where animation goes wrong are where it was thrown in only because “it’s modern” rather than primarily as a means to convey information.

                                                                                                                                                3. 15

                                                                                                                                                  I respectfully disagree with your opinion about animations. There are lots of times when I genuinely feel that the animation is important and actually conveys information. For example, the Exposè-style interface in macOS and GNOME is much better since the windows animate from their “physical” locations to their “overview” locations; the animation provides important context about which windows went where, so your eyes get to track the moving objects. It also helps that those animations track your finger movements on the trackpad perfectly, with one pixel of movement per tiny distance travelled across the trackpad (though the animation also has value when triggered using a hotkey IMO).

                                                                                                                                                  But there’s definitely a lot of software which over-uses animations. The cardinal sin of a lot of GUI animations is to make the user wait for your flashy effects. A lot of Apple’s and GNOME’s animations do fit this description, as well as arguably most animations in general. So I think a GUI framework needs a robust animation system for when it’s appropriate, but application programmers must show much more discretion about when and how they choose to use animations. For example, I’m currently in Safari on macOS, and when I do the pinch gesture to show an overview of all the tabs, I have to wait far too long for the machine to finish its way too flashy zoom animation until I actually get the information I need in order to interact further.

                                                                                                                                                  1. 6

                                                                                                                                                    Bad news, even smooth scrolling is a kind of animation.

                                                                                                                                                    1. 2

                                                                                                                                                      I’ll admit, this is an improvement in the browser. Bumping my counter to one case of a useful animation.

                                                                                                                                                    2. 3

                                                                                                                                                      What does this even mean? Win32/X11/Qt/GTK+ are all async by their sheer nature.

                                                                                                                                                      Not really. It is very easy to block the event loop with various other calls (including things like clipboard which like the thing said is async under the hood on X, but qt and gtk don’t present it that way). The gui thing needs to have some way for other operations to hook into the event loop so you can avoid blocking.

                                                                                                                                                      Not terribly difficult but still you do need to at least think about it, it isn’t fully automatic. (Even on Windows, where it is heavenly bliss compared to unix, you do still need to call a function in your loop like SleepEx to opt into some additional sync processing.)

                                                                                                                                                      1. 2

                                                                                                                                                        GTK+ does present clipboard retrieval asynchronously, see https://docs.gtk.org/gtk3/method.Clipboard.request_contents.html which contains a callback argument–that much I remember. Setting clipboard contents can be done blindly, you can have ownership snatched at any moment.

                                                                                                                                                        Going the way of recursive event loops requires caution that I would avoid imparting on users as much as possible, in particular because of callbacks vs state hell. Typically, this is reserved for modal dialogues, and the API user knows what they’re dealing with.

                                                                                                                                                        There’s also the possibility of processing the event pump selectively, though that’s another thing you don’t want to do to yourself.

                                                                                                                                                      2. 1

                                                                                                                                                        Want to make your phone faster? Disable animations!

                                                                                                                                                        This is generally the point of animations as a UX feature - they mask the slow operation of applications with a silly animation to keep you distracted/indicate a process is occurring. Want to notice when your app is using a jpeg to pretend it’s loaded? Disable animations!

                                                                                                                                                        1. 21

                                                                                                                                                          It’s not only that. The human visual system is very good at tracking movement, much worse at noting that a thing has disappeared and reappeared. If a thing disappears, you’ll typically notice quickly but not immediately be aware of what has disappeared. If you animate movement then there’s lower cognitive load because a part of your brain that evolved to track prey / predators is used rather than anything related to understanding the context of the application.

                                                                                                                                                          1. 4

                                                                                                                                                            This is it exactly. The human visual system evolved in a world where things don’t instantly flicker out of existence or appear out of nothing.

                                                                                                                                                          2. 2

                                                                                                                                                            I don’t think OP is talking about things like progress bars and spinning indicators, which are pretty legitimate everywhere, but things like “gliding” page transitions between application screens. If a framework is indeed so slow that you notice it rendering widgets, an animation API will help now and then, but won’t make that big a dent. (Edit: also, unless you’re loading things off a network, loading JPEGs cannot be a problem anymore, it hasn’t been a problem in twenty years!)

                                                                                                                                                            I do think this piece could’ve been more aptly titled “so you want to write a GUI framework for smartphones”. Animations are important on touch screen driven by gestures (e.g. swiping) – gestures are failure-prone, they need incremental feedback and so on, plus nobody who’s not high on their 2013-era post-PC supply expects efficiency out of phone UIs.

                                                                                                                                                            But they are pretty cringy on desktop. E.g. KDE’s Control Center (and many Kirigami apps) has an annoying misfeature, where you click “back” and the page moves out of view as if you’d swiped it. But you didn’t swipe. Regardless of what you think about animation, it’s not even the right animation.

                                                                                                                                                            That’s why so many people see them as useless eye candy. If you go all Borg on it and only think in absolute terms, you get a very Borg user experience.

                                                                                                                                                            Edit: yes, I know, “a modern GUI toolkit” should have all these things. The point is you can drop a lot of them and still write useful and efficient applications. Just because Google is doing something on Android doesn’t mean everyone has to do it everywhere.

                                                                                                                                                            1. 3

                                                                                                                                                              It’s funny you mention page transitions. I have my ebook reader set up to do a 200ms-ish animation when I tap the ‘next page’ button where the current page slides off to the left and the next one slides in from the right. It has an option to disable it, but I actually find that disorienting in this vague way I can’t explain. But on my desktop, it’s fine with no animations.

                                                                                                                                                            2. 1

                                                                                                                                                              Empirically, that is not how it’s used. This masking is a minority of use cases, and even then it’s bad. To some people that aren’t me, it might be better described as “eye candy” and “smoothness”.

                                                                                                                                                              Being able to disable this irritation is being lucky, e.g. it’s CSS-hardcoded in Firefox and GTK+ (/org/gnome/desktop/interface/enable-animations only works partially).

                                                                                                                                                            3. 1

                                                                                                                                                              What does this even mean? Win32/X11/Qt/GTK+ are all async by their sheer nature.

                                                                                                                                                              I think they’re talking about Rust async, since this is all in the context of writing a cross-platform GUI toolkit in Rust. This is more of a problem than it seems because if you’re doing a cross-platform toolkit that uses native widgets, it’s not at all trivial to impedance-match whatever model the native widget toolkit uses behind the scenes with your toolkit, which exposes an async model.

                                                                                                                                                              (Edit: there are some additional complications here, too. For example there are toolkits that (generally) async, but still do some operations synchronously. The author mentions the copy-paste API as an example.)

                                                                                                                                                              One might conclude that it’s better to not do any of that and instead expose the platform’s intended programming model, as second-guessing thirty year-old code bases tends to backfire spectacularly, but maybe I’m just being grumpy here…

                                                                                                                                                            1. 1

                                                                                                                                                              This basically boils down to good programming and clarifying interface boundaries. Prefer naming things over sprinkling anonymous functions around. The react hooks used in the examples provide no benefit and actually slow the code down.

                                                                                                                                                              1. 63

                                                                                                                                                                I consider myself somewhat of an outsider to the Racket community, but I was invited to be a speaker at RacketCon 2019. I fondly remember nearly everyone being friendly and accepting, with the exception of Felleisen. There were several discussions about how to make the community more inclusive, but he was dismissive these efforts and kept saying everything’s fine as it is.

                                                                                                                                                                1. 22

                                                                                                                                                                  Just weighing in that I was also at that conference and can confirm.

                                                                                                                                                                  Also, shortly after, on the Racket mailing list there was a thread about a very different topic (syntax stuff which had been discussed at RacketCon) and I only barely mentioned the word “diversity” in passing but that was enough to seemingly make Matthias upset. I still don’t understand that response… I found it very disturbing, and still do.

                                                                                                                                                                  Racket is a really amazing community in general with an incredible ecosystem around it. I have also had some pleasant conversations one on one with Matthias; I also respect his contributions to CS (particularly in terms of the work on delimited continuations). However, I know it hasn’t been easy for everyone around him, especially some of his students. I wish that weren’t true… for his students’ sake, for the Racket community’s sake (which again, has otherwise been very wonderful in my experience), and even for Matthias’s sake.

                                                                                                                                                                  1. 13

                                                                                                                                                                    From that thread:

                                                                                                                                                                    (And for the record, you have no clue what my political views are or how I deal with the diversity of individuals in this community.)

                                                                                                                                                                    As an outsider to all of this, I suspect that this single response gives me a pretty clear idea.

                                                                                                                                                                    1. 7

                                                                                                                                                                      Also as an outsider - you should read some of the stuff on his personal site. I’ve read a bit, and it looks like he’s a run of the mill US Conservative, bristling at a lack of political and philosophical diversity in big tech.

                                                                                                                                                                      I think his politics are orthogonal to his behaviour towards Butterick, for which he has apologised.

                                                                                                                                                                      Worth noting too that the apology seems genuine, and isn’t crouched in “I’m sorry if you took it that way” weasel words.

                                                                                                                                                                      1. 8

                                                                                                                                                                        Worth noting, sure, it’s good he apologized. I also note this only happened as a result of a pretty widely circulated blog post. A lot of other people reported the same thing about his behaviour, but they don’t get an apology.

                                                                                                                                                                        1. 5

                                                                                                                                                                          Okay, so let’s see if anything changes.

                                                                                                                                                                          Anecdata for sure, but I’ve seen people in tech leadership make very big, worthwhile changes in their approach to people after receiving feedback like this.

                                                                                                                                                                          Surely a great outcome here would be a public apology to the public complaint, and a genuine change of behaviour?

                                                                                                                                                                          It’s way too soon to write that off as a very real possibility.

                                                                                                                                                                          1. 2

                                                                                                                                                                            While I’m not holding my breath, I very much wish that would happen.

                                                                                                                                                                        2. 4

                                                                                                                                                                          While there are assholes of all political persuasions there does seem, anecdotally, to be a set of people whose toxic personalities mesh with certain parts of US conservative culture. There’s a focus on the individual rather than the group that has value in many contexts but can be harmful in open source projects.

                                                                                                                                                                          1. 5

                                                                                                                                                                            Well, sure, but again that’s completely irrelevant to the conversation at hand.

                                                                                                                                                                            I might as well observe that, anecdotally, I’ve seen more of the “virtue-signalling purity-testing schism creator” asshole type in US liberal circles.

                                                                                                                                                                            Also true, also not true of the vast majority of liberals, and also irrelevant to the topic.

                                                                                                                                                                            1. 3

                                                                                                                                                                              I know we’re way off on a tangent here, and so in terms of the broader conversation about the racket community and dealing with leaders i mostly agree with you that in this specific instances of bullying described in the blog post, Felleisen’s politics aren’t terribly relevant. But in terms of the anecdote @paroneayea raised, Felleisen’s politics are in scope since he explicitly chose to transform “diversity” into “politics” and then reject politics as off topic… which is a pretty impressive 180 from free-speech trolling his students by posting James Damore’s memo on his office door.

                                                                                                                                                                      2. 4

                                                                                                                                                                        It’s nice to see Bradley Kuhn pop up on my screen every so often. Every time he does, I think more highly of him.

                                                                                                                                                                    1. 3

                                                                                                                                                                      Lobsters isn’t write-only. Submit other stuff, too, or comment on other people’s submissions.

                                                                                                                                                                      EDIT: wait a sec, this article is from March. You’ve published ten things since then, and your Lobsters submissions are just in reverse chronological order. Are you just posting your entire archives to Lobsters? Is this just a inbound channel?

                                                                                                                                                                      EDIT2: From your homepage:

                                                                                                                                                                      I give you the strategy, technology, and skills to become a trusted brand […] Marketing gurus are a dime a dozen. My approach is different – think of me as a sparring partner who will sharpen your skills and plan your attack. We’ll work together to create a cohesive strategy, technology and tools that inspire long-term connections and fuel sustainable growth. It’s about trust. It’s about reputation. It’s about telling your story in a way that gets results.

                                                                                                                                                                      1. 2

                                                                                                                                                                        Lobsters isn’t write-only. Submit other stuff, too, or comment on other people’s submissions.

                                                                                                                                                                        I don’t understand: why can’t a user submit their own content exclusively, as long as the submissions are of high quality? From my perspective, well-received self-marketing materials are still a contribution to the community, even if the author themself may benefit from the submission.

                                                                                                                                                                        1. 3

                                                                                                                                                                          It’s not a hard and fast rule.

                                                                                                                                                                          @hwayne is doing OP a favor by giving them a heads-up.

                                                                                                                                                                          1. 3

                                                                                                                                                                            Good question. From Mitigating Content Marketing:

                                                                                                                                                                            We now consistently average over 20k visitors per weekday. Programming is an enormous, growing, lucrative, powerful industry and thus a very expensive demographic to advertise to. A link on our homepage sends traffic that would otherwise cost $15-30k on Twitter, AdWords, or LinkedIn.

                                                                                                                                                                            When this is sending attention to celebrate someone advancing the state of our understanding or sharing what they’ve created, it’s the internet at its best as gift economy. Unfortunately, some people see the site as a handful of rubes naively standing around a money fountain, so why not try to take a taste?

                                                                                                                                                                            People who are only submitting their own content exclusively are overwhelmingly (not entirely, but overwhelmingly) bad-faith actors who are just using us for free advertising. People who are commenting or submitting other stuff are at least making an effort to participate in the rest of the community.

                                                                                                                                                                            I’m being a bit harsher with this comment, because I was more polite with my comment on his previous story:

                                                                                                                                                                            Welcome to lobsters! Generally we encourage people to post and comment on articles they haven’t written, too, to participate more in the community.

                                                                                                                                                                            So either he’s not reading comments, which means he’s just spamming, or he read my comment and doesn’t care, in which case he’s bad-faith.

                                                                                                                                                                            1. 4

                                                                                                                                                                              Hey, I am verry sorry that my actions were seen as spammy behaviour, that was not my intention at all. I’ve been reading the philosophy section of lobsters for years and just wanted to contribute a few ideas myself.

                                                                                                                                                                              I’ll try to submit some other interesting links as well in the future and try to be more active with the comments.

                                                                                                                                                                              Thanks

                                                                                                                                                                              1. 3

                                                                                                                                                                                People who are only submitting their own content exclusively are overwhelmingly (not entirely, but overwhelmingly) bad-faith actors who are just using us for free advertising.

                                                                                                                                                                                Sure, but let’s not confuse heuristics with what those heuristics are trying to detect. This particular case feels suspect to me, since the site features a few CTAs for paid services. But I think it’s important to point out that it’s not inherently a bad faith action to only post articles to your own blog. The issue is when the content is trying to make a sale. There’s clearly grey area between “good faith posting of excellent content that only I have written” and “posting on your forum in order to sell you something”. And since we can’t read minds, I think that:

                                                                                                                                                                                Submit other stuff, too, or comment on other people’s submissions.

                                                                                                                                                                                …demanding engagement from someone like this seems unnecessarily hostile, setting a negative tone for newcomers. Why not just flag as spam, provide the feedback, and then let the mods take action if needed? For example, “you seem to only be posting links to your blog which is also trying to sell me services. this isn’t a place for content marketing, and people get banned for it pretty regularly. check out this post for background”

                                                                                                                                                                                1. 5

                                                                                                                                                                                  For example, “you seem to only be posting links to your blog which is also trying to sell me services. this isn’t a place for content marketing, and people get banned for it pretty regularly. check out this post for background”

                                                                                                                                                                                  Man, that’s much better copy. Strikes the right balance of polite without being too “nice”. Gonna use that instead from now on

                                                                                                                                                                          1. 32

                                                                                                                                                                            derek-jones claimed that experiments on unwitting participants were acceptable because Nazis gained valuable data in murderous experiments. antt literally wrote “Gotta hand it to them” for killing fewer people in the Holocaust than big tobacco, whose critics were denounced as Nazi-like. Neither permitted a sarcastic, satirical, or other reading.

                                                                                                                                                                            I’m sorry I wrote flippant ban messages, you’re entirely right that they’re not useful. I was shocked and horrified by the comments and I reach for black humor as stress relief in shitty situations. But me throwing up my hands at the awful absurdity of someone publicly going to bat for Nazis isn’t useful for setting site norms or conveying the seriousness of the situation.

                                                                                                                                                                            I’m not OK with continuing to publish these comments praising Nazi atrocities or downplaying the Holocaust. They’re so repugnant that there’s no potential learning value like there could be when a comment crosses a line like “language Foo is bad” to “you, fan of language Foo are bad”.

                                                                                                                                                                            As to leaving up other final messages before bans, I think only sockpuppet voting rings and the guy who posted about how bitcoin is like a handjob have gone from totally off my radar to banned in a single post. The overwhelming majority of bans, it’s someone who’s been getting heavily flagged over a period of time and had multiple DM conversations with a mod about what’s not acceptable. The last message before a ban isn’t special, it’s the last straw of a pattern of abuse that I try to explain in the ban message. I often revise these in IRC between me, @Irene, and the two chat mods, @355e3b and @aleph for clarity, but the final wording is always my responsibility. I haven’t gotten many questions asking for further explanation so it seems like this is going OK.

                                                                                                                                                                            1. 6

                                                                                                                                                                              I think it’s important to note that there wasn’t exactly a pattern in comments by that user, that I saw–and frankly with you saying “Neither permitted a sarcastic, satirical, or other reading.” after trashing the source material none of us will ever know.

                                                                                                                                                                              I can think of several ways of stating some similar sentiment about that odious medical research, ranging from “Dr. Josef did nothing wrong” at one extreme all the way to “There is perhaps the tiniest comfort that the unjust and inhumane suffering inflicted on uninformed and unwilling participants was not completely in vain: post-war reactions to this experimentation started a massive shift in ethics for medical research and norms.” Without the source comment, there’s no way for us to know.

                                                                                                                                                                              Locking subthreads (or even just a “We’re not here to litigate the Holocaust, this is off-topic, stop or get banned.”) would probably be a better way of handling it in the future.

                                                                                                                                                                              1. 12

                                                                                                                                                                                Maybe I’m weird, but I’m of the opinion that we shouldn’t be waiting for someone to demonstrate they are a repeat offender in playing-down-the-holocaust for them to receive a ban.

                                                                                                                                                                                1. 3

                                                                                                                                                                                  The question is all about intent IMO: did they intend to downplay the Holocaust, or did they phrase a point in a bad way? There’s even room for accidents: I’ve sometimes made posts where I accidentally omitted a word like “not” which means what I wrote was the exact opposite of what I wanted to say. My original reading of derek-jones’ comment was that they said Nazi experiments were unethical, although reading it again carefully they may have actually said it’s a good thing. Is that what they intended to say? I don’t know…

                                                                                                                                                                                  In principle I agree with your point. I’ve kicked up fuss in the past about this sort of thing (I spent a lot of time trying to change that site, both publicly and less publicly, I ended up just deleting my account as it had no effect, literally worst site in SE network ever). In that case there was 0 doubt, but sometimes it’s not so clear what exactly was intended.

                                                                                                                                                                                  That’s the problem I have from operating on a single data point. Perhaps it’s naïve to a degree, but I’d rather be a tad naïve than see a Nazi every time someone says something stupid. On the other hand, I’d also rather have the occasional overzealous ban that ever deal with anything even close of that fucking cesspool of Politics SE again where literal Nazis and other outright assholes were given 90 chances before getting a short ban after which the cycle all started over again.

                                                                                                                                                                                  1. 1

                                                                                                                                                                                    I appreciate your thoughts. I think we basically have a moral disagreement.

                                                                                                                                                                                    The question is all about intent IMO

                                                                                                                                                                                    Whereas I feel pretty strongly that it’s only a little bit about intent. A culture that assumes good faith in people that say borderline nazi stuff seems, at best, naive enough to unwittingly shift the Overton window in a direction that makes more room for it, and the annoying trolls that stuff it into tired faux-rational multi paragraph comments. I’m not interested in hanging out in that kind of space. It’s immature, good people leave, and it gets more trolly, childish, and reactionary over time.

                                                                                                                                                                                    Perhaps it’s naïve to a degree, but I’d rather be a tad naïve than see a Nazi every time someone says something stupid.

                                                                                                                                                                                    I know what’s you’re getting at. This reads as handwavy to me, so let’s be precise because it’s important not to distort what has actually taken place in favor of what’s happening in hypotheticalland. What actually occurred, if we’re talking about yesterday’s ban, was someone saying something to the effect of ‘gotta hand it to the nazis’ because they didn’t kill as many as the smoking industry.

                                                                                                                                                                                    So the comment wasn’t only “something stupid”, but specifically invoked nazis being ‘not as bad as’ something else. Even if they’re true in some narrow sense of number of deaths or injuries, do they have to be a literal card carrying nazi to be a malignant asshole that invokes nazis-as-less-harmful-than and ought to leave?

                                                                                                                                                                                    1. 6

                                                                                                                                                                                      Or just a bad way of phrasing and not what they actually intended to say? Or maybe it wasn’t and they’ll be at a KKK rally this evening. It’s likely we’ll never know for certain. Either way, I’m not going to come to any sort of conclusion based on a single data point. I always find it a bit disturbing how casual these things are flung around. At this point anything is “hypotheticalland” because all we have is a short statement that, on the face of it, of course aren’t good, but not everything is always what it appears at first sight.

                                                                                                                                                                                      (I apologize for the length of this post by the way; it’s really as short as I can make it while still accurately and clearly explain my views, at least, I hope it’s clear. It’s not something I can explain in three or four paragraphs; perhaps if I was a better writer, but unfortunately I am not.)

                                                                                                                                                                                      In my experience it’s actually really easy to find these sort of things out: just talk to them. The innocent will reply with “oh, I’m so sorry, I didn’t intend it like that!” and all is fine and we can continue as we were. The actual Nazis will almost always double down. I’ve also had this happen with a friendly mod messages I sent years ago: “hey, I deleted that because it came off as insensitive and vaguely racist because [reasons], I appreciate that wasn’t your intention but please be a bit more careful in how you phrase it in the future, cheerio!” And I got a reply saying it absolutely was their intention followed by some long rambling racist screed trying to convince me that The Jew is actually running the show and that a Goyim like me shouldn’t be fooled, or … something. I didn’t bother to read it but thanks for clearing that up; hold on while I revisit my earlier decision to just send a warning and never speak to you again. That’s also what happened in that SE thread I linked, where the Nazi ass started referring to the Holocaust as an “alleged historical event” right in the public thread calling out his anti-Semitism and calling for him to be banned, which finally netted him his long-deserved ban.

                                                                                                                                                                                      Crackpots in general just love to talk about their crackpottery to anyone who shows vague interest in it (of even to those that don’t); Nazis are rarely an exception.

                                                                                                                                                                                      And to be clear: we absolutely shouldn’t tolerate these posts or people that consistently make them. They should be deleted and the users sent a message this wasn’t appropriate. No disagreement on that. A second similar offence after the warning can just result in a ban because at that point we’re past the point of “maybe it was just a stupid moment” and a pattern has been established (tangentially related previous post](https://lobste.rs/s/zp4ofg/lobster_burntsushi_has_left_site#c_xodjgg)). I don’t think there’s much risk of shifting the Overton window, and I also don’t think we have that much of a moral disagreement as I am absolutely not in favour in making Lobsters a space where Nazis are somehow tolerated; I have argued before we should ban known Nazis even if their on-site behaviour on Lobsters is unobjectionable. I also wouldn’t want to hang out in this kind of space, like you, and would leave as I did on the Politics SE site in spite of being one of the top users in the years I participated (a somewhat sad affair, as I really like the premise of the site, which is fairly unique AFAIK, and spent a lot of time trying to make it work).

                                                                                                                                                                                      Do I have patience or “tolerance” for Nazis or anything vaguely in that direction? No, absolutely not, and I will spend active effort to address any such issues, as demonstrated. But at the same time I’m also hesitant to jump to conclusions; I don’t think any of that is “handwavy”, I’m careful with this exactly because I take it very serious. The more serious an allegation, the more careful I am. And “Nazi” is pretty darn serious as far as I’m concerned.


                                                                                                                                                                                      Also, as an additional point, not everyone lives in the same context and culture; and not everyone has the same sensitivities.

                                                                                                                                                                                      I lived in Cork, Ireland for a while. One of the houses in my street had a confederate battle-flag in their window. I thought this was just the oddest thing, why would anyone in Ireland have such a stupid thing? Are you so racist that you’re now fighting for the “states rights” to keep slaves of a country you don’t even live in?

                                                                                                                                                                                      Then I realized it may actually be something entirely different. Cork is the “rebel city”, referring to a rebellion against the English in medieval times. It’s a common nickname and there’s loads of references to “rebel” in Cork. Maybe … it was just a matter of “Rebel city? Rebel flag!” and they didn’t really understand the full context? I think it’s likely. I used to watch the Dukes of Hazards on TV as a kid, and for a long time I thought that the confederate battle flag was just the logo for the “General Lee”, which seemed like a really odd name for a car, but whatever. Only much later sometime in my 20s did I realize that actually, this was the Confederate battle-flag, and that “General Lee” referred to General Robert E. Lee. Do’h! And after that it took me some more years to really understand the history of the US and the civil war and that the Confederacy was actually really bad. I absolutely could have said something insensitive, perhaps even “borderline nazi stuff” at this point, simply because I didn’t really know what I was talking about back then on account of not being from the US.

                                                                                                                                                                                      I watched The Death of Stalin with my Indonesian girlfriend some time ago, which parodies the death of Stalin and ensuing rat race for the leadership. At some point mid-film she asked me “Stalin was the leader of Russia for a while right?” and “did he really kill that many people? Did that really happen?” She’s not stupid, far from it, but those kind of things are mostly just not a thing here. Similarly, I’ve talked to plenty of people (including her) who don’t really know all that much about Nazi Germany or Hitler. Hell, I know someone who named their son “Adolf”. I chocked in my drink at first, but then she explained that he’s named after her Dutch grandfather (Adolf was a common-ish name before that failed Austrian painter ruined the name together with an otherwise perfectly serviceable style of moustache). “Oh yeah, Adolf Hitler, he was this leader in Europe right?”

                                                                                                                                                                                      Indonesia was occupied by the Dutch and Japanese, not the Germans. That’s what they learn about in history lessons. I didn’t get any history lessons about the Japanese in WW2 either, because for my country it wasn’t really a thing (other than leading to Indonesian independence, on which I did get quite a lot of on account of being Dutch and the colonial history).

                                                                                                                                                                                      Every culture has their own sensitive topics. For a lot of us, it’s almost inconceivable that someone doesn’t know about the atrocious Nazi history and doesn’t consider them to be pretty much the epitome of evil. But if you go beyond the “western cultural bubble” then it quickly becomes a lot more murky. I’m not trying to make some cultural relativism point or say that we need to respect all sensitivities equally because then we would also have to ban anything “blasphemous” or in favour of gay rights, and of course we shouldn’t allow offensive stuff just because someone is from, say, Indonesia. I’m just saying that “borderline nazi stuff” and such may not always be what you think it means at face value.

                                                                                                                                                                                      Whether any of this is applicable here: who knows. But this is another reason I tend to be careful.

                                                                                                                                                                                      1. 3

                                                                                                                                                                                        Whereas I feel pretty strongly that it’s only a little bit about intent.

                                                                                                                                                                                        I don’t think this makes sense if one thinks about it for more than a second. Ignoring intent tends to make it easier to hurt people who make honest mistakes or borderline cases, and makes it harder to deal with clever bad actors who follow house rules…and that’s before we even get into deeper philosophical questions.

                                                                                                                                                                                        A culture that assumes good faith in people that say borderline nazi stuff seems, at best, naive enough to unwittingly shift the Overton window in a direction that makes more room for it, and the annoying trolls that stuff it into tired faux-rational multi paragraph comments. I’m not interested in hanging out in that kind of space. It’s immature, good people leave, and it gets more trolly, childish, and reactionary over time.

                                                                                                                                                                                        This exact same case can (and is) made for the takeover of spaces by “SJWs”, communists, and other radicals. It’s a valid critique that cuts both ways–and opening the Overton window is essential to have a functioning marketplace of ideas.

                                                                                                                                                                                        What actually occurred, if we’re talking about yesterday’s ban, was someone saying something to the effect of ‘gotta hand it to the nazis’ because they didn’t kill as many as the smoking industry.

                                                                                                                                                                                        You’ve done a bit of a bait-and-switch here…I was referring specifically to the @derek-jones case (even linking to their profile). You seem to be referring to the @antt case, which even a casual reading of the comments suggests was trending towards some weird off-topic behavior even if it they weren’t going to go all nazi (and who knows, the comment pattern suggested that might have been the case). I’ll also note that, with the WHO reporting 8 million deaths a year, @antt wasn’t factually incorrect–but the comment history signals intent, which under your professed view we must discount.

                                                                                                                                                                                        Even if they’re true in some narrow sense of number of deaths or injuries, do they have to be a literal card carrying nazi to be a malignant asshole that invokes nazis-as-less-harmful-than and ought to leave

                                                                                                                                                                                        It’s not some narrow sense–if you believe the WHO’s numbers and you believe the Holocaust numbers then yes, the cigarette industry is literally 10x worse than the Nazis. They’re probably even worse than that, given the number of Nazis-per-death versus the tobacco-executive-per-death–unless you want to make the argument, as some have and some will, that even a single life of the chosen people (here Jews, but others can and have made the argument for Muslims, Christians, Blacks, gays, , etc.) is unforgivable; that all deaths are equally incalculable losses; that deaths due to consumer choices are not the same as deaths due to murder; or whatever else.

                                                                                                                                                                                        That’s prima facie a valid discussion to have–if you have even a slight philosophical bent–but it sucks the air out of the room and the normative ethics of taking human life isn’t something that Lobsters as a community either has space for or the tools to do without kicking up a lot of dust.

                                                                                                                                                                                        Why work this example? @antt was correct in their observations, but again the inferred intent (based on multiple posts, at least one of which is still available to read) was being a nazi shithead, and we judge them on that.

                                                                                                                                                                                        @derek-jones had one post which we can’t even refer to anymore, and didn’t seem to have any history of this behavior.

                                                                                                                                                                                        I for one would prefer a community where we at least try to understand intent–going by surface-level signalling is woefully insufficient and unjust.

                                                                                                                                                                                        1. 2

                                                                                                                                                                                          That’s prima facie a valid discussion to have

                                                                                                                                                                                          Maybe, but not on this site.

                                                                                                                                                                                          1. 2

                                                                                                                                                                                            Agreed, as evidenced by the rest of the sentence. :)

                                                                                                                                                                                            1. 3

                                                                                                                                                                                              True, I misread the rest of the sentence. Sorry!

                                                                                                                                                                                2. 5

                                                                                                                                                                                  Thank you. I believe that this is the kind of moderation we need.

                                                                                                                                                                                  1. 4

                                                                                                                                                                                    I’m sorry, the ban message wasn’t bad per se. My criticism to it was because without the context of the comment, I thought it was a generic pre-written reason

                                                                                                                                                                                    1. 3

                                                                                                                                                                                      In my eyes your reasoning and reactions were good. I imagine it’s tough continuously having to assess potentially bad contributions. Well done.

                                                                                                                                                                                    1. 10

                                                                                                                                                                                      This was the second time in about a week that the banned user used a weird analogy where tobacco companies called critics of smoking Nazis:

                                                                                                                                                                                      https://lobste.rs/s/prlffn/urbit_good_bad_insane#c_mqlafh

                                                                                                                                                                                      The deleted comment repeated that, and implied that the “fat acceptance movement” caused deaths, linking them to Nazis somehow?

                                                                                                                                                                                      The banning of the user and the deletion of the comment were related but separate.

                                                                                                                                                                                      1. 14

                                                                                                                                                                                        (Cw)

                                                                                                                                                                                        Not only that, they specifically compared the deaths caused by nazis to the number of deaths caused by big tobacco in what I can only imagine was either a brazen defense of one of the worst human rights violations in history let alone recent memory, or more likely shameless flame baiting, since they decided to mention nazis, tobacco, and “fatness” all together, while denouncing the “culture war” in the same breath. If that’s not textbook trolling, I’m not really sure what is.

                                                                                                                                                                                        Anyways I’d consider keeping the comments around, but in a place that requires just enough digging so that people don’t accidentally run into particularly toxic content.

                                                                                                                                                                                        On second thought I think I’d prefer keeping the comments removed, but with a more precise summary / context on what line it crossed. It’s a bit weird to allow for a trolls crowning achievement to live on in perpetuity, but we also want to have enough info to have confidence in a ban being appropriate.

                                                                                                                                                                                        1. 5

                                                                                                                                                                                          This famous historian of science named his book on the tobacco industry “Golden Holocaust”, sounds like Stanford should ban him for making a comparison https://history.stanford.edu/publications/golden-holocaust-origins-cigarette-catastrophe-and-case-abolition

                                                                                                                                                                                          1. 10

                                                                                                                                                                                            Arguably insensitive, but offset somewhat by the fact that it’s a serious work of scholarship? The author’s intent is clear.

                                                                                                                                                                                            It does not sound like this poster’s comment was a serious work of scholarship.

                                                                                                                                                                                            1. 2

                                                                                                                                                                                              If all comments should be possible to back up with a serious work of scholarship, we should all be banned.

                                                                                                                                                                                            2. 7

                                                                                                                                                                                              There is a serious legitimate point to be made here; the Nazis were anti-smoking, although not always for the right reasons (”The Jew uses cigarettes to destroy us!”), and this connection has been abused to deflect criticism.

                                                                                                                                                                                              But the location and way it was done was … less than ideal. In particular the Genocide Olympics of “kill[ed] more people than the holocaust” just comes off as weird and dismissive of the Holocaust. The comment for which they got banned was even worse with “Gotta hand it to them [the Nazis], they killed fewer people with the Holocaust than big tobacco did”. It’s one thing to say “this is horrible, it killed even more people than the Holocaust!” and quite another to say “gotta hand it to them, at least they didn’t kill as many people as […]!” I didn’t read that book, but I’d wager it used the “this is horrible, it killed even more people”-kind of rhetoric.

                                                                                                                                                                                              All of that being said, on the face of it I’d personally take a more good faith interpretation of being misguided and foolish rather than support of Nazis, but I don’t know if there’s any context/history with this user.

                                                                                                                                                                                              1. 3

                                                                                                                                                                                                Judging by Proctor’s Wikipedia page he’s long been interested in the anti-smoking campaigns of Nazi Germany, so no doubt the title is an allusion to that.

                                                                                                                                                                                                Edit this letter especially is an interesting read.

                                                                                                                                                                                          1. 110

                                                                                                                                                                                            Independently of what burntsushi decides, I think that the following concrete actions would be in order:

                                                                                                                                                                                            1. Remove the last half-sentence of the banner that explains how to delete your account. Having it as the last part of the message adds a lot of weight ot it: after you read the banner it’s the main thing you remember, the oddly detailed explanation of how to erase yourself.

                                                                                                                                                                                            2. Reformulate the rest of the banner to indicate that this is a heuristic that may be wrong. It’s important when providing hints from data to tell people explicitly that we know the hints may be wrong. Otherwise it feels very different.

                                                                                                                                                                                            Let’s rephrase this banner with the explicit goal of doing no harm (better, doing good) when it is wrongly displayed, instead of thinking about the formulation when its assessment is correct.

                                                                                                                                                                                            1. 59

                                                                                                                                                                                              Speaking as somebody who’s gotten that banner basically permanently on their account, I think a lot of folks here may be missing important context:

                                                                                                                                                                                              • The call to delete your account makes a lot of sense if you have to handle users dramatically declaring, in DMs/IRC/elsewhere “One more and [clutches pearls] I shall leave, forthwith!”. This is tiresome from a moderation standpoint and annoying for a community, and if one can nudge somebody into removing their account–in the common case!–rather than continue to engage in a community they don’t fit into (for whatever reason), it’s a win for both parties.
                                                                                                                                                                                              • This isn’t some randy sketchy heuristic–the warning links directly to a histogram that shows where you are in the flaggings. It’s deterministic, it’s impartial, and if you’re getting flagged a lot there’s something going on with either your posting or the community.
                                                                                                                                                                                              • Moderation team here is currently basically just @pushcx. It’s a large community with real, actual bad actors, and asking for any sort of increase in manual moderation is a very real burden.
                                                                                                                                                                                              • One of the biggest reasons for Lobsters coming from the orange site was @jcs being annoyed at opaque moderation. While I might disagree certain particular actions, there is a public log. The thing here being complained about? It’s in the source code, it’s very clear how it works, and it provides impartial, statistical feedback about what’s going on.
                                                                                                                                                                                              • There’s a trend for folks to go on IRC, Twitter, or wherever and talk trash about our community, about how @pushcx is powertripping, or whatever. This behavior probably plays well with the circles they’re familiar with and probably feels like punching up, but it’s gotta suck for the person who manages the community to have people he’s tried to work with and accomodate throw it back in his face.
                                                                                                                                                                                              • People are really flag-happy, and this is what happens when you are.

                                                                                                                                                                                              (Minor annoyance: we used to have a very good explanation of how to use flags, what borderline cases looked like, and so forth, but that was purged for whatever reason. I’ve seen a lot of bad flagging by either new folks who don’t know better or users with an axe to grind.)

                                                                                                                                                                                              1. 35

                                                                                                                                                                                                Moderation team here is currently basically just @pushcx. It’s a large community with real, actual bad actors, and asking for any sort of increase in manual moderation is a very real burden.

                                                                                                                                                                                                This bit deserves signal boosting IMO.

                                                                                                                                                                                                Lobsters doesn’t cost anything to join or participate in. The people who run it are clearly doing it for love, not money.

                                                                                                                                                                                                Speaking for myself I’d much rather get past the momentary ouch of having a red warning message attached to my account than have the owners or moderators rage quit as a result of feeling UTTERLY drained by the experience.

                                                                                                                                                                                                I’m watching the life get sucked out of some very stalwart well meaning people in another community I care about simply due to the sheer VOLUME of constant negative feedback, so I think we all owe it to the mods to suck it up and cut him/them some serious amounts of slack.

                                                                                                                                                                                                1. 22

                                                                                                                                                                                                  <3 Thank you very much.

                                                                                                                                                                                                2. 24

                                                                                                                                                                                                  (Minor annoyance: we used to have a very good explanation of how to use flags, what borderline cases looked like, and so forth, but that was purged for whatever reason. I’ve seen a lot of bad flagging by either new folks who don’t know better or users with an axe to grind.)

                                                                                                                                                                                                  I would love to see this come back in some form. As someone who joined after that was removed, I feel there isn’t enough information about flags. Every single time I’ve ever flagged something, I’ve been really hesitant because I wasn’t able to find any guidance on what qualifies to be flagged.

                                                                                                                                                                                                  1. 3

                                                                                                                                                                                                    I agree. I actually don’t think this is so minor on its own though I can see why you phrased it that way in its original context.

                                                                                                                                                                                                  2. 23

                                                                                                                                                                                                    I realize I’m not as active as I might be - I’m bipolar, my ability to spend time on things comes and goes - but I promise that I do still pay active attention to the site and step in when it seems warranted. Also, the mod team has lots of discussions behind the scenes. Just because @pushcx is the face of a decision doesn’t mean the rest of us aren’t involved.

                                                                                                                                                                                                    I felt I should address that, since you mentioned it.

                                                                                                                                                                                                    Edit to add: Thank you for the kind words, overall. It’s helpful to know that you and others do see the point of the banner.

                                                                                                                                                                                                    1. 22

                                                                                                                                                                                                      People are really flag-happy, and this is what happens when you are.

                                                                                                                                                                                                      Speaking from experience as someone who’s moderated some decent-sized subreddits – where reddit has both the ability to downvote, and a separate ability to “report” for posts/comments that break subreddit or site-wide rules – this is absolutely the case. The number of people who just spam-click the “report” button thinking it’s some sort of super-downvote that will remove the thing they dislike is astounding. Same with people who periodically decide they just don’t like some type of content even if the subreddit generally allows it, and go mass-report a hundred posts to express their displeasure.

                                                                                                                                                                                                      1. 11

                                                                                                                                                                                                        Yeah, this is what I think is fundamentally the issue. A lot of people simply have no emotional control. They have strong believes but no ability to defend them. With that, when they see opinions they dislike, instead of engaging with a retort, they will use the report button. Perhaps in their mind, if the post was deleted, then the opinion no longer exists or is somehow invalid???

                                                                                                                                                                                                        I have gotten the banner too. I thought the words were harsh. But over the years I have noticed that some of my posts will follow the pattern of (+10 upvote, -8 troll), except the troll downvote count has increased over time. Based on this I assume that the general ratio of people on this site who like to report opinions they don’t like as troll versus people who are willing to engage in intelligent discussion has increased.

                                                                                                                                                                                                        People simply think people who disagree with them are either stupid, or trolling (deliberately saying stupid things hoping for a reaction) or both.

                                                                                                                                                                                                        1. 12

                                                                                                                                                                                                          A lot of people simply have no emotional control. They have strong believes but no ability to defend them. With that, when they see opinions they dislike, instead of engaging with a retort, they will use the report button.

                                                                                                                                                                                                          It’s also true that people sometimes repeatedly post tired nonsense, and that merely (and at obviously low cost) repeating something that’s poorly researched, or broadly offensive, doesn’t entitle the poster to a vigorous debate. Sometimes the use of a flag is the only viable option.

                                                                                                                                                                                                          1. 4

                                                                                                                                                                                                            If somebody posted some tired nonsense then it should be very easy to dispute.

                                                                                                                                                                                                            doesn’t entitle the poster to a vigorous debate

                                                                                                                                                                                                            You don’t have to reply. The issue here isn’t whether or not to reply but whether or not reporting is an appropriate response to somebody saying something that you think is wrong and the answer is no.

                                                                                                                                                                                                            Sometimes the use of a flag is the only viable option.

                                                                                                                                                                                                            Anybody could deem all your posts ‘tired nonsense’ and just report all of them? That is as legitimate as when you do it. Do you somehow think that your idea of what is tired nonsense is universal and therefore a good metric for when a post should be reported?

                                                                                                                                                                                                            1. 8

                                                                                                                                                                                                              If somebody posted some tired nonsense then it should be very easy to dispute.

                                                                                                                                                                                                              In the case of trolling, the whole point is to trick people into taking the bait, which I believe moves the subthread higher up in the scoring ranks.

                                                                                                                                                                                                              You don’t have to reply. The issue here isn’t whether or not to reply but whether or not reporting is an appropriate response to somebody saying something that you think is wrong and the answer is no.

                                                                                                                                                                                                              I think that detecting trolling is a skill that’s pretty key to the survival of a community, but a good troll will make it quite difficult to resist engaging. Trolling isn’t commonly overt, over the top rudeness. Way more often it is an attempt at looping other community members into a “debate” that ends up in people pointing edgy and charged hot takes at each other.

                                                                                                                                                                                                              In its worst form, it will promote socially harmful conclusions through pseudo-from-first-principles lines of reasoning that are aesthetically attractive to the type of people that visit tech forums. To dispute requires dissecting phony arguments, which at a glance, appears to legitimize the “debate” and grant the troll a certain level of community approval, especially if they’re good at giving off the appearance of rationalism. IMO ignoring and flagging this type of content is nowhere near what’s required fully address it.

                                                                                                                                                                                                              1. 3

                                                                                                                                                                                                                How are you not using an accusation of trolling as a free ‘You lose’?

                                                                                                                                                                                                                How do you know that something is true? It is via putting your ideas up for others to engage and debate. But you want to simply circumvent that by calling opinions you don’t like trolls, and then saying that those opinions don’t even need to be debated or engaged because that will legitimise it.

                                                                                                                                                                                                                Sooner or later instead of having attacking each other’s ideas so we can improve then, all we will end up doing is claiming the other side is ‘trolling’ so they are immediately wrong and don’t even need to be disproven.

                                                                                                                                                                                                                Why even bother defending your ideology against opposition, when you can simply claim the opposition is a foreign spy or a mentally ill person and then getting rid of them?

                                                                                                                                                                                                          2. 5

                                                                                                                                                                                                            I have gotten the banner too. I thought the words were harsh. But over the years I have noticed that some of my posts will follow the pattern of (+10 upvote, -8 troll), except the troll downvote count has increased over time. Based on this I assume that the general ratio of people on this site who like to report opinions they don’t like as troll versus people who are willing to engage in intelligent discussion has increased.

                                                                                                                                                                                                            Or maybe you’ve gotten more and more trollish over time.

                                                                                                                                                                                                            1. 5

                                                                                                                                                                                                              Or maybe we have too many politically driven ideologues who are not interested in communication and they simply throw the word troll around to avoid having to engage with their opposition on the idea plane.

                                                                                                                                                                                                              1. 9

                                                                                                                                                                                                                Nah, I’ve been around just about as long as you have, I can count on one hand the number of times I’ve not seen you be a troll in a thread. I don’t even know what technical subjects you have expertise in, since I’ve never seen you contribute technical insight to a thread. Pretty much all you do is get into fights around here.

                                                                                                                                                                                                                1. 3

                                                                                                                                                                                                                  Devil’s Advocate: Perhaps @LibertarianLlama is among a new breed of Lobsters who are also concerned with the human side of things, not just the technical one.

                                                                                                                                                                                                                  1. 2

                                                                                                                                                                                                                    I’ve not seen you be a troll in a thread

                                                                                                                                                                                                                    I suppose you are one of those people who have a very low margin for what constitutes ‘trolling’.

                                                                                                                                                                                                                    I don’t even know what technical subjects you have expertise in, since I’ve never seen you contribute technical insight to a thread.

                                                                                                                                                                                                                    I didn’t realise technical expertise in a subject is a requirement of using this website. Regardless you can just assume that I have no expertise in any subject.

                                                                                                                                                                                                            2. 6

                                                                                                                                                                                                              I wonder if a literal “super downvote” button would work as a psychological trick. It would act as a normal downvote, but just look like a bigger, angrier button that would absorb more anger from whoever clicks it. (At the same time, possibly rate-limit the actual report button per user…)

                                                                                                                                                                                                              1. 8

                                                                                                                                                                                                                That’s a pretty cute idea. I’m tempted to say that, for people who have the self awareness to realize that what they mostly need is catharsis, I recommend getting it from their favorite action videogame, or a trip to the gym or whatever… I don’t want to dismiss your idea though, it’s true that it could help to have some sort of reminder or prompt to seek catharsis.

                                                                                                                                                                                                                1. 3

                                                                                                                                                                                                                  Edit: someone has looked at the system and much of this is actually already automated(!): https://lobste.rs/s/zp4ofg/lobster_burntsushi_has_left_site#c_qiipbc

                                                                                                                                                                                                                  Previous:


                                                                                                                                                                                                                  OK, another cute - or hopefully even better - useful idea:

                                                                                                                                                                                                                  I think HN has a pr account setting that ignores flag from that user, I’m fairly certain dang has mentioned at some time that one should be careful with flags. (Now that I think about it it might have been the vouch option he was writing about.)

                                                                                                                                                                                                                  I’m not really sure how it would work with perfectly transparent moderation:

                                                                                                                                                                                                                  • would the user get a warning?
                                                                                                                                                                                                                  • or would it just show up in the moderation logs?
                                                                                                                                                                                                                  • maybe it is a fraction so if a user has 1/5 flag weight it takes more than 5 such users to flag before it counts as one ordinary user? Then the moderation log could still say “flagged based on user feedback” or whatever it say but omit the details about there being 10 flag abusers counting as two full votes and 3 ordinary users?
                                                                                                                                                                                                                  1. 11

                                                                                                                                                                                                                    Good thoughts. On Lobsters, if I know that a user is going to continue using flags vindictively, I would rather just ban them… of course, I’d talk to them first.

                                                                                                                                                                                                                    Automation in this sort of thing can be a false savings because if we set up a certain automated rule, we are implicitly sending the message that any behavior that falls within the rule is allowed. So in your example, I would expect to see users who intentionally stay just below the threshold for having their flags de-valued, as well as users who intentionally go past the threshold and flag in a wanton manner because they know that the punishment for doing that is just that their flags will have less numeric weight. Having it be a socially enforced rule, counterintuitively, can often lead to better behavior overall compared to having a technical enforcement mechanism.

                                                                                                                                                                                                                    1. 1

                                                                                                                                                                                                                      Good thoughts. On Lobsters, if I know that a user is going to continue using flags vindictively, I would rather just ban them… of course, I’d talk to them first.

                                                                                                                                                                                                                      Automation in this sort of thing can be a false savings because if we set up a certain automated rule, we are implicitly sending the message that any behavior that falls within the rule is allowed. So in your example, I would expect to see users who intentionally stay just below the threshold for having their flags de-valued, as well as users who intentionally go past the threshold and flag in a wanton manner because they know that the punishment for doing that is just that their flags will have less numeric weight. Having it be a socially enforced rule, counterintuitively, can often lead to better behavior overall compared to having a technical enforcement mechanism.

                                                                                                                                                                                                                2. 5

                                                                                                                                                                                                                  The moderators of r/TheMotte (a subreddit which has the best moderation IMO) observed pretty much the same:

                                                                                                                                                                                                                  No one who has seen a mod queue would be surprised by this. Even those of you who are always very calm and nonconfrontational, with middle-of-the-road opinions, might be shocked how often your posts are reported. Some of the most reasonable, unspicy posts get marked as “It’s targeted harassment.” Some people will report “Inflammatory claim without evidence” just because they don’t agree with the post.

                                                                                                                                                                                                                  I pretty much started brushing aside (like several other users reportedly do) the red warning that lobste.rs throws in your profile for this reason, as well as for that condescending final phrase “Reconsider your behaviour or take a break” which rests on the erroneous assumption of there incontrovertibly being sound rationality in this community’s flagging behaviour.

                                                                                                                                                                                                                  I have a theory that this became worse after the site removed the downvote functionality thus removing a potential anger-outlet for users, who have now shifted to channel that affective energy via flagging. This theory however can only confirmed by doing a simple analysis of the data (was there an increase in flagging right after disabling downvoting?)

                                                                                                                                                                                                                3. 12

                                                                                                                                                                                                                  It’s irrelevant that it is impartial if it is exploitable. Which it very much is.

                                                                                                                                                                                                                  So the system allows for a mob to harass an user into leaving the site, but you claim that it is important to note that anyone can be harassed. That is the matter subject to challenge here, not “important context”.

                                                                                                                                                                                                                  Yes people are trigger happy, for that reason, the flagging feature might be counter productive.

                                                                                                                                                                                                                  1. 5

                                                                                                                                                                                                                    you claim that it is important to note that anyone can be harassed.

                                                                                                                                                                                                                    I’m not sure I see where you got that from my post.

                                                                                                                                                                                                                    The ability of the mob to harass users here exists, and is exploited, at scale and quite apart from this notice that “yo, you’re getting a significant number of flags.”

                                                                                                                                                                                                                    It doesn’t make sense to optimize for people who run away when told others disagree with them.

                                                                                                                                                                                                                    1. 21

                                                                                                                                                                                                                      No one wants to be told they don’t belong here. I really enjoy Burntsushi and a system that is constructed that make it so people like that dont want to be here is a system that needs to be fixed.

                                                                                                                                                                                                                      Your response of “I don’t want people with a thin skin”, is itself thin skinned in the opposite direction.

                                                                                                                                                                                                                      1. 6

                                                                                                                                                                                                                        OK I see an important distinction here. I tried to point this out to burntsushi on Twitter.

                                                                                                                                                                                                                        If you read the message he got VERY carefully, it sets forth a very specific sequence of potential and suggested routes to mitigation. They are:

                                                                                                                                                                                                                        1. Take a breath. Take a break. Step away for a bit and think about whether maybe the problem might exist at least partly in your head and the resultant behavior you’re exhibiting in the community.

                                                                                                                                                                                                                        2. Talk to a moderator about the situation.

                                                                                                                                                                                                                        3. Then, and ONLY then, does the message point out that you can if you so choose also delete your account.

                                                                                                                                                                                                                        Having gotten the big red warning myself a ways back, I DO sympathize that it’s an ouchy thing to have happen in the moment, but I strenuously believe that the intent here isn’t to make anyone feel unwelcome. Just the opposite, my read of the intent is an earnest attempt on the part of the community to help people moderate their behavior, and if that’s not possible or applicable, to seek other options for mitigation.

                                                                                                                                                                                                                        1. 11

                                                                                                                                                                                                                          No one wants to be told they don’t belong here.

                                                                                                                                                                                                                          I’d agree, but we have done very poorly by some of our users in that regard already and the mob likes it that way. Remember that time recently the mods banned one of (if not the) current expert on evidence-based software engineering because of an off-hand comment touching culture war stuff? Peppridge farm remembers.

                                                                                                                                                                                                                          There are no shortage of Lobsters who will clack and freak out if made aware of anybody who doesn’t appear to be in their political tribe–and they’ll get even angrier if you suggest that maybe, possibly, we should focus on something else.

                                                                                                                                                                                                                          So, while I agree in principle with you, the community has through its actions demonstrated that it does not care.

                                                                                                                                                                                                                          Your response of “I don’t want people with a thin skin”, is itself thin skinned in the opposite direction.

                                                                                                                                                                                                                          I don’t believe that it is. You are, of course, welcome to your own interpretation.

                                                                                                                                                                                                                          1. 14

                                                                                                                                                                                                                            Remember that time recently the mods banned one of (if not the) current expert on evidence-based software engineering because of an off-hand comment touching culture war stuff?

                                                                                                                                                                                                                            IIRC he had a pattern of problematic behavior, and also I’m not sure how much of an expert in ESE he actually is: his book is overwhelming, but keeps giving me bad vibes. I’m struggling to explain what it actually is, but I’m really suspicious that there are serious problems with it.

                                                                                                                                                                                                                            1. 1

                                                                                                                                                                                                                              I’d definitely be interested to hear more.

                                                                                                                                                                                                                              I’m struggling to explain what it actually is

                                                                                                                                                                                                                              Mind giving it a try? I couldn’t see anything particularly bad (relatively speaking) in their comment history, nor anything related to the ban rationale. Seems like you’ve been paying more attention, haha

                                                                                                                                                                                                                            2. 14

                                                                                                                                                                                                                              There are no shortage of Lobsters who will clack and freak out if made aware of anybody who doesn’t appear to be in their political tribe

                                                                                                                                                                                                                              The basic problem with statements like this is that nearly everyone can feel it applies to the angry mob that’s disagreed with them.

                                                                                                                                                                                                                              Personally I’m on record as believing that there is no way to separate “politics” from what we do (simple example 1, simple example 2) or to write software without considering the impact it will have on people.

                                                                                                                                                                                                                              But I also see plenty of “oh woe is me, the cancel culture and the woke and the leftist and the SJW are taking over” stuff that gets left in place and even highly upvoted, which says to me that it’s not that people don’t want “politics”, it’s that their definition of what is and is not “politics” is at issue. The hypothetical guy (example 2 above) with no criminal record who can’t get bail because the system could only store his name as a bunch of “aliases” is “politics” to me, but apparently not to many other people (it’s just “falsehoods programmers believe about names”), while holding a software project’s leader accountable for misbehavior is “politics” to many of those people and common sense to me. A staggering percentage of actual “political” fights really are that sort of thing.

                                                                                                                                                                                                                              1. 3

                                                                                                                                                                                                                                But I also see plenty of “oh woe is me, the cancel culture and the woke and the leftist and the SJW are taking over” stuff that gets left in place and even highly upvoted, which says to me that it’s not that people don’t want “politics”, it’s that their definition of what is and is not “politics” is at issue.

                                                                                                                                                                                                                                I mean the proof is at hand right? A “let’s not discuss politics” non sequitur as successful troll.

                                                                                                                                                                                                                                1. 0

                                                                                                                                                                                                                                  But I also see plenty of “oh woe is me, the cancel culture and the woke and the leftist and the SJW are taking over” stuff that gets left in place and even highly upvoted

                                                                                                                                                                                                                                  I don’t think I’ve ever seen this on Lobsters, only on others sites. Do you have any examples?

                                                                                                                                                                                                                                2. 1

                                                                                                                                                                                                                                  I think we disagree about what it means to be thin skinned. I thought you were admonishing the people who leave into toughening up. If that is the case, I think it will lead to either an echo chamber or a dungeon of trolls or both.

                                                                                                                                                                                                                                  But based on your other comments, I don’t think you meant what I interpreted.

                                                                                                                                                                                                                                  You in this context means, us, or the offended user that flags people into quitting. How about we make flags public and you can only spend them in certain ways? Do comment points even mean anything? There is a huge distinction between “this person is harmful” and basically anything else. if someone is harmful, they should be removed. Otherwise … if you don’t want to see their posts, then that would be a personal choice.

                                                                                                                                                                                                                                  1. 2

                                                                                                                                                                                                                                    Making flags public is a terrible idea.

                                                                                                                                                                                                                                    1. 2

                                                                                                                                                                                                                                      I agree. I DO think that people here are overly trigger happy with the flagging, but given other comments in this thread I’m willing to believe this is simply human nature at plan and unavoidable. Making flags public would be in effect shaming someone for trying to make a small contribution to the community by flagging a post.

                                                                                                                                                                                                                                      1. 2

                                                                                                                                                                                                                                        I feel that maybe 60% of flags are not trying to contribute to the community, but rather to avenge themselves, or to have an outlet for disagreement without having to engage. It’s part of the problem with the Internet at large: for digital natives, disengagement is no longer an option. People can’t just ignore stuff they disagree with; they have to respond to it, and if it’s a troll, they shouldn’t engage directly, so they instead engage indirectly by flagging. There’s a reason why Twitter’s first option when reporting is “I disagree with this”. It’s just human nature.

                                                                                                                                                                                                                                      2. 1

                                                                                                                                                                                                                                        Because? Without justification your statement is opinion, what am I to do with that?

                                                                                                                                                                                                                                        1. 1

                                                                                                                                                                                                                                          Because it can lead to retaliatory, tit-for-tat flagging of the flagger’s comments. Mods can already see who flags what and can take action against those who misuse it.

                                                                                                                                                                                                                                  2. 2

                                                                                                                                                                                                                                    a system that is constructed that make it so people like that dont want to be here is a system that needs to be fixed.

                                                                                                                                                                                                                                    Who are “people like that”? To me, this sentence seems to extrapolate based on a single data point, which is based on some observations of another person. That is to say, we don’t know Burntsushi well enough, and maybe no matter how we setup the system, he would find something to quit. And striving to optimize for one would put burden and alienate others.

                                                                                                                                                                                                                                    1. 5

                                                                                                                                                                                                                                      people like that

                                                                                                                                                                                                                                      Hardworking, smart, helpful, writes a lot of great Rust. Reddit and github

                                                                                                                                                                                                                                      I am talking about specifics not a generalized idea of a Lobste.rs user.

                                                                                                                                                                                                                                    2. 0

                                                                                                                                                                                                                                      Since that person left, I’m not getting a flag on every single of my comments anymore.

                                                                                                                                                                                                                                      An interesting coincidence. ¯\_(ツ)_/¯

                                                                                                                                                                                                                                      1. 0

                                                                                                                                                                                                                                        Obligatory “correlation is not causation”.

                                                                                                                                                                                                                                    3. 5

                                                                                                                                                                                                                                      That is the problem right there. It.s not a “disagree” link, it’s a “flag” link. Obviously, looks like there are people abusing it because they disagree with something rather than unacceptable behaviour being reported.

                                                                                                                                                                                                                                      Personally, I wouldn’t take it too seriously much less posting on other websites about it. But it is rather shitty to be told to take a chill pill just because one’s opinion is not widely accepted.

                                                                                                                                                                                                                                      1. 1

                                                                                                                                                                                                                                        Accounts with low “karma” can’t downvote but can flag. Perhaps this needs to be looked at..

                                                                                                                                                                                                                                        1. 6

                                                                                                                                                                                                                                          There are no downvotes, only flags.

                                                                                                                                                                                                                                          1. 2

                                                                                                                                                                                                                                            TIL. I stand corrected

                                                                                                                                                                                                                                            1. 1

                                                                                                                                                                                                                                              Thanks for clarifying this. I was wondering where the downvote links were.

                                                                                                                                                                                                                                              1. 4

                                                                                                                                                                                                                                                iirc the downvotes were the flags, just with a downvote arrow instead of being hidden.

                                                                                                                                                                                                                                        2. 3

                                                                                                                                                                                                                                          It doesn’t make sense to optimize for people who run away when told others disagree with them.

                                                                                                                                                                                                                                          I think discourse is improved when all participants feel safe. Then instead of spending energy in handling negativity emotionally, they can make better arguments. Moreover I don’t want to see valid viewpoints shut down due to mob shouting. I think human discourse works well with a variety of opinions.

                                                                                                                                                                                                                                          1. 16

                                                                                                                                                                                                                                            I think human discourse works well with a variety of opinions.

                                                                                                                                                                                                                                            I agree!

                                                                                                                                                                                                                                            I think discourse is improved when all participants feel safe.

                                                                                                                                                                                                                                            The problem we’re seeing in the last several years is that there are people who will never feel safe, at least not without massive sacrifices from everybody else in a community, often including systematic self-censorship and topic avoidance. The great online community question of the age is how to strike a balance between being welcoming and letting your demographics become taken over by–for lack of a better way of putting it–people who are not robust enough to survive or flourish in a sufficiently diverse/hostile memetic ecosystem.

                                                                                                                                                                                                                                            1. 9

                                                                                                                                                                                                                                              people who are not robust enough to survive or flourish in a sufficiently diverse/hostile memetic ecosystem

                                                                                                                                                                                                                                              I’m not sure what kind of online future you’re envisioning but I don’t want any part of it.

                                                                                                                                                                                                                                              1. 15

                                                                                                                                                                                                                                                An (only slightly contrived) example:

                                                                                                                                                                                                                                                You run a message board that hosts tech content.

                                                                                                                                                                                                                                                On one extreme, you tell everybody “hey, we want you here! everybody is super nice and you’ll never be criticized!”.

                                                                                                                                                                                                                                                After some period of time, you end up with a bunch of users of C and a bunch of users of Rust.

                                                                                                                                                                                                                                                Some of those users cannot bear any perceived slight of their chosen language. There are C people that go off in a tizzy if anybody points out the memory safety issues in C, and there are Rust users that freak out if anybody complains about long compile times. The house rules–because remember, we’re optimizing for welcoming and that means supporting everybody, no matter how thin-skinned they are!–end up including “Never talk about shortcomings of another language.”

                                                                                                                                                                                                                                                Since engineering is all about tradeoffs, and since no language is actually good for all things, strict adherence to this rule ends up with only the most optimistic and vapid discussion–worse, it infects other topics. It’s really hard to explain why you might like immutability for concurrency if you can’t talk about memory safety issues because you’ll trigger the C programmers. It’s really hard to explain why you like dynamic or interpreted languages if you can’t talk about how much long compile times suck because you’ll trigger the Rust programmers.

                                                                                                                                                                                                                                                On the other extreme, you tell everyone “hey, we talk about tech and things on their own merits here, and if you can’t stand commentary that offends, fuck off!”.

                                                                                                                                                                                                                                                Our C users and Rust users come in.

                                                                                                                                                                                                                                                Some of these users are just assholes. There are C programmers that strictly use bizarre sexual analogies for anything involving pointers, there are Rust coders that sign all of their posts with Holocaust denial, frequently threads devolve into seeing who can outlast who in massive shit-slinging, and in general a sport is made of making miserable and hazing anybody who won’t stick around.

                                                                                                                                                                                                                                                Obviously, there will be users who would be knowledgeable assets to this community but who are squicked out by this stuff and leave. There are other users who can put up with the rampant nonsense but who don’t want to spend the cycles required to weed through the bullshit to talk about what they want. Over time, the community stagnates unless it can find a way of attracting and retaining new users, and odds are that’ll be based on its reputation for no-holds-barred “discussion” rather than actual technical insight…this userbase will also skew towards younger folks who have a deficit of experience and all of the time in the world to share it. This is, incidentally, how /g/ works.

                                                                                                                                                                                                                                                ~

                                                                                                                                                                                                                                                I’m not sure what kind of online future you’re envisioning but I don’t want any part of it.

                                                                                                                                                                                                                                                My point isn’t to advocate for one or the other, but to point out that it’s a central question of community.

                                                                                                                                                                                                                                                It’s also a question whose answer shifts over time, as groups tweak the trajectory of their tribe.

                                                                                                                                                                                                                                                1. 8

                                                                                                                                                                                                                                                  Some of these users are just assholes. There are C programmers that strictly use bizarre sexual analogies for anything involving pointers, there are Rust coders that sign all of their posts with Holocaust denial, frequently threads devolve into seeing who can outlast who in massive shit-slinging, and in general a sport is made of making miserable and hazing anybody who won’t stick around.

                                                                                                                                                                                                                                                  And there’s a pretty easy way to fix that – kick ’em out. There are communities which do that.

                                                                                                                                                                                                                                                  Because as the saying goes, there are two ways to be a “10x programmer” and one of them is to have such an awful effect on people around you that they drop to 0.1x their prior productivity while you stay average. And even if someone really is “10x” (whatever that means) on some aspect of technical skill or knowledge, it’s still likely to be a net loss to put up with “asshole” behavior from them.

                                                                                                                                                                                                                                                  1. 2

                                                                                                                                                                                                                                                    This is good advice and knowledge for me as I try to build one or more Open Source communities. I think you are correct that such communities should have no room for such users.

                                                                                                                                                                                                                                                    1. 1

                                                                                                                                                                                                                                                      For the purposes of that thought experiment, we take the position in the second case where we do not eject members for being assholes.

                                                                                                                                                                                                                                                  2. 3

                                                                                                                                                                                                                                                    I saw another attempt at creating a HN clone go down a few years ago, not because of flaming or lack of interesting users but because some early users decided they and everyone else decided they needed to be much nicer than HN.

                                                                                                                                                                                                                                                    I quit commenting soon after.

                                                                                                                                                                                                                                                    You can check my comment history, I’m not at rude person but those rules made me feel unsafe. I started carefully considering each word. Then stopped posting,

                                                                                                                                                                                                                                                    I wasn’t the only one. The “super nice” crowd didn’t have anything else to contribute and the site was down a few months later.

                                                                                                                                                                                                                                                    1. 8

                                                                                                                                                                                                                                                      Honestly, one of my main issues with HN has always been the focus on superficial civility. You can be an absolute horrendous awful drive-others-away-in-droves trainwreck of a poster there so long as you do it the “right” way. And you will be valued and rewarded for it.

                                                                                                                                                                                                                                                      A real “anti-HN” would care less about those superficial aspects and more about dealing with the actual trolls and assholes.

                                                                                                                                                                                                                                                  3. 4

                                                                                                                                                                                                                                                    people who are not robust enough to survive or flourish in a sufficiently diverse/hostile memetic ecosystem

                                                                                                                                                                                                                                                    Perhaps I don’t see this as an issue. I believe, in my ideal community (where I’m stressing “ideal” because it’s probably not practically realizable), that any commenter with a good-faith argument should feel empowered to make that comment, even if others in the community viscerally disagree. There are two problems at hand here, one is defining what “good-faith” mean and the other is protecting arguments from being shouted out. When it comes to “good-faith”, due to the nature of human ideology, there will be disagreements. In my mind, the easiest way to come to a consensus on what “good-faith” means is to clearly define it. This is why I’m a fan of Code of Conducts. They lay bare what a community considers “good-faith”, so the minimum bar of participation is met. Ideally the CoC would change infrequently and have community buy-in so that it acts as a minimum bar to entry.

                                                                                                                                                                                                                                                    Ideally (again the ideal here not the practice, probably), we can create a community where there is no hostility after agreeing to “good-faith” rules. It’s one thing to enter heated discussion, but I’m hopeful that a community can use its own moderation tools to ensure that a heated discussion does not turn hostile.

                                                                                                                                                                                                                                                    I just don’t see a world where diversity and hostility are equivalent.

                                                                                                                                                                                                                                                    1. 1

                                                                                                                                                                                                                                                      When it comes to “good-faith”, due to the nature of human ideology, there will be disagreements.

                                                                                                                                                                                                                                                      I make good-faith arguments all the time that seem to fall into the class of bad-faith arguments that @bitrot points out, so I get what you’re saying.

                                                                                                                                                                                                                                                      I just don’t see a world where diversity and hostility are equivalent.

                                                                                                                                                                                                                                                      In the interest of naming things, it seems what’s under discussion is the paradox of tolerance. I’d link to Wikipedia, but it seems it’s a Marxist idea, which I know not everyone would be comfortable with 😄


                                                                                                                                                                                                                                                      At some point, I think you just have to go by how things seem. Which is a shame, because that makes it a game of “survival of the fittest”, where those who are best at branding, or putting things “the right way” to seem good to other people, survive; while those who are prone to misrepresenting themselves, or discussing “untouchable subjects” such as the example in @friendlysock’s comment, are booted out.

                                                                                                                                                                                                                                                      1. 2

                                                                                                                                                                                                                                                        In the interest of naming things, it seems what’s under discussion is the paradox of tolerance. I’d link to Wikipedia, but it seems it’s a Marxist idea, which I know not everyone would be comfortable with 😄

                                                                                                                                                                                                                                                        Indeed, I am familiar with the Paradox of Tolerance. My hope is that a CoC or otherwise similar guiding document or constitution would provide a floor on tolerance, but everything beyond that would be tolerated. Not only does that set community baseline rules but it keeps rules distinct, clear, and constant. There’s a reason many real, representative governments go through due process to change laws.

                                                                                                                                                                                                                                                        At some point, I think you just have to go by how things seem. Which is a shame, because that makes it a game of “survival of the fittest”, where those who are best at branding, or putting things “the right way” to seem good to other people, survive; while those who are prone to misrepresenting themselves, or discussing “untouchable subjects” such as the example in @friendlysock’s comment, are booted out.

                                                                                                                                                                                                                                                        Perhaps the conclusion I should arrive to is that direct democratic (e.g. “upvote” and “downvote”) discussion sites just lead to dynamics that create and sustain echo chambers. I’m not sure, it’s certainly something I’m mulling about myself.

                                                                                                                                                                                                                                                2. 2

                                                                                                                                                                                                                                                  when told others disagree with them.

                                                                                                                                                                                                                                                  But that’s not what flagging tells you… If you’ve been doing everything alright, it tells you that others who disagree with you have leveraged a system unrelated to disagreement to make you look unreasonable, unkind, and/or trollish.

                                                                                                                                                                                                                                                3. 4

                                                                                                                                                                                                                                                  I’d be interested in learning if mods have any way to detect brigading, possibly such as by looking at correlations in users who consistently flag the same comments.

                                                                                                                                                                                                                                                  1. 13

                                                                                                                                                                                                                                                    Yes, we do. If you look at the mod log you will see that people are banned for this practice now and then. Don’t do it.

                                                                                                                                                                                                                                                    1. 1

                                                                                                                                                                                                                                                      I’m not sure why you needed to admonish me like that at the end. I wasn’t probing your defenses. I was merely going to suggest this if you didn’t have it.

                                                                                                                                                                                                                                                      No need to reply, I know this is a tough time for all the staff.

                                                                                                                                                                                                                                                      1. 7

                                                                                                                                                                                                                                                        Sorry, I should have been clearer that I wasn’t directing that at you in particular. I know you were trying to help.

                                                                                                                                                                                                                                                4. 8

                                                                                                                                                                                                                                                  Preface: I don’t have his comments handy and am just looking at the system. Despite this I will be embarrassed if it turns out he was actually making an enormous mess 🤣

                                                                                                                                                                                                                                                  Also want to add whoever worked on the existing system clearly put a lot of thought into it (e.g. factoring in flags on multiple stories, percent-flagged, and limiting to N users all seem wise, and thought went into the message). Probably no fun to see someone armchair quarterbacking with much less time thinking about the problem space than they have. Hope this at least crosses the threshold of possibly useful.

                                                                                                                                                                                                                                                  The thing here being complained about? It’s in the source code, it’s very clear how it works, and it provides impartial, statistical feedback about what’s going on.

                                                                                                                                                                                                                                                  It looks like this is it. My guess is if you’re prolific, it’s inevitable you’ll pop over the hard numerical thresholds sometimes and the 10% of comments is the biggest barrier, followed by the top-30 ranking.

                                                                                                                                                                                                                                                  10% of comments seems not that unlikely if 1) your recent comments are seen by lots of people (upvoted, early, etc.), 2) they address things a lot of people disagree about, and 3) some % of folks who disagree will flag, which seems likely as long as flagging is one of the easier ways to express disagreement (more below). You could do something like subtract the upvotes/N from the flag count (lots of fiddly options), just because there isn’t a number that represents visibility directly.

                                                                                                                                                                                                                                                  The top-30 ranking has has the same considerations as flag count, and also if discussion is going well enough, the 30th “worst” person might not be that bad. (Somebody’s the least polite person in a group of absolute diplomats.) The histogram/rank data does seem interesting to expose to the more flagged folks. Given all that, I’m not entirely sure what I think about the wording of the message–definitely already phrased to aim for “stop and consider this” not “you’re a bad actor”, but I can also see how humans get defensive.

                                                                                                                                                                                                                                                  People are really flag-happy, and this is what happens when you are.

                                                                                                                                                                                                                                                  (Added clarifications here in [brackets] after friendlysock’s comment.)

                                                                                                                                                                                                                                                  A nice thing about [the idea of downvotes for simple disagreement, as used on some other sites, is that it lets] people who simply don’t like something say “I don’t like this” without putting noise in the channel that’s used to catch abuse, spam, and so on. I think the dream behind the current system is that not having [no-reason] downvotes leads to a very pluralist site where many people disagreeing (or fewer disagreeing strongly) doesn’t count against a comment as long as there’s no objective problem with the phrasing/on-topicness/etc. Realistically it seems as if without another outlet, some fraction of disagreement will get funneled into the flag system (even just through people looking hard for technically valid reasons to flag) even if you try to discourage it.

                                                                                                                                                                                                                                                  Just as a random thought, you can offer downvotes without treating them as -1 upvote (-0.5 or -0.25 or whatever in a ranking algorithm), or disagree flags that you treat differently from others.

                                                                                                                                                                                                                                                  tl;dr if I guessed at possible tweaks they might be allowing [no-reason] downvotes or disagree flags that have less impact than existing flags, just to keep that self-expression out of the flagging system; look for a way to factor in that being more-read will get your comments more negative attention; and maybe there’s something to do with the message wording, though it’s clearly already had a good amount of thought put in it.

                                                                                                                                                                                                                                                  1. 16

                                                                                                                                                                                                                                                    A nice thing about downvotes is it lets people who simply don’t like something say “I don’t like this” without putting noise in the channel that’s used to catch abuse, spam, and so on.

                                                                                                                                                                                                                                                    Yes, I very much agree with this. On Reddit and Hacker News, which lobster.s is modelled after, I think of as:

                                                                                                                                                                                                                                                    • upvote: “I would like this to appear higher on the page”
                                                                                                                                                                                                                                                    • downvote: “I would like this to appear lower on the page”

                                                                                                                                                                                                                                                    Flag is a totally different thing than downvote – it means that the user is abusing the site, and continuing that behavior SHOULD result in getting banned from the site.

                                                                                                                                                                                                                                                    But expressing minority opinions (thoughtfully) may result in downvotes (*), but it should NOT result in getting banned or encouraged to leave.


                                                                                                                                                                                                                                                    As far as I can tell, the burntsushi warning was a result of mixing up these signals. I only read a portion of the Rust threads, so I haven’t followed everything, but from what I understand he was probably just expressing some opinions that people disagreed with, not actually abusing the site.

                                                                                                                                                                                                                                                    So I think you have diagnosed it correctly – the lobste.rs UI is sort of mixing these 2 signals up by omitting downvotes. The “flag” button has 5 reasons, and “off topic” and “me too” should be a downvote, not a flag IMO.

                                                                                                                                                                                                                                                    Again, the difference between the two is whether continuing the behavior should lead to a ban, and that’s a very important distinction.

                                                                                                                                                                                                                                                    (Honestly I am surprised that I haven’t gotten this banner ever, given that there is a minority of people who disagree with my opinions on shell. Since I’m writing a new one, I’m opinionated about it, but also invite disagreement)


                                                                                                                                                                                                                                                    (*) Some people may want opinions they disagree with to appear lower on the page, and some people might not. In my view it’s up to person to exercise that discretion – that’s why you get one vote :)

                                                                                                                                                                                                                                                    1. 3

                                                                                                                                                                                                                                                      upvote: “I would like this to appear higher on the page” downvote: “I would like this to appear lower on the page”

                                                                                                                                                                                                                                                      That’s not actually what they mean on Reddit:

                                                                                                                                                                                                                                                      Vote. If you think something contributes to conversation, upvote it. If you think it does not contribute to the subreddit it is posted in or is off-topic in a particular community, downvote it.

                                                                                                                                                                                                                                                      ‘I would like this to appear higher/lower on the page’ is so ambiguous that it leads to different people misunderstanding it and applying it differently.

                                                                                                                                                                                                                                                      1. 6

                                                                                                                                                                                                                                                        I’d say that’s a prescriptive definition, but a descriptive one is more useful [1], and thinking about it that way will be more likely to solve the problem.

                                                                                                                                                                                                                                                        That is, “users don’t read documentation”, and it means whatever the users think it means, and it changes over time. FWIW I’ve been using Reddit since 2007, and HN since 2011 or so, and there’s never complete agreement on what these things mean.

                                                                                                                                                                                                                                                        I’ve seen the debate about downvote vs. disagree several times over the years on the sites. I choose to sidestep it with the vague definition – that’s a feature! :) It’s OK to be vague sometimes.

                                                                                                                                                                                                                                                        In cases like this, where the number of flags leads to either banning or encouragement ot leave, I think it’s better not to be vague, and have 2 distinct mechanisms. This isn’t a big change, as lobste.rs had both downvoting and flagging until very recently.

                                                                                                                                                                                                                                                        [1] https://amyrey.web.unc.edu/classes/ling-101-online/tutorials/understanding-prescriptive-vs-descriptive-grammar/

                                                                                                                                                                                                                                                        1. 2

                                                                                                                                                                                                                                                          This isn’t a big change, as lobste.rs had both downvoting and flagging until very recently.

                                                                                                                                                                                                                                                          I don’t think it had both, rather the flag button just looked like a “downvote” button. You still selected from the same reasons that flag presented. This change is the one that altered the styling I believe. There’s plenty of places that refer to it as “voting” in the code still, but unless I am mistaken there was only ever the one mechanism.

                                                                                                                                                                                                                                                    2. 7

                                                                                                                                                                                                                                                      A nice thing about downvotes is it lets people who simply don’t like something say “I don’t like this” without putting noise in the channel that’s used to catch abuse, spam, and so on.

                                                                                                                                                                                                                                                      So, the purpose of downvotes was emphatically not to express disagreement…it was to signal one of a handful of error conditions (bad information, factual inaccuracy, etc.). There is very little utility in seeing how many people merely disagree about something, especially given how fast people are to be mean to each other.

                                                                                                                                                                                                                                                      As a historical point, @jcs at one time disabled downvotes. It did not last more than a week or two before it was brought back.

                                                                                                                                                                                                                                                      1. 11

                                                                                                                                                                                                                                                        Sorry, I see how it was worded unclearly. I understand that the intention currently is to have no “disagree” button. I’m saying that having that button could reduce how often people flag comments they disagree with as having one of the error conditions, which they might do by by stretching definitions, picking a random reason, or just preferentially noticing real flaggable issues when they happen to dislike the content. (I think the unclarity comes from me using “downvotes” to mean “a no-reason downvote button” as opposed to flags as they exist–I edited to clarify above.)

                                                                                                                                                                                                                                                        It may be useful to let people push a button for disagreement even if your algorithms assign a low weight to those clicks. I say low weight rather than zero because having a 100%-placebo button in the UI raises other issues, even if moderators give zero weight to an easy expression of disagreement. I’d probably give a no-reason-given downvote nonzero weight in my head but I don’t expect others to adopt my weights.

                                                                                                                                                                                                                                                        Shorter, the idea is that people sometimes find a way to “downvote” for disagreement however you set up your UI, and you might get a net harm reduction by just giving them the button they want and then deciding what to do with the data.

                                                                                                                                                                                                                                                        1. 6

                                                                                                                                                                                                                                                          Ah, so kind of like the buttons on crosswalks?

                                                                                                                                                                                                                                                          Anyways, thank you for elaborating further. :)

                                                                                                                                                                                                                                                          1. 4

                                                                                                                                                                                                                                                            Very well said. Even if the system is not equipped with a “disagree” button, some users may desire one and use whatever means are at hand to express themselves. The phrase, “the purpose of a system is what it does,” comes to mind.

                                                                                                                                                                                                                                                            If existing mechanisms are not meant for use in disagreements, then we might ask if that is actually how they are being used.

                                                                                                                                                                                                                                                          2. 4

                                                                                                                                                                                                                                                            That’s nice, but you can’t make users behave the way you want them to behave, if you’re not going to actively act against it. People not only downvote because they disagree, but they’ll also flag things as spam or off-topic or “troll” just because they disagree, or feel you’ve insulted their particular religious (as in vimacs-vs-spaces) beliefs.

                                                                                                                                                                                                                                                            1. 6

                                                                                                                                                                                                                                                              I think I’d prefer a system that discourages misuse of flags. Maybe a similar message for people who flag a lot

                                                                                                                                                                                                                                                              1. 3

                                                                                                                                                                                                                                                                Sure, folks determined to game things would still flag. My theory is decently many who flag today are not determined to game things, and would click a down arrow for “just no” given the option. That’d reduce noise in the flag system even though it wouldn’t eliminate it. (And not saying you couldn’t do other changes too.)

                                                                                                                                                                                                                                                            2. 4

                                                                                                                                                                                                                                                              in fact, you can have placebo downvotes that show up for the person doing the downvoting but do not affect the vote count otherwise. that would keep (almost) everyone happy, i think.

                                                                                                                                                                                                                                                            3. 6

                                                                                                                                                                                                                                                              Agreed.

                                                                                                                                                                                                                                                              I think it’s fair to discuss whether the wording of the warning message can be improved, but various comments here that pretty much amount to “person X is popular, he should be exempt from the rules” are just tiring.

                                                                                                                                                                                                                                                              1. 8

                                                                                                                                                                                                                                                                How is being flagged a rule? It’s not a rule. That is the whole problem.

                                                                                                                                                                                                                                                                Anyone can flag any comment any time.

                                                                                                                                                                                                                                                                1. 2

                                                                                                                                                                                                                                                                  Receive too many flags, get a notice. That’s the rule.

                                                                                                                                                                                                                                                                  1. 9

                                                                                                                                                                                                                                                                    That is not a rule in the sense of rule that can be followed by users. I did’t read a single comment suggesting that shouldn’t apply to some user because of its popularity, but rather many people pointing out that this is a clear case illustrating that such system is broken and should be fixed for all users.

                                                                                                                                                                                                                                                              2. 5

                                                                                                                                                                                                                                                                rather than continue to engage in a community they don’t fit into

                                                                                                                                                                                                                                                                Is lobster a community that accepts a plurality of opinion? If it is, then you will always have people disagreeing with you and therefore be liable to be reported by some of these people.

                                                                                                                                                                                                                                                                Democracy leads to lynching. Mass reporting is basically the lynching of internet persona. Any kind of automatic penalty that can be initiated via reporting is simply giving power to the angry mob. Autoban and autosuspend based on reports have always been abused.

                                                                                                                                                                                                                                                                1. 3

                                                                                                                                                                                                                                                                  You’re still here, so evidently the suggestion doesn’t apply to you. You’re glad to contribute.

                                                                                                                                                                                                                                                                  Why not show the warning to flag-happy people? I don’t have stats but I feel like that could be a better indicator of who doesn’t want to be here.

                                                                                                                                                                                                                                                                2. 21

                                                                                                                                                                                                                                                                  Why do we need this passive aggressive banner anyway? It looks bad for Lobster, not for the person seeing it, and it’s not clear what problem it’s supposed to solve.

                                                                                                                                                                                                                                                                  1. 19

                                                                                                                                                                                                                                                                    We consistently see the vast majority of bad behavior come from the same few users. There’s a phenomenon, called the normalization of deviance, whereby people whose behavior is far away from the norm often genuinely don’t realize just how far it is. The banner, and the histogram that it links to, are intended as a way for people to self-correct. I personally am a big believer in giving people opportunities for redemption, and the histogram makes the point in a way that mere words can’t.

                                                                                                                                                                                                                                                                    1. 6

                                                                                                                                                                                                                                                                      far away from the norm

                                                                                                                                                                                                                                                                      Far away from the norm doesn’t mean bad. You seem to be assuming that it is.

                                                                                                                                                                                                                                                                      1. 8

                                                                                                                                                                                                                                                                        I appreciate you raising that. On the contrary, I agree that sometimes people’s behavior is far from the norm for positive reasons. I do think that, even in those cases, everyone can benefit from a heads-up and a chance to reflect about whether it’s what they want.

                                                                                                                                                                                                                                                                        1. 3

                                                                                                                                                                                                                                                                          As in reflecting on do you want to be good when everybody else is bad?? Am I reading that right?

                                                                                                                                                                                                                                                                          1. 7

                                                                                                                                                                                                                                                                            Well, yeah. I know for a fact that people have left Lobsters for that reason (or at least, that’s how they see it). While I am sad when people leave, I don’t think anyone is obligated to stay somewhere that doesn’t make them happy. It would be wrong of me to try to trick or coerce people into staying when their free choice, with all the facts available, would be to leave.

                                                                                                                                                                                                                                                                            I’m not really sure why you’re asking this, though. The flagging system doesn’t have the ability to determine who’s right and who’s wrong. Even if I wanted to take my personal concept of “good” and write code that ignores flags that aren’t “good”, there is no existing technology that can do anything like that. If that’s what you’re advocating for, feature request noted but I’m not able to do it.

                                                                                                                                                                                                                                                                            1. 3

                                                                                                                                                                                                                                                                              I’m not really sure why you’re asking this, though

                                                                                                                                                                                                                                                                              I am not asking anything. I was commenting on an implicit bad argument you made (the implication that the norm is correct). You decided to double down by arguing that even if somebody was correct, they should ‘reflect about whether it’s what they want’. I simply then pointed out that this doesnt reinforce your original argument, because it itself is bad, because having a bad feature (aggressive warning about being reported) is not validated by having that feature also be useful to do useless thing (letting people reflect on whether they should be good, because the answer is always yes).

                                                                                                                                                                                                                                                                              I don’t think anyone is obligated to stay somewhere that doesn’t make them happy.

                                                                                                                                                                                                                                                                              Of course not. The point is that assuming that lobsters want a community that engage in meaningful discussion, then it should make people want to stay and be happy, that is a worthy goal. all of this is following your argument for the banner, the argument which I consider to be invalid, as pointed out.

                                                                                                                                                                                                                                                                              1. 5

                                                                                                                                                                                                                                                                                Being distant from the norms can hold little moral judgment and yet be relevant when operating in a constructed community.

                                                                                                                                                                                                                                                                                1. 2

                                                                                                                                                                                                                                                                                  Okay, I guess that’s fair.

                                                                                                                                                                                                                                                                                  I think we disagree about something in there, but it sounds like figuring out what isn’t a high priority for either of us? I appreciate the discussion, anyway.

                                                                                                                                                                                                                                                                          2. 1

                                                                                                                                                                                                                                                                            I at least didn’t read that implication into the post. Not all ways of being far from the norm are likely to result in seeing the banner. It isn’t a perfect system but it’s definitely not symmetric, so that assumption isn’t necessarily required.

                                                                                                                                                                                                                                                                          3. 2

                                                                                                                                                                                                                                                                            Thanks for clarifying. But I still think it doesn’t make Lobster looks good because this feature implies that “deviant” behaviour should be corrected and can be automatically detected, and I expect most people (especially in tech) aren’t comfortable with either of these.

                                                                                                                                                                                                                                                                            I’m wondering what’s the worse that could happen if the banner is not displayed? Maybe the person who’s being flagged all the time will get the point and adjust their behaviour, or maybe they don’t need to adjust anything and it’s other people that will start seeing that perhaps that person has a point. I also believe in giving people a second chance but I don’t think the solution to everything has to be algorithms, sometimes simple human interactions are preferable.

                                                                                                                                                                                                                                                                            1. 4

                                                                                                                                                                                                                                                                              The hypothesis that motivates the banner and histogram is that, by displaying them, those conversations about what to adjust will happen sooner and be more productive. The goal is to head off situations where somebody doesn’t believe mods when we tell them something needs to change, and they ultimately leave the site. It may be right or wrong but that’s the motivation.

                                                                                                                                                                                                                                                                            2. 1

                                                                                                                                                                                                                                                                              Do you think that the banner has an observable positive effect? Do you see a change in behavior from the few users you say produce the majority of bad behavior? As friendlysock says above, they see the banner nearly all the time. Do you think they have been falsely-flagged by this system? If so, can you estimate how high the false-positive rate of showing this banner? If friendlysock has been appropriately warned by this system, have you seen any change in their behavior onsite?

                                                                                                                                                                                                                                                                              If it is truly only a few users producing undesirable behavior, could it be more effective to simply reach out to those users personally?

                                                                                                                                                                                                                                                                              1. 4

                                                                                                                                                                                                                                                                                I’m not going to publicly discuss my personal feelings about specific community members. It wouldn’t be fair to anyone.

                                                                                                                                                                                                                                                                                I don’t have a methodology to conclusively determine how much influence the banner has had, but the site has a lot less flagging in general than it did a couple years ago. I take that to be an indicator that things have calmed down significantly, and I do think that’s good.

                                                                                                                                                                                                                                                                                I do reach out to people personally from time to time, as do the other mods. The banner and histogram were created to address a shortcoming in that approach, where sometimes people aren’t willing to listen to criticism unless they’re presented with data that validates it. I’m skeptical of going fully data-driven for everything, but I think it’s nice to have at least this one particular metric for those who find it easier to take concerns seriously when there’s a metric.

                                                                                                                                                                                                                                                                          4. 20

                                                                                                                                                                                                                                                                            Additional suggestion to all the previous improvements: make that banner a thing that’s moderator-initiated. I of course don’t have statistics on how many people see it (I never got it, so I just learned about it now, anecdotally) but I could imagine that this is rare enough that moderators could just evaluate sending this message to users by hand after the system flags the user internally.

                                                                                                                                                                                                                                                                            1. 6

                                                                                                                                                                                                                                                                              I of course don’t have statistics on how many people see it

                                                                                                                                                                                                                                                                              I don’t have that statistic either, but as I posted elsewhere, only 13 people have been flagged more than me in the last month and I haven’t seen it. Only 7 people have been flagged 10 or more times. I’d therefore expect that trimming it down to 5 people that moderators need to take a look at per month is quite feasible.

                                                                                                                                                                                                                                                                              If even that is too much of a load for the moderators, then it might be possible to select a dozen people who have been active recently but not participated in any of the flagged threads to do a triaging pass. At that point, having someone reach out to the person and say ‘you’ve had a lot of things flagged recently, is there anything going on in your life that you want to talk about?’ would be a fairly low load.

                                                                                                                                                                                                                                                                              1. 3

                                                                                                                                                                                                                                                                                You can a chart that gives you a clear idea how many people see it at /u/you/standing. So you can see it at /u/david_chisnall/standing and I can see it at /u/hoistbypetard/standing. The red Xs should represent users seeing the warning.

                                                                                                                                                                                                                                                                                I’d never suggest that someone else should just add a thing to their plate, but it does seem like the kind of thing where, if there were a few active moderators, requiring someone to approve the red box might be an improvement for a relatively low effort. That feels like the kind of statement I should only make if I’m accompanying it with a patch, though, and I can’t offer that right now.

                                                                                                                                                                                                                                                                            2. 15

                                                                                                                                                                                                                                                                              Yep, I think the current wording will probably trigger exactly the wrong people “have I overstepped a border? Probably” and the people who are actively engaging in a little bit of flaming won’t be bothered.

                                                                                                                                                                                                                                                                              1. 7

                                                                                                                                                                                                                                                                                Following on the “let’s get shit done” vibe, is there an open issue for discussing this in more detail on github? I did a quick lookup and didn’t find any, would be cool if it was posted here (even better if as a top comment)

                                                                                                                                                                                                                                                                                1. 5

                                                                                                                                                                                                                                                                                  Good idea, thanks! (Obvious in retrospect, like many good ideas.) I created an issue.

                                                                                                                                                                                                                                                                                2. 4

                                                                                                                                                                                                                                                                                  I mildly agree with both of those things, but I also think that the suggestion further down the thread to re-introduce downvoting as “non-bannable feedback” could address the issue more directly.

                                                                                                                                                                                                                                                                                  https://lobste.rs/s/zp4ofg/lobster_burntsushi_has_left_site#c_padx5h

                                                                                                                                                                                                                                                                                  Some people may misuse flags and downvotes, but overall I think these guidelines are intuitive and easy to remember:

                                                                                                                                                                                                                                                                                  • upvote: this should go higher on the page
                                                                                                                                                                                                                                                                                  • downvote: this should go lower on the page
                                                                                                                                                                                                                                                                                  • flag: if the user continues this behavior, they should eventually be banned
                                                                                                                                                                                                                                                                                  1. 2

                                                                                                                                                                                                                                                                                    In my post I’m trying to focus on an easy thing to do to help reduce this problem. I have the impression that rewording the banner is something that’s reasonably easy, while “let’s reintroduce downvotes” or “the banner should be approved by moderators before being shown” are important change in process that require a lot of discussion. They may be excellent ideas, but it’s a lot more work to discuss and turn them into action, so I think it’s best not to mix the two kind of suggestions if we want to change anything at all in the short term; they should be discussed separately, and maybe differently. (I could just send a PR to rephrase the banner; any of the other suggestions requires more discussion with contributors, etc.).

                                                                                                                                                                                                                                                                                    1. 1

                                                                                                                                                                                                                                                                                      Yes, it makes sense to do the easy things first. My impression was that we had downvotes several months ago, so it shouldn’t that big a change to restore them, but I’m not involved so I could be wrong.

                                                                                                                                                                                                                                                                                      I was mystified by the removal of downvotes, and never saw the rationale for it. I saw one thread discussing it 3 or 6 months after they were removed, which still didn’t answer my questions about why they were removed. It made the site worse for me, but not enough to really complain about it. I know this is an all-volunteer effort and I didn’t have time to look at it myself.