1. 10

    Reminds me of Scala’s Martin Odersky.

    1. 5

      Is he like that? That’s disappointing. I’ve watched a few YouTube videos of him and he seemed amicable enough. Of course, I’ve never really been in the “Scala community” so I have no perception of him outside of the two or three videos I’ve seen.

      1. 20

        There is a reason why some important contributors have left this community over the years, and I’m not even talking about the reports of sexual assault that came up recently.

        The least worst part of the Scala experience is burning out by attrition caused by people “not giving a fuck about them not giving a fuck”, which is a term I coined for people you didn’t care and couldn’t even be bothered to delegate to someone who did, because Martin assigned them their little fiefdom, and they would make sure to sit on that throne.

        A medium bad part about Scala is the sheer scale at which pretty much everything is mismanaged. Loosing the guy who single-handedly built Scala-on-Android, while Kotlin is starting to completely demolish Scala’s adoption, by blaming him for not quitting his day-job and working unpaid & fulltime on Scala-on-Android, but not actually telling him that for like half a decade? Yeah, that’s Scala.

        Getting your character smeared is probably one of the worse experiences there. E. g. leaving because contributing has become 80% of having to deal with people who simply don’t care and only 20% doing the actual work, and then Martin announcing you are just angry because you wanted a job, but didn’t get it? Yeah, not a good show.

        I believe that if the contributors to Scala were employees, Scala would have been bankrupted by labor rights lawsuits a decade ago.

        Regardless of that, if you value your sanity or your mental health, stay away from Scala.

        1.  

          Could you give an example of an important contributor that left?

          1. 8
            1.  

              The linked video gives me the impression that Paul Phillips left due to technical differences, while the post I replied to gives the impression that people leave Scala because of people. Of course, it is well possible that it is a combination of both.

              1.  

                (note that this is a technical talk and not (primarily) about why he left)

      1. 2

        I think the first example does a really poor job explaining the library’s purpose.

        But if the path passed in is ../../home/me/.ssh/id_dsa.pub

        You wouldn’t even need to do that, /home/me/.ssh/id_dsa.pub suffices, because “if path is absolute, it replaces the current path”.

        So the first step to solve this would be to stop standard library devs from creating APIs that are CVEs waiting to happen.

        the best API is the one you already know. Rust already has a standard library API.

        Then the author goes on to introduce their own replacement type for the broken Path/PathBuf ones? Now I’m confused.

        And the cap-directories library is pretty much an (outdated) adaption of my own library for cache/config/user dirs, which pretty much only exists because the standard library API couldn’t even implement home_dir correctly.

        Dir looks interesting, though I don’t like that it doesn’t seem to be possible to compose paths, without immediately opening/creating/… them. I experimented with a different design years ago (AbsolutePath/RelativePath) that I think accomplishes this, without restricting path composition.


        Their efforts deserve praise, but their messaging is really confusing.

        (And I would have appreciated it if they had asked before changing the license and removing author information.)

        1. 1

          You wouldn’t even need to do that, /home/me/.ssh/id_dsa.pub suffices, because “if path is absolute, it replaces the current path”.

          Read with even the slightest bit of charity, one assumes that the library properly handles absolute paths too, and if not that’s “just” a bug.

          Then the author goes on to introduce their own replacement type for the broken Path/PathBuf ones? Now I’m confused.

          They… didn’t? A Path/PathBuf is just a string (encoded properly for the current OS), a Dir is an object giving you the ability to access files below it. You pass a Path to a Dir to specify which file/dir below it… I don’t see anything suggesting they’re replacing Path/PathBuf at all, just adding a new type (Dir) which gives you file system system rights.

          I’m sort of skeptical about the idea of running a system call to create a Dir too, but nothing in their messaging strikes me as confusing like you suggest…

        1. 2

          The problem is Range is overloaded: it’s too flexible, it wants to be everything.

          Agreed, Scala also suffered from this issue in various ways. The implementation complexity of trying to be everything for everyone is huge.

          E. g. you can create an “overful range” (that contains more than Int.MaxValue steps, due to the bad decision that collections can only contain Int.MaxValue elements), but you can’t actually reject it during construction, because the user could supply a custom step size later on that could turn such an overful range back to a normal one.

          Then all the fun stuff dealing with floating point and BigDecimal values (e. g. does 0.1 to 0.5 by 0.1 contains 0.3?). It’s a big mess there too.

          Range::is_empty() could be written naturally instead of a a bizarre way just for NaNs

          To be honest, this seems to be not a fault of Rust’s Range, but a symptom of the brokenness of the Ord/PartialOrd hierarchy in Rust.

          1. 3

            Why is it a bad decision that collections can only contain Int.MaxValue elements?

          1. 17

            I have yet to hide any tag on Lobsters, but if there were a tag for these stupid OOP vs FP hot takes I would hide them in an instant.

            1. 16

              I’d generalize that to every article “Uncle Bob” writes.

              1. 3

                But you would miss the discussions on Lobsters, which are often better than the OP ;)

                1. 2

                  Same; I think I’d hide even an OOP tag by itself, never mind FP.

                1. 4

                  Why does every vulnerability come with it’s own catchy acronym and slick webpage now?

                  1. 8

                    Generally easier to remember, identify, and communicate than CVE IDs.

                    Are we vulnerable to ALPACA?

                    versus

                    Are we vulnerable to CVE-2021-31971?

                    1. 6

                      At least they’re getting more adorable over time!

                      1. 6

                        Why does every vuln with a name get at least one person asking this exact question?

                        1. 3

                          Why does every vuln with a name get at least one person asking the question of why every vuln with a name gets at least one person asking why every vuln needs a name now?

                        2. 3

                          A Bug With A Logo? It worked the first time…

                          In fact, thinking back, this trick still worked for POODLE, in the sense of management-level people caring enough to ask about it and organising statements that “we’re now protected against POODLE” or “we’re unaffected by POODLE” etc. But no branded vuln since has had any real boost from its marketing, as far as I recall – nobody cares, just the way everyone discussing this aspect of Heartbleed could foresee right from the start. The marketing has just become this motion you go through because it’s what everyone does.

                          1. 2

                            Crypto bros are a very weird crowd worried a lot about publicity and street cred.

                          1. 14

                            Using fish has the benefit of being able to use a real programming language to define helper functions and having all of those neatly stored in .config/fish, so there is no random mess in my $HOME.

                            1. 4

                              I have switched to fish this year and it has been a game changer for me. My configuration is now simple and I got a lot of features that I was missing out of the box.

                              1. 1

                                Also, the features that fish has built-in are usually implemented in a better way than those added on via scripting in zsh/bash.

                              2. 2

                                \o/ yay for fish

                                I particularly like being able to ‘save’ variables to my config within the shell.

                                1. 1

                                  Eshell also has this benefit. It’s great!

                                1. 18

                                  A quick question: is Chrome better than the rest?

                                  I use Firefox desktop and Duck / Safari mobile as primary browsers, and I’m completely satisfied by the experience. Am I missing out something here with Chrome?

                                  Lots of articles about ditching Chrome / time to move to Firefox … but people seem to hesitate. That tells me something holds them to Chrome, and I can’t image what that things is.

                                  1. 10

                                    A quick question: is Chrome better than the rest?

                                    They don’t support vertical tabs at all.

                                    Performance is about the same (slightly better but I’ve never noticed except maybe on Google properties).

                                    Uses more RAM.

                                    No, not better at all in my book.

                                    1. 4

                                      They don’t support vertical tabs at all.

                                      I’m not sure what you mean by “they”. I’ve been using Tree Style Tab on Firefox for as long as I can remember.

                                      1. 7

                                        “They” is Chrome, not Firefox.

                                        1. 1

                                          … and it’s absolute garbage without hacking userChrome.css.

                                      2. 6

                                        Out of principle (re: reducing the monopoly), I am trying to switch to Firefox. (I’ve done so on one of my daily drivers, but not both.) To answer your question, though, there is at least one feature where Chrome is unequivocally better than Firefox: the UX for multiple profiles/personas.

                                        In Chrome/ium, the entry point for profiles is a single icon/click in the main toolbar. Switching profiles is another single click. So, with two clicks, it will either create a new window “running as” that profile, or it will switch to an existing window of that profile. The window acts as a container, so any new tabs (and even “New Window”s) will be for that profile. Everything about the experience makes sense, and is just about the simplest, most straight forward UX design that one could conceive.

                                        Contrast the above with Firefox’s profile UX. Profiles available in main toolbar? Nope. Open hamburger menu – profiles in there? Nope. How about in the Preferences UI? Nope. So where the heck is it? Well, there are CLI switches available (try not to laugh). -P/--profile to use a certain profile, or --ProfileManager to bring up a GUI widget on startup to pick a profile. Okay, so of course normal users will not use CLI switches. So what do they do? Well, there’s an about:profiles page available. So you have to type that (there’s autocomplete at least, to save you a few keystrokes), and then you click on a button on that page to open a new window launch a new Firefox instance for that profile. And then there is no visual indication in Firefox as to which profile you’re currently using, unless you’ve themed each profile, etc. In Chrome, you assign avatars to profiles, and the current profile’s avatar is displayed in the main bar.

                                        There’s this feature of Firefox called containers, or container tabs, or multi-account containers. Or something. They.. sort of do the job, in a clunky way. Tabs get a different underline colour based on the container, and different containers have different cookie sets, etc. However, this falls short in a couple ways. In Firefox, preference settings are shared among containers, whereas in Chrome, each profile has independent settings. Also, new tabs don’t (always?) take on the container of the previous/parent tab, so you have to manually set the container of a tab, sometimes.

                                        Anyway, enough said. The UX for multiple personas is astronomically better in Chrome. It’s not even close.

                                        1.  

                                          Late but:

                                          Containers is what you look for.

                                          It is right in the address bar.

                                          It can even automatically change for sites that obviously belong to one container.

                                          1.  

                                            I tried containers in Firefox. They go maybe 70% of the way towards what I need. It’s a nice try, but not good enough [for me].

                                            Anyway, nowadays, I use multiple local Linux users to sandbox things with Firefox. They main security concern there is sharing the X display.

                                        2. 9

                                          Inertia, ignorance and indolence come to mind.

                                          1. 6

                                            That’s the thing I keep coming back to when I see articles like this. It’s not like anything has changed.

                                            If you’ve gone for like a decade using a browser created by a monopolistic advertising company and after all those years you never saw the problem with it, does anyone really think reading some Wired article is going to finally be the thing that makes you come to your senses?

                                          2. 4

                                            Performance can be an issue, as discussed previously.

                                            Also I think a lot of front-end devs prefer the developer tools from what I’ve heard (although for me, the Firefox ones work fine and have for years, but I’m not a FE dev and I don’t know if there are any concrete benefits here or if it’s just a matter of preference).

                                            1. 3

                                              The Firefox dev tools are actually quite nice…except that they become an enormous memory hog and performance black hole if you dump a bunch of JSON into the log. I’ve had the devtools crash Firefox because of a day’s worth of redux debug logs. Never had that issue with chrome

                                            2. 4

                                              Chrome (and also safari) has a visibly lower latency in rendering the page. It doesn’t really matter at all if you think about it, but makes the feel of the browser quite different.

                                              1. 4

                                                Bugs. Bugs in firefox. Lots of them. Especially annoying while developing.

                                                1. 2

                                                  IME Chrome can sometimes perform faster than FF. I’ve really only noticed it when looking at sites with heavy CSS/JS-based animations. also the FF dev tools seem to get bogged down more often than Chrome’s. also, for a while FF performance on Mac OS was much worse than Chrome’s (I forget the details but this was a known issue that may (?) be fixed by now).

                                                  1. 3

                                                    I wonder if several years in the future, we’re going to see a bug change there like with the arrival of (now) macOS in the early 2000s. What I’m hinting at is the fact that the problem here are not browsers, but js/whatnot heavy websites, that browsers them try to accommodate, just like Windows was going out of their way to keep backwards compatibility and hide application idiocies. Then came Apple with their “we don’t care about backwards compatibility, this is what you can use”.

                                                    1. 1

                                                      I’m skeptical. Long-term, I think browsers will take over native applications as the default app distribution + runtime environment, as browser vendors add more and more native/low-level APIs to the web platform. Then again, I’m not the first person to predict this so who knows.

                                                      Maybe some day plain HTML/CSS will become a second-class citizen (or people will get used to using other programs to browse the ‘old web’).

                                                      1. 2

                                                        Or you’ll have to download a “web-browser” app in your web browser to view actual HTML content, which to be frank, is already happening, given the number of blogging sites that break completely if Javascript is disabled.

                                                1. 77

                                                  It would help if Firefox would actually make a better product that’s not a crappy Chrome clone. The “you need to do something different because [abstract ethical reason X]” doesn’t work with veganism, it doesn’t work with chocolate sourced from dubious sources, it doesn’t work with sweatshop-based clothing, doesn’t work with Free Software, and it sure as hell isn’t going to work here. Okay, some people are going to do it, but not at scale.

                                                  Sometimes I think that Mozilla has been infiltrated by Google people to sabotage it. I have no evidence for this, but observed events don’t contradict it either.

                                                  1. 24

                                                    It would help if Firefox would actually make a better product that’s not a crappy Chrome clone. The “you need to do something different because [abstract ethical reason X]” doesn’t work with veganism, it doesn’t work with chocolate sourced from dubious sources, it doesn’t work with sweatshop-based clothing, doesn’t work with Free Software, and it sure as hell isn’t going to work here. Okay, some people are going to do it, but not at scale.

                                                    I agree, but the deck is stacked against Mozilla. They are a relatively small nonprofit largely funded by Google. Structurally, there is no way they can make a product that competes. The problem is simply that there is no institutional counterweight to big tech right now, and the only real solutions are political: antitrust, regulation, maybe creating a publicly-funded institution with a charter to steward the internet in the way Mozilla was supposed to. There’s no solution to the problem merely through better organizational decisions or product design.

                                                    1. 49

                                                      I don’t really agree; there’s a lot of stuff they could be doing better, like not pushing out updates that change the colour scheme in such a way that it becomes nigh-impossible to see which tab is active. I don’t really care about “how it looks”, but this is just objectively bad. Maybe if you have some 16k super-HD IPS screen with perfect colour reproduction at full brightness in good office conditions it’s fine, but I just have a shitty ThinkPad screen and the sun in my home half the time (you know, like a normal person). It’s darn near invisible for me, and I have near-perfect eyesight (which not everyone has). I spent some time downgrading Firefox to 88 yesterday just for this – which it also doesn’t easily allow, not if you want to keep your profile anyway – because I couldn’t be arsed to muck about with userChrome.css hacks. Why can’t I just change themes? Or why isn’t there just a setting to change the colour?

                                                      There’s loads of other things; one small thing I like to do is not have a “x” on tabs to close it. I keep clicking it by accident because I have the motor skills of a 6 year old and it’s rather annoying to keep accidentally closing tabs. It used to be a setting, then it was about:config, then it was a userChrome.css hack, now it’s a userChrome.css hack that you need to explicitly enable in about:config for it to take effect, and in the future I probably need to sacrifice a goat to our Mozilla overlords if I want to change it.

                                                      I also keep accidentally bookmarking stuff. I press ^D to close terminal windows and sometimes Firefox is focused and oops, new bookmark for you! Want to configure keybinds for Firefox? Firefox say no; you’re not allowed, mere mortal end user; our keybinds are perfect and work for everyone, there must be something wrong with you if you don’t like it! It’s pretty darn hard to hack around this too – more time than I was willing to spend on it anyway – so I just accepted this annoyance as part of my life 🤷

                                                      “But metrics show only 1% of people use this!” Yeah, maybe; but 1% here and 5% there and 2% somewhere else and before you know it you’ve annoyed half (of not more) of your userbase with a bunch of stuff like that. It’s the difference between software that’s tolerable and software that’s a joy to use. Firefox is tolerable, but not a joy. I’m also fairly sure metrics are biased as especially many power users disable it, so while useful, blindly trusting it is probably not a good idea (I keep it enabled for this reason, to give some “power user” feedback too).

                                                      Hell, I’m not even a “power user” really; I have maybe 10 tabs open at the most, usually much less (3 right now) and most settings are just the defaults because I don’t really want to spend time mucking about with stuff. I just happen to be a programmer with an interest in UX who cares about a healthy web and knows none of this is hard, just a choice they made.

                                                      These are all really simple things; not rocket science. As I mentioned a few days ago, Firefox seems have fallen victim to a mistaken and fallacious mindset in their design.

                                                      Currently Firefox sits in a weird limbo that satisfies no one: “power users” (which are not necessarily programmers and the like, loads of people with other jobs interested in computers and/or use computers many hours every day) are annoyed with Firefox because they keep taking away capabilities, and “simple” users are annoyed because quite frankly, Chrome gives a better experience in many ways (this, I do agree, is not an easy problem to solve, but it does work “good enough” for most). And hey, even “simple” users occasionally want to do “difficult” things like change something that doesn’t work well for them.

                                                      So sure, while there are some difficult challenges Firefox faces in competing against Google, a lot of it is just simple every-day stuff where they just choose to make what I consider to be a very mediocre product with no real distinguishing features at best. Firefox has an opportunity to differentiate themselves from Chrome by saying “yeah, maybe it’s a bit slower – it’s hard and we’re working on that – but in the meanwhile here’s all this cool stuff you can do with Firefox that you can’t with Chrome!” I don’t think Firefox will ever truly “catch up” to Chrome, and that’s fine, but I do think they can capture and retain a healthy 15%-20% (if not more) with a vision that consists of more than “Chrome is popular, therefore, we need to copy Chrome” and “use us because we’re not Chrome!”

                                                      1. 21

                                                        Speaking of key bindings, Ctrl + Q is still “quit without any confirmation”. Someone filed a bug requesting this was changeable (not even default changed), that bug is now 20 years old.

                                                        It strikes me that this would be a great first issue for a new contributor, except the reason it’s been unfixed for so long is presumably that they don’t want it fixed.

                                                        1. 9

                                                          A shortcut to quit isn’t a problem, losing user data when you quit is a problem. Safari has this behaviour too, and I quite often hit command-Q and accidentally quit Safari instead of the thing I thought I was quitting (since someone on the OS X 10.8 team decided that the big visual clues differentiating the active window and others was too ugly and removed it). It doesn’t bother me, because when I restart Safari I get back the same windows, in the same positions, with the same tabs, scrolled to the same position, with the same unsaved form data.

                                                          I haven’t used Firefox for a while, so I don’t know what happens with Firefox, but if it isn’t in the same position then that’s probably the big thing to fix, since it also impacts experience across any other kind of browser restart (OS reboots, crashes, security updates). If accidentally quitting the browser loses you 5-10 seconds of time, it’s not a problem. If it loses you a load of data then it’s really annoying.

                                                          1. 4

                                                            Firefox does this when closing tabs (restoring closed tabs usually restores form content etc.) but not when closing the window.

                                                            The weird thing is that it does actually have a setting to confirm when quitting, it’s just that it only triggers when you have multiple tabs or windows open and not when there’s just one tab 🤷

                                                            1. 1

                                                              The weird thing is that it does actually have a setting to confirm when quitting, it’s just that it only triggers when you have multiple tabs or windows open and not when there’s just one tab

                                                              Does changing browser.tabs.closeWindowWithLastTab in about:config fix that?

                                                              1. 1

                                                                I have it set to false already, I tested it to make sure and it doesn’t make a difference (^W won’t close the tab, as expected, but ^Q with one tab will still just quit).

                                                            2. 2

                                                              I quite often hit command-Q and accidentally quit Safari

                                                              One of the first things I do when setting up a new macOS user for myself is adding alt-command-Q in Preferences → Keyboard → Shortcuts → App Shortcuts for “Quit Safari” in Safari. Saves my sanity every day.

                                                              1. 1

                                                                Does this somehow remove the default ⌘Q binding?

                                                                1. 1

                                                                  Yes, it changes the binding on the OS level, so the shortcut hint in the menu bar is updated to show the change

                                                                  1. 1

                                                                    It overrides it - Safari’s menu shows ⌥⌘Q against “Quit Safari”.

                                                                  2. 1

                                                                    You can do this in windows for firefox (or any browser) too with an autohotkey script. You can set it up to catch and handle a keypress combination before it reaches any other application. This will be global of course and will disable and ctrl-q hotkey in all your applications, but if you want to get into detail and write a more complex script you can actually check which application has focus and only block the combination for the browser.

                                                                  3. 2

                                                                    This sounds like something Chrome gets right - if I hit CMD + Q I get a prompt saying “Hold CMD+Q to Quit” which has prevented me from accidentally quitting lots of times. I assumed this was MacOS behaviour, but I just tested Safari and it quit immediately.

                                                                  4. 6

                                                                    Disabling this shortcut with browser.quitShortcut.disabled works for me, but I agree that bug should be fixed.

                                                                    1. 1

                                                                      Speaking of key bindings, Ctrl + Q is still “quit without any confirmation”.

                                                                      That was fixed a long time ago, at least on Linux. When I press it, a modal says “You are about to close 5 windows with 24 tabs. Tabs in non-private windows will be restored when you restart.” ESC cancels.

                                                                      1. 1

                                                                        That’s strange. I’m using latest Firefox, from Firefox, on Linux, and I don’t ever get a prompt. Another reply suggested a config tweak to try.

                                                                        1. 1

                                                                          I had that problem for a while but it went away. I have browser.quitShortcut.disabled as false in about:config. I’m not sure if it’s a default setting or not.

                                                                          1. 1

                                                                            quitShortcut

                                                                            It seems that this defaults to false. The fact you have it false, but don’t experience the problem, is counter-intuitive to me. Anyway the other poster’s suggestion was to flip this, so I’ll try that. Thanks!

                                                                            1. 1

                                                                              That does seem backwards. Something else must be overriding it. I’m using Ubuntu 20.04, if that matters. I just found an online answer that mentions the setting.

                                                                    2. 7

                                                                      On one level, I disagree – I have zero problems with Firefox. My only complaint is that sometimes website that are built to be Chrome-only don’t work sometimes, which isn’t really Firefox’s problem, but the ecosystem’s problem (see my comment above about antitrust, etc). But I will grant you that Firefox’s UX could be better, that there are ways the browser could be improved in general. However, I disagree here:

                                                                      retain a healthy 15%-20% (if not more)

                                                                      I don’t think this is possible given the amount of resources Firefox has. No matter how much they improve Firefox, there are two things that are beyond their control:

                                                                      1. Most users use Google products (gmail, calendar, etc), and without an antitrust case, these features will be seamlessly integrated into Chrome, and not Firefox.
                                                                      2. Increasingly, websites are simple not targeting Firefox for support, so normal users who want to say, access online banking, are SOL on Firefox. (This happens to me, I still have to use Chrome for some websites)

                                                                      Even the best product managers and engineers could not reverse Firefox’s design. We need a political solution, unless we want the web to become Google Web (tm).

                                                                      1. 3

                                                                        Why can’t I just change themes?

                                                                        You can. The switcher is at the bottom of the Customize Toolbar… view.

                                                                        1. 2

                                                                          Hm, last time I tried this it didn’t do much of anything other than change the colour of the toolbar to something else or a background picture; but maybe it’s improved now. I’ll have a look next time I try mucking about with 89 again; thanks!

                                                                          1. 3

                                                                            You might try the Firefox Colors extension, too. It’s a pretty simple custom theme builder.

                                                                            1. 2

                                                                              https://color.firefox.com/ to save the trouble of searching.

                                                                        2. 4

                                                                          I agree with Firefox’s approach of choosing mainstream users over power-users - that’s the only way they’ll ever have 10% or more of users. Firefox is doing things with theming that I wish other systems would do - they have full “fresco” themes (images?) in their chrome! It looks awesome! I dream about entire DEs and app suites built from the ground up with the same theme of frescoes (but with an different specific fresco for each specific app, perhaps tailored to that app). Super cool!

                                                                          I don’t like the lack of contrast on the current tab, but “give users the choice to fix this very specific issue or not” tends to be extremely shortsighted - the way to fix it is to fix it. Making it optional means yet another maintenance point on an already underfunded system, and doesn’t necessarily even fix the problem for most users!

                                                                          More importantly, making ultra-specific optionss like that is usually pushing decisions onto the user as a method of avoiding internal politicking/arguments, and not because pushing to the user is the optimal solution for that specific design aspect.

                                                                          1. 2

                                                                            As for the close button, I am like you. You can set browser.tabs.tabClipWidth to 1000. Dunno if it is scheduled to be removed.

                                                                            As for most of the other grips, adding options and features to cater for the needs of a small portion of users has a maintenance cost. Maybe adding the option is only one line, but then a new feature needs to work with the option enabled and disabled. Removing options is just a way to keep the code lean.

                                                                            My favorite example in the distribution world is Debian. Debian supports tries to be the universal OS. We are drowning with having to support everything. For examples, supporting many init systems is more work. People will get to you if there is a bug in the init system you don’t use. You spend time on this. At the end, people not liking systemd are still unhappy and switch to Devuan which supports less init systems. I respect Mozilla to keep a tight ship and maintaining only the features they can support.

                                                                            1. 7

                                                                              Nobody would say anything if their strategy worked. The core issue is that their strategy obviously doesn’t work.

                                                                              adding options and features to cater for the needs of a small portion of users

                                                                              It ’s not even about that.

                                                                              It’s removing things that worked and users liked by pretending that their preferences are invalid. (And every user belongs to some minority that likes a feature others may be unaware of.)

                                                                              See the recent debacle of gradually blowing up UI sizes, while removing options to keep them as they were previously.

                                                                              Somehow the saved cost to support some feature doesn’t seem to free up enough resources to build other things that entice users to stay.

                                                                              All they do with their condescending arrogance on what their perfectly spherical idea of a standard Firefox user needs … is making people’s lives miserable.

                                                                              They fired most of the people that worked on things I was excited about, and it seems all that’s left are some PR managers and completely out-of-touch UX “experts”.

                                                                              1. 4

                                                                                As for most of the other grips, adding options and features to cater for the needs of a small portion of users has a maintenance cost. Maybe adding the option is only one line, but then a new feature needs to work with the option enabled and disabled. Removing options is just a way to keep the code lean.

                                                                                It seems to me that having useful features is more important than having “lean code”, especially if this “lean code” is frustrating your users and making them leave.

                                                                                I know it’s easy to shout stuff from the sidelines, and I’m also aware that there may be complexities I may not be aware of and that I’m mostly ignorant of the exact reasoning behind many decisions (most of us here are really, although I’ve seen a few Mozilla people around), but what I do know is that 1) Firefox as a product has been moving in a certain direction for years, 2) that Firefox has been losing users for years, 3) that I know few people who truly find Firefox an amazing browser that a joy to use, and that in light of that 4) keep doing the same thing you’ve been doing for years is probably not a good idea, and 5) that doing the same thing but doing it harder is probably an even worse idea.

                                                                                I also don’t think that much of this stuff is all that much effort. I am not intimately familiar with the Firefox codebase, but how can a bunch of settings add an insurmountable maintenance burden? These are not “deep” things that reach in to the Gecko engine, just comparatively basic UI stuff. There are tons of projects with a much more complex UI and many more settings.

                                                                                Hell, I’d argue that even removing the RSS was also a mistake – they should have improved it instead, especially after Google Reader’s demise there was a huge missed opportunity there – although it’s a maintenance burden trade-off I can understand it better, it also demonstrates a lack of vision to just say “oh, it’s old crufty code, not used by many (not a surprise, it sucked), so let’s just remove it, people can just install an add-on if they really want it”. This is also a contradiction with Firefox’s mantra of “most people use the defaults, and if it’s not used a lot we can just remove it”. Well, if that’s true then you can ship a browser with hardly any features at all, and since most people will use the defaults they will use a browser without any features.

                                                                                Browsers like Brave and Vivaldi manage to do much of this; Vivaldi has an entire full-blown email client. I’d wager that a significant portion of the people leaving Firefox are actually switching to those browsers, not Chrome as such (but they don’t show up well in stats as they identify as “Chrome”). Mozilla nets $430 million/year; it’s not a true “giant” like Google or Apple, but it’s not small either. Vivaldi has just 55 employees (2021, 35 in 2017); granted, they do less than Mozilla, but it doesn’t require a huge team to do all of this.

                                                                                And every company has limited resources; it’s not like the Chrome team is a bottomless pit of resources either. A number of people in this thread express the “big Google vs. small non-profit Mozilla”-sentiment here, but it doesn’t seem that clear-cut. I can’t readily find a size for the Chrome team on the ‘net, but I checked out the Chromium source code and let some scripts loose on that: there are ~460 Google people with non-trivial commits in 2020, although quite a bit seems to be for ChromeOS and not the browser part strictly speaking, so my guestimate is more 300 people. A large team? Absolutely. But Mozilla’s $430/million a year can match this with ~$1.5m/year per developer. My last company had ~70 devs on much less revenue (~€10m/year). Basically they have the money to spare to match the Chrome dev team person-for-person. Mozilla does more than just Firefox, but they can still afford to let a lot of devs loose on Gecko/Firefox (I didn’t count the number devs for it, as I got some other stuff I want to do this evening as well).

                                                                                It’s all a matter of strategy; history is littered with large or even huge companies that went belly up just because they made products that didn’t fit people’s demands. I fear Firefox will be in the same category. Not today or tomorrow, but in five years? I’m not so sure Firefox will still be around to be honest. I hope I’m wrong.

                                                                                As for your Debian comparison; an init system is a fundamental part of the system; it would be analogous to Firefox supporting different rendering or JS engines. It’s not even close to the same as “an UI to configure key mappings” or “a bunch of settings for stuff you can actually already kind-of do but with hacks that you need to explicitly search for and most users don’t know it exists”, or even a “built-in RSS reader that’s really good and a great replacement for Google Reader”.

                                                                                1. 2

                                                                                  I agree with most of what you said. Notably the removal of RSS support. I don’t work for Mozilla and I am not a contributor, so I really can’t answer any of your questions.

                                                                                  Another example of maintaining a feature would be Alsa support. It has been removed, this upsets some users, but for me, this is understandable as they don’t want to handle bug reports around this or the code to get in the way of some other features or refactors. Of course, I use Pulseaudio, so I am quite biased.

                                                                                  1. 4

                                                                                    I think ALSA is a bad example; just use Pulseaudio. It’s long since been the standard, everyone uses it, and this really is an example of “147 people who insist on having an überminimal Linux on Reddit being angry”. It’s the kind of technical detail with no real user-visible changes that almost no one cares about. Lots of effort with basically zero or extremely minimal tangible benefits.

                                                                                    And ALSA is a not even a good or easy API to start with. I’m pretty sure that the “ALSA purists” never actually tried to write any ALSA code otherwise they wouldn’t be ALSA purists but ALSA haters, as I’m confident there is not a single person that has programmed with ALSA that is not an ALSA hater to some degree.

                                                                                    Pulseaudio was pretty buggy for a while, and its developer’s attitude surrounding some of this didn’t really help, because clearly if tons of people are having issues then all those people are just “doing it wrong” and is certainly not a reason to fix anything, right? There was a time that I had a keybind to pkill pulseaudio && pulseaudio --start because the damn thing just stopped working so often. The Grand Pulseaudio Rollout was messy, buggy, broke a lot of stuff, and absolutely could have been handled better. But all of that was over a decade ago, and it does actually provide value. Most bugs have been fixed years ago, Poettering hasn’t been significantly involved since 2012, yet … people still hold an irrational hatred towards it 🤷

                                                                                    1. 1

                                                                                      ALSA sucks, but PulseAudio is so much worse. It still doesn’t even actually work outside the bare basics. Firefox forced me to put PA on and since then, my mic randomly spews noise and sound between programs running as different user ids is just awful. (I temporarily had that working better though some config changes, then a PA update - hoping to fix the mic bug - broke this… and didn’t fix the mic bug…)

                                                                                      I don’t understand why any program would use the PA api instead of the alsa ones. All my alsa programs (including several I’ve made my own btw, I love it whenever some internet commentator insists I don’t exist) work equally as well as pulse programs on the PA system… but also work fine on systems where audio actually works well (aka alsa systems). Using the pulse api seems to be nothing but negatives.

                                                                              2. 1

                                                                                Not sure if this will help you but I absolutely cannot STAND the default Firefox theme so I use this: https://github.com/ideaweb/firefox-safari-style

                                                                                I stick with Firefox over Safari purely because it’s devtools are 100x better.

                                                                              3. 10

                                                                                There’s also the fact that web browsers are simply too big to reimplement at this point. The best Mozilla can do (barely) is try to keep up with the Google-controlled Web Platform specs, and try to collude with Apple to keep the worst of the worst from being formally standardized (though Chrome will implement them anyway). Their ability to do even that was severely impacted by their layoffs last year. At some point, Apple is going to fold and rebase Safari on Chromium, because maintaining their own browser engine is too unprofitable.

                                                                                At this point, we need to admit that the web belongs to Google, and use it only to render unto Google what is Google’s. Our own traffic should be on other protocols.

                                                                                1. 8

                                                                                  For a scrappy nonprofit they don’t seem to have any issues paying their executives millions of dollars.

                                                                                  1. 1

                                                                                    I mean, I don’t disagree, but we’re still talking several orders of magnitude less compensation than Google’s execs.

                                                                                    1. 5

                                                                                      A shit sandwich is a shit sandwich, no matter how low the shit content is.

                                                                                      (And no, no one is holding a gun to Mozilla’s head forcing them to hire in high-CoL/low-productivity places.)

                                                                                  2. 1

                                                                                    Product design can’t fix any of these problems because nobody is paying for the product. The more successful it is, the more it costs Mozilla. The only way to pay the rent with free-product-volume is adtech, which means spam and spying.

                                                                                    1. 4

                                                                                      Exactly why I think the problem requires a political solution.

                                                                                  3. 8

                                                                                    I don’t agree this is a vague ethical reason. Problem with those are concerns like deforestation (and destruction of habitats for smaller animals) to ship almond milk across the globe, and sewing as an alternative to poverty and prostitution, etc.

                                                                                    The browser privacy question is very quantifiable and concrete, the source is in the code, making it a concrete ethical-or-such choice.

                                                                                    ISTR there even being a study or two where people were asked about willingness to being spied upon, people who had no idea their phones were doing what was asked about, and being disconcerted after the fact. That’s also a concrete way to raise awareness.

                                                                                    At the end of the day none of this may matter if people sign away their rights willingly in favor of a “better” search-result filter bubble.

                                                                                    1. 11

                                                                                      I don’t think they’re vague (not the word I used) but rather abstract; maybe that’s no the best word either but what I mean with it is that it’s a “far from my bed show” as we would say in Dutch. Doing $something_better on these topics has zero or very few immediate tangible benefits, but rather more abstract long-term benefits. And in addition it’s also really hard to feel that you’re really making a difference as a single individual. I agree with you that these are important topics, it’s just that this type of argument is simply not all that effective at really making a meaningful impact. Perhaps it should be, but it’s not, and exactly because it’s important we need to be pragmatic about the best strategy.

                                                                                      And if you’re given the choice between “cheaper (or better) option X” vs. “more expensive (or inferior) option Y with abstract benefits but no immediate ones”, then I can’t really blame everyone for choosing X either. Life is short, lots of stuff that’s important, and can’t expect everyone to always go out of their way to “do the right thing”, if you can even figure out what the “right thing” is (which is not always easy or black/white).

                                                                                      1. 1

                                                                                        My brain somehow auto-conflated the two, sorry!

                                                                                        I think we agree that the reasoning in these is inoptimal either way.

                                                                                        Personally I wish these articles weren’t so academic, and maybe not in somewhat niche media, but instead mainstream publications would run “Studies show people do not like to be spied upon yet they are - see the shocking results” clickbaity stuff.

                                                                                        At least it wouldn’t hurt for a change.

                                                                                        1. 1

                                                                                          It probably wasn’t super-clear what exactly was intended with that in the first place so easy enough of a mistake to make 😅

                                                                                          As for articles, I’ve seen a bunch of them in mainstream Dutch newspapers in the last two years or so; so there is some amount of attention being given to this. But as I expended on in my other lengthier comment, I think the first step really ought to be making a better product. Not only is this by far the easiest to do and within our (the community’s) power to do, I strongly suspect it may actually be enough, or at least go a long way.

                                                                                          It’s like investing in public transport is better than shaming people for having a car, or affordable meat alternatives is a better alternative than shaming people for eating meat, etc.

                                                                                    2. 7

                                                                                      I agree to an extent. Firefox would do well to focus on the user experience front.

                                                                                      I switched to Firefox way back in the day, not because of vague concerns about the Microsoft hegemony, or even concerns about web standards and how well each browser implemented them. I switched because they introduced the absolutely groundbreaking feature that is tabbed browsing, which gave a strictly better user experience.

                                                                                      I later switched to Chrome when it became obvious that it was beating Firefox in terms of performance, which is also a factor in user experience.

                                                                                      What about these days? Firefox has mostly caught up to Chrome on the performance point. But you know what’s been the best user experience improvement I’ve seen lately? Chrome’s tab groups feature. It’s a really simple idea, but it’s significantly improved the way I manage my browser, given that I tend to have a huge number of tabs open.

                                                                                      These are the kinds of improvements that I’d like to see Firefox creating, in order to lure people back. You can’t guilt me into trying a new browser, you have to tempt me.

                                                                                      1. 10

                                                                                        But you know what’s been the best user experience improvement I’ve seen lately? Chrome’s tab groups feature. It’s a really simple idea, but it’s significantly improved the way I manage my browser, given that I tend to have a huge number of tabs open.

                                                                                        Opera had this over ten years ago (“tab stacking”, added in Opera 11 in 2010). Pretty useful indeed, even with just a limited number of tabs. It even worked better than Chrome groups IMO. Firefox almost-kind-of has this with container tabs, which are a nice feature actually (even though I don’t use it myself), and with a few UX enhancements on that you’ve got tab groups/stacking.

                                                                                        Opera also introduced tabbed browsing by the way (in 2000 with Opera 4, about two years before Mozilla added it in Phoenix, which later became Firefox). Opera was consistently way ahead of the curve on a lot of things. A big reason it never took off was because for a long time you had to pay for it (until 2005), and after that it suffered from “oh, I don’t want to pay for it”-reputation for years. It also suffered from sites not working; this often (not always) wasn’t even Opera’s fault as frequently this was just a stupid pointless “check” on the website’s part, but those were popular in those days to tell people to not use IE6 and many of them were poor and would either outright block Opera or display a scary message. And being a closed-source proprietary product also meant it never got the love from the FS/OSS crowd and the inertia that gives (not necessarily a huge inertia, but still).

                                                                                        So Firefox took the world by storm in the IE6 days because it was free and clearly much better than IE6, and when Opera finally made it free years later it was too late to catch up. I suppose the lesson here is that “a good product” isn’t everything or a guarantee for success, otherwise we’d all be using Opera (Presto) now, but it certainly makes it a hell of a lot easier to achieve success.

                                                                                        Opera had a lot of great stuff. I miss Opera 😢 Vivaldi is close (and built by former Opera devs) but for some reason it’s always pretty slow on my system.

                                                                                        1. 1

                                                                                          This is fair and I did remember Opera being ahead of the curve on some things. I don’t remember why I didn’t use it, but it being paid is probably why.

                                                                                          1. 1

                                                                                            I agree, I loved the Presto-era Opera and I still use the Blink version as my main browser (and Opera Mobile on Android). It’s still much better than Chrome UX-wise.

                                                                                          2. 4

                                                                                            I haven’t used tab groups, but it looks pretty similar to Firefox Containers which was introduced ~4 years ahead of that blog post. I’ll grant that the Chrome version is built-in and looks much more polished and general purpose than the container extension, so the example is still valid.

                                                                                            I just wanted to bring this up because I see many accusations of Firefox copying Chrome, but I never see the reverse being called out. I think that’s partly because Chrome has the resources to take Mozilla’s ideas and beat them to market on it.

                                                                                            Disclaimer: I’m a Mozilla employee

                                                                                          3. 4

                                                                                            One challenge for people making this kind of argument is that predictions of online-privacy doom and danger often don’t match people’s lived experiences. I’ve been using Google’s sites and products for over 20 years and have yet to observe any real harm coming to me as a result of Google tracking me. I think my experience is typical: it is an occasional minor annoyance to see repetitive ads for something I just bought, and… that’s about the extent of it.

                                                                                            A lot of privacy advocacy seems to assume that readers/listeners believe it’s an inherently harmful thing for a company to have information about them in a database somewhere. I believe privacy advocates generally believe that, but if they want people to listen to arguments that use that assumption as a starting point, they need to do a much better job offering non-circular arguments about why it’s bad.

                                                                                            1. 4

                                                                                              I think it has been a mistake to focus on loss of privacy as the primary data collection harm. To me the bigger issue is that it gives data collectors power over the creators of the data and society as a whole, and drives destabilizing trends like political polarization and economic inequality. In some ways this is a harder sell because people are brainwashed to care only about issues that affect them personally and to respond with individualized acts.

                                                                                              1. 4

                                                                                                There is no brainwashing needed for people to act like people.

                                                                                                1. 1

                                                                                                  do you disagree with something in my comment?

                                                                                                  1. 3

                                                                                                    In some ways this is a harder sell because people are brainwashed to care only about issues that affect them personally and to respond with individualized acts.

                                                                                                    I’m not @halfmanhalfdonut but I don’t think that brainwashing is needed to get humans to behave like this. This is just how humans behave.

                                                                                                    1. 2

                                                                                                      Yep, this is what I was saying.

                                                                                                      1. 1

                                                                                                        things like individualism, solidarity, and collaboration exist on a spectrum, and everybody exhibits each to some degree. so saying humans just are individualistic is tautological, meaningless. everyone has some individualism in them regardless of their upbringing, and that doesn’t contradict anything in my original comment. that’s why I asked if there was some disagreement.

                                                                                                        to really spell it out, modern mass media and culture condition people to be more individualistic than they otherwise would be. that makes it harder to make an appeal to solidarity and collaboration.

                                                                                                        @GrayGnome

                                                                                                        1. 1

                                                                                                          I think you’re only seeing the negative side (to you) of modern mass media and culture. Our media and culture also promote unity, tolerance, respect, acceptance, etc. You’re ignoring that so that you can complain about Google influencing media, but the reality is that the way you are comes from those same systems of conditioning.

                                                                                                          The fact that you even know anything about income inequality and political polarization are entirely FROM the media. People on the whole are not as politically divided as media has you believe.

                                                                                                          1. 1

                                                                                                            sure, I only mentioned this particular negative aspect because it was relevant to the point I was making in my original comment

                                                                                                          2. 1

                                                                                                            to really spell it out, modern mass media and culture condition people to be more individualistic than they otherwise would be. that makes it harder to make an appeal to solidarity and collaboration.

                                                                                                            I think we’re going to have to agree to disagree. I can make a complicated rebuttal here, but it’s off-topic for the site, so cheers!

                                                                                                            1. 1

                                                                                                              cheers

                                                                                              2. 3

                                                                                                I agree with everything you’ve written in this thread, especially when it comes to the abstractness of pro-Firefox arguments as of late. Judging from the votes it seems I am not alone. It is sad to see Mozilla lose the favor of what used to be its biggest proponents, the “power” users. I truly believe they are digging their own grave – faster and faster it seems, too. It’s unbelievable how little they seem to be able to just back down and admit they were wrong about an idea, if only for a single time.

                                                                                                1. 2

                                                                                                  Firefox does have many features that Chrome doesn’t have: container tabs, tree style tabs, better privacy and ad-blocking capabilities, some useful dev tools that I don’t think Chrome has (multi-line JS and CSS editors, fonts), isolated profiles, better control over the home screen, reader mode, userChrome.css, etc.

                                                                                                1. 30

                                                                                                  Lesson (I learned > a decade ago): never buy Nvidia in laptops if you want to run Linux, have decent battery life and not have the fan spinning all the time. Definitely never buy it in hybrid setup.

                                                                                                  Sad to see it is still as true today.

                                                                                                  1. 10

                                                                                                    I explicitly bought an AMD GPU in my new desktop because I love their Linux support these days. Even though a NVIDIA card would have worked fine on the single GPU desktop I didn’t want them to get my money.

                                                                                                    1. 5

                                                                                                      with these prices? how’d you manage that? what GPU did you get?

                                                                                                      1. 8

                                                                                                        Ok, you caught me. I haven’t received it yet. But I am in a queue since December. But I got in the AMD queue for this reason.

                                                                                                        1. 3

                                                                                                          That’s cool, and I support your choices. That’s why I’m planning my workstation upgrade. Something along the lines of 5900x or similar, but I’m strugling to find a GPU anywhere.

                                                                                                        2. 2

                                                                                                          Depending on what you need, laptops with AMD APUs are available. I bought a ThinkPad T14 AMD last November or December. The amdgpu driver is really excellent.

                                                                                                          1. 1

                                                                                                            Yes, I also have a tuxedo pulse with a Ryzen 7 4800h which is great. But we were talking about desktop GPUs. Something I can replace my 980Ti with. No APU can touch my 7 year old GPU, but buying a replacement is not that easy.

                                                                                                            1. 2

                                                                                                              I also generally prefer a desktop/workstation for heavy lifting, they are much more powerful and much more quiet with the right cooling. Since I need CUDA, I purchased a RTX 2060 Super last year when it was still 499 Euro. I bought a Radeon RX 580 around the same time for 216 Euro. I recently sold it since I didn’t need it anymore, and was offered around 400 Euro. It’s crazy what a 4 year old GPU costs, even second-hand.

                                                                                                              I hope that the crypto mining craze is soon over and GPUs can be had at normal prices again. But I fear that it will only get worse with Chia also driving up the prices of SSDs.

                                                                                                              1. 1

                                                                                                                That one looks nice, I still prefer the old XP line with a dedicated display port. Really disappointed that the USB-C port of the pulse model doesn’t even support DP, so it doesn’t have any DP connection.

                                                                                                                1. 1

                                                                                                                  Yeah, connectivity is kind of a big downside, especially if you mean it as a full desktop replacement - only one external monitor would be too little, I think. But I also have a full desktop so I only need this when I’m not at home.

                                                                                                        3. 2

                                                                                                          To contrast: I prefer laptops with discrete NVIDIA GPUs if the laptop is running either FreeBSD or HardenedBSD. NVIDIA’s drivers are stellar on FBSD/HBSD.

                                                                                                          1. 5

                                                                                                            They’re proprietary (where’s your usual security worries with that? :D) and they always lag behind Linux in enabling new things. It took them over a year to enable Vulkan IIRC. On Linux they’ve added some KMS integration quite some time ago already. On FreeBSD that’s still ongoing unofficial-but-with-some-official-help work. Generally it’s still all custom modesetting initiated by the Xorg DDX, and in that stack they still have that situation where using Xorg once makes the VT console not display anything at all until you reboot! That’s not stellar, that’s bad.

                                                                                                            On the AMD/Intel side, we haven’t been keeping up with kernel updates (so don’t rush to buy a 6900 XT from scalpers just yet lol) but we don’t have any weird problems like that, everything is basically identical to Linux, you can run git versions of Mesa to always keep up with graphics development or whatever. Something like this news? Yeah I can just build and run that code myself.

                                                                                                            1. 1

                                                                                                              As someone who advocates for the BSD license, I have zero issues with proprietary works. I think you’re operating on some outdated info. The console works fine for me when I switch between xorg and the virtual consoles. My Dell Precision 7540 shipped with the absolute latest NVIDIA Quadro discrete GPU. Worked fine on HardenedBSD out-of-the-box for me. The laptop even drives 2x4k monitors in addition to the laptop monitor itself.

                                                                                                              I don’t game, so Vulkan and OpenGL aren’t really important to me. Supporting multiple monitors is what’s important to me.

                                                                                                              So: FreeBSD’s great NVIDIA GPU support works wonderfully for me. Does everything I myself need and more.

                                                                                                              edit[0]: I should clarify that OpenGL works fine with NVIDIA. I do have ioquake3 installed on my laptop, and it works just fine. I mainly have ioquake3 installed to test if/how the exploit mitigations and security hardening techniques I’m developing impacts applications.

                                                                                                              1. 1

                                                                                                                console works fine for me when I switch between xorg and the virtual consoles

                                                                                                                I guess they fixed this in new drivers. So it’s limited to older GPUs then. They keep dropping support for those so their users are stuck with old drivers – and no easy way to fix because proprietary. In version 340 the issue’s there, we even got a very recent confirmation in an unrelated issue.

                                                                                                                zero issues with proprietary works

                                                                                                                I would expect you to at least consider them inherently less trustworthy because you can’t know what they really are without extensive reverse engineering :) But for me the most frustrating thing is the inability to just modify them.

                                                                                                                1. 4

                                                                                                                  I would expect you to at least consider them inherently less trustworthy because you can’t know what they really are without extensive reverse engineering

                                                                                                                  We’re getting off-topic here, but: I trust proprietary works the same amount I trust open source works: not much. The openness of the software does not correlate with the quality of the software. I work on proprietary code for my day job. I don’t deliberately add flaws to my code at work. I treat my code at work the same as my open source hobby code.

                                                                                                                  Remember OpenSSL’s Heartbleed? Remember how we all assumed that since it was open source, it was naturally secure and that there were many eyes on it? Heartbleed alone should teach us in general that software sucks, regardless of its status of open or closed source.

                                                                                                                2. 1

                                                                                                                  Why do you need the absolute latest Nvidia Quadro for running two displays?

                                                                                                                  Wouldn’t even the most mediocre Intel iGPU do that job?

                                                                                                                  1. 1

                                                                                                                    I didn’t need it. The laptop shipped with it.

                                                                                                            2. 1

                                                                                                              I’m using an hybrid setup since 2016 and works most of the time. Can’t deny the battery stuff though.

                                                                                                            1. 67

                                                                                                              I don’t understand how heat maps are used as a measuring tool, it seems pretty useless on its own. If something is little clicked, does it mean people don’t need the feature or people don’t like how it’s implemented? Or how do you know if people would really like something that’s not there to begin with?

                                                                                                              It reminds about the Feed icon debacle: it’s been neglected for years and fell out of active use, which lead Mozilla to say “oh look, people don’t need the Feed icon, let’s move it away from the toolbar”. And then after a couple of versions they said “oh look, even less people use the Feed functionality, let’s remove it altogether”. Every time I see a click heatmap as a means to drive UI decisions I can’t shake the feeling that it’s only used to rationalize arbitrary product choices already made.

                                                                                                              (P.S. I’ve been using Firefox since it was called Netscape and never understood why so many people left for Chrome, so no, I’m not just a random hater.)

                                                                                                              1. 11

                                                                                                                Yeah, reminds me of some old Spiderman game where you could “charge” your jump to jump higher. They removed the visible charge meter in a sequel but kept the functionality, then removed the functionality in the sequel after that because nobody was using it (because newcomers didn’t know it was there, because there was no visible indication of it!).

                                                                                                                1. 8

                                                                                                                  It’s particularly annoying that the really cool things, which might actually have a positive impact for everyone – if not now, at least in a later release – are buried at the end of the announcement. Meanwhile, some of the things gathered through metrics would be hilarious were it not for the pretentious marketing language:

                                                                                                                  There are many ways to get to your preferences and settings, and we found that the two most popular ways were: 1) the hamburger menu – button on the far right with three equal horizontal lines – and 2) the right-click menu.

                                                                                                                  Okay, first off, this is why you should proofread/fact-check even the PR and marketing boilerplate: there’s no way to get to your preferences and settings through the right-click menu. Not in a default state at least, maybe you can customize the menu to include these items but somehow I doubt that’s what’s happening here…

                                                                                                                  Anyway, assuming “get to your preferences and settings” should’ve actually been “do things with the browser”: the “meatball” menu icon has no indication that it’s a menu, and a fourth way – the old-style menu bar – is hidden by default on two of the three desktop platforms Firefox supports, and isn’t even available on mobile. If you leave out the menubar through sheer common sense, you can skip the metrics altogether, a fair dice throw gets you 66% accuracy.

                                                                                                                  People love or intuitively believe what they need is in the right click menu.

                                                                                                                  I bet they’ll get the answer to this dilemma if they:

                                                                                                                  • Look at the frequency of use for the “Copy” item in the right-click menu, and
                                                                                                                  • For a second-order feature, if they break down right-click menu use by input device type and screen size

                                                                                                                  And I bet the answer has nothing to do with love or intuition ;-).

                                                                                                                  I have also divined in the data that the frequency of use for the right-click menu will further increase. The advanced machine learning algorithms I have employed to make this prediction consist of the realisation that one menu is gone, and (at least the screenshots show) that the Copy item is now only available in the right-click menu.

                                                                                                                  Out of those 17 billion clicks, there were three major areas within the browser they visited:

                                                                                                                  A fourth is mentioned in addition to the three in the list and, as one would expect, these four (out of… five?) areas are: the three areas with the most clickable widgets, plus the one you have to click in order to get to a new website (i.e. the navigation bar).

                                                                                                                  1. 12

                                                                                                                    They use their UX experts & measurements to rationalize decisions done to make Firefox more attractive to (new) users as they claim, but … when do we actually see the results?

                                                                                                                    The market share has kept falling for years, whatever they claim to be doing, it is exceedingly obvious that they are unable to deliver.

                                                                                                                    Looking back, the only thing I remember Mozilla doing in the last 10 years is

                                                                                                                    • a constant erosion of trust
                                                                                                                    • making people’s lives miserable
                                                                                                                    • running promising projects into the ground at full speed

                                                                                                                    I would be less bitter about it if Mozilla peeps wouldn’t be so obnoxiously arrogant about it.


                                                                                                                    Isn’t this article pretty off-topic, considering how many stories are removed for being “business analysis”?

                                                                                                                    This is pretty much “company losing users posts this quarter’s effort to attract new users by pissing off existing ones”.

                                                                                                                    1. 14

                                                                                                                      The whole UI development strategy seems to be upside down: Firefox has been hermorrhaging users for years, at a rate that the UI “improvements” have, at best, not influenced much, to the point where a good chunk of the browser “market” consists of former Firefox users.

                                                                                                                      Instead of trying to get the old users back, Firefox is trying to appeal to a hypothetical “new user” who is technically illiterate to the point of being confused by too many buttons, but somehow cares about tracking through 3rd-party cookies and has hundreds of tabs open.

                                                                                                                      The result is a cheap Chrome knock-off that’s not appealing to anyone who is already using Chrome, alienates a good part of their remaining user base who specifically want a browser that’s not like Chrome, and pushes the few remaining Firefox users who don’t specifically care about a particular browser further towards Chrome (tl;dr if I’m gonna use a Chrome-like thing, I might as well use the real deal). It’s not getting anyone back, and it keeps pushing people away at the same time.

                                                                                                                      1. 16

                                                                                                                        The fallacy of Firefox, and quite a few other projects and products, seems to be:

                                                                                                                        1. Project X is more popular than us.
                                                                                                                        2. Project X does Y.
                                                                                                                        3. Therefore, we must do Y.

                                                                                                                        The fallacy is that a lot of people are using your software is exactly because it’s not X and does Z instead of Y.

                                                                                                                        It also assumes that the popularity is because of Y, which may be the case but may also not be the case.

                                                                                                                        1. 3

                                                                                                                          You’re not gonna win current users away from X by doing what X does, unless you do it much cheaper (not an option), or 10x better (hard to see how you could do more of chrome better than chrome).

                                                                                                                          1. 1

                                                                                                                            You might; however, stop users from switching to X by doing what X does, even if you don’t do it quite as well.

                                                                                                                        2. 4

                                                                                                                          The fundamental problem with Firefox is: It’s just slow. Slower than Chrome for almost everything. Slower at games (seriously, its canvas performance is really bad), slower at interacting with big apps like Google Docs, less smooth scrolling, even more latency between you hit a key on the keyboard and the letter shows up in the URL bar. This stuff can’t be solved with UI design changes.

                                                                                                                          1. 3

                                                                                                                            Well, but there are reasons why it’s slow - and at least one good one.

                                                                                                                            Most notably, because Firefox makes an intentionally different implementation trade-off than Chrome. Mozilla prioritizes lower memory usage in FF, while Google prioritizes lower latency/greater speed.

                                                                                                                            (I don’t have a citation on me at the moment, but I can dig one up later if anyone doesn’t believe me)

                                                                                                                            That’s partially why you see so many Linux users complaining about Chrome’s memory usage.

                                                                                                                            These people are getting exactly what they asked for, and in an age where low CPU usage is king (slow mobile processors, limited battery life, more junk shoved into web applications, and plentiful RAM for people who exercise discipline and only do one thing at once), Chrome’s tradeoff appears to be the better one. (yes, obviously that’s not the only reason that people use Chrome, but I do see people noticing it and citing it as a reason)

                                                                                                                            1. 2

                                                                                                                              I rarely use Google Docs; basically just when someone sends me some Office or Spreadsheet that I really need to read. It’s easiest to just import that in Google Docs; I never use this kind of software myself and this happens so infrequently that I can’t be bothered to install LibreOffice (my internet isn’t too fast, and downloading all updates for it takes a while and not worth it for the one time a year I need it). But every time it’s a frustrating experience as it’s just so darn slow. Actually, maybe it would be faster to just install LibreOffice.

                                                                                                                              I haven’t used Slack in almost two years, but before this it was sometimes so slow in Firefox it was ridiculous. Latency when typing could be in the hundreds or thousands of ms. It felt like typing over a slow ssh connection with packet loss.

                                                                                                                              CPU vs. memory is a real trade-off with a lot of various possible ways to do this and it’s a hard problem. But it doesn’t change that the end result is that for me, as a user, Firefox is sometimes so slow to the point of being unusable. If I had a job where they used Slack then this would be a problem as I wouldn’t be able to use Firefox (unless it’s fixed now, I don’t know if it is) and I don’t really fancy having multiple windows.

                                                                                                                              That being said, I still feel Firefox gives a better experience overall. In most regular use it’s more than fast enough; it’s just a few exceptions where it’s so slow.

                                                                                                                              1. 1

                                                                                                                                That being said, I still feel Firefox gives a better experience overall. In most regular use it’s more than fast enough; it’s just a few exceptions where it’s so slow.

                                                                                                                                I agree. I absolutely prefer Firefox to Chrome - it’s generally a better browser with a much better add-on ecosystem (Tree Style Tabs, Container Tabs, non-crippled uBlock Origin) and isn’t designed to allow Google to advertise to you. My experience with it is significantly better than with Chome.

                                                                                                                                It’s because I like Firefox so much that I’m so furious about this poor design tradeoff.

                                                                                                                                (also, while it contributes, I don’t blame all of my slowdowns on Firefox’s design - there are many cases where it’s crippled by Google introducing some new web “standard” that sites started using before Firefox could catch up (most famously, the ShaddowDOM v0 scandal with YouTube))

                                                                                                                              2. 1

                                                                                                                                I don’t have a citation on me at the moment, but I can dig one up later if anyone doesn’t believe me

                                                                                                                                I’m interested in your citations :)

                                                                                                                                1. 1

                                                                                                                                  Here’s one about Google explicitly trading off memory for CPU that I found on the spot: https://tech.slashdot.org/story/20/07/20/0355210/google-will-disable-microsofts-ram-saving-feature-for-chrome-in-windows-10

                                                                                                                          2. 4

                                                                                                                            I remember more things from Mozilla. One is also a negative (integration of a proprietary application, Pocket, into the browser; it may be included in your “constant erosion of trust” point), but the others are more positive.

                                                                                                                            Mozilla is the organization that let Rust emerge. I’m not a Rust programmer myself but I think it’s clear that the language is having a huge impact on the programming ecosystem, and I think that overall this impact is very positive (due to some new features of its own, popularizing some great features from other languages, and a rather impressive approach to building a vibrant community). Yes, Mozilla is also the organization that let go of all their Rust people, and I think it was a completely stupid idea (Rust is making it big, and they could be at the center of it), but somehow they managed to wait until the project was mature enough to make this stupid decision, and the project is doing okay. (Compare to many exciting technologies that were completely destroyed by being shut out too early.) So I think that the balance is very positive: they grew an extremely positive technology, and then they messed up in a not-as-harmful-as-it-could-be way.

                                                                                                                            Also, I suspect that Mozilla is doing a lot of good work participating to the web standards ecosystem. This is mostly a guess as I’m not part of this community myself, so it could have changed in the last decade and I wouldn’t know. But this stuff matters a lot to everyone, we need to have technical people from several browsers actively participating, it’s a lot of work, and (despite the erosion of trust you mentioned) I still trust the Mozilla standard engineers to defend the web better than Google (surveillance incentives) or Apple (locking-down-stuff incentives). (Defend, in the sense that I suspect I like their values and their view of the web, and I guess that sometimes this makes a difference during standardization discussion.) Unfortunately this part of Mozilla’s work gets weaker as their market share shrinks.

                                                                                                                            1. 3

                                                                                                                              Agreed. I consider Rust a positive thing in general (though some of the behavioral community issues there seem to clearly originate from the Mozilla org), but it’s a one-off – an unexpected, pleasant surprise that Rust didn’t end in the premature death-spiral that Mozilla projects usually end up in.

                                                                                                                              Negative things I remember most are Persona, FirefoxOS and the VPN scam they are currently running.

                                                                                                                              1. 4

                                                                                                                                I consider Rust a positive thing in general (though some of the behavioral community issues there seem to clearly originate from the Mozilla org), but it’s a one-off

                                                                                                                                Hard disagree there. Pernosco is a revolution in debugging technology (a much, much bigger revolution than what Rust is to programming languages) and wouldn’t exist without Mozilla spending engineering resources on RR. I don’t know much about TTS/STT but the Deepspeech work Mozilla has done also worked quite nicely and seemed to make quite an impact in the field. I think I also recall them having some involvement in building a formally-proven crypto stack? Not sure about this one though.

                                                                                                                                Mozilla has built quite a lot of very popular and impressive projects.

                                                                                                                                Negative things I remember most are Persona, FirefoxOS and the VPM scam they are currently running.

                                                                                                                                None of these make me as angry as the Mister Robot extension debacle they caused a few years ago.

                                                                                                                                1. 2

                                                                                                                                  To clarify, I didn’t mean it’s a one-off that it was popular, but that it’s a one-off that it didn’t get mismanaged into the ground. Totally agree otherwise.

                                                                                                                                2. 4

                                                                                                                                  the VPM [sic] scam they are currently running

                                                                                                                                  Where have you found evidence that Mozilla is not delivering what they promise - a VPN in exchange for money?

                                                                                                                                  1. 0

                                                                                                                                    They are trying to use the reputation of their brand to sell a service to a group of “customers” that has no actual need for it and barely an understanding what it does or for which purposes it would be useful.

                                                                                                                                    What they do is pretty much the definition of selling snake oil.

                                                                                                                                    1. 7

                                                                                                                                      I am a Firefox user and I’m interested in their VPN. I have a need for it, too - to prevent my ISP from selling information about me. I know how it works and what it’s useful for. I can’t see how they’re possibly “selling snake oil” unless they’re advertising something that doesn’t work or that they won’t actually deliver…

                                                                                                                                      …which was my original question, which you sidestepped. Your words seem more like an opinion disguised as fact than actual fact.

                                                                                                                            2. 2

                                                                                                                              It’s a tool like a lot of other things. Sure, you can abuse it in many ways, but unless we know how the results are used we can’t tell if it’s a good or bad scenario. A good usage for a heatmap could be for example looking at where people like to click on a menu item and how far should the “expand” button go.

                                                                                                                              As an event counter, they’re not great - they can get that info in better/cheaper ways.

                                                                                                                              1. 2

                                                                                                                                This is tricky and also do for survey. I often am in a situation where it asks me “What do you have the hardest time with it” or “What prevents you from using language X on your current project?” and when the answer essentially boils down to “I am doing scripting and not systems programming” or something similar, I don’t intend to tell them that they should make a scripting language out of a systems language or vice versa.

                                                                                                                                And I know these are often taken wrongly, by reading the results and interpretation. There rarely is a “I like it how it is” option or a “Doesn’t need changes” or even “Please don’t change this!”.

                                                                                                                                I am sure this is true about other topics too, but programming language surveys seem to be a trend so that’s where I often see it.

                                                                                                                                1. 1

                                                                                                                                  I feel like they’re easily gamed, too. I feel like this happened with Twitter and the “Moments” tab. When they introduced it, it was in the top bar to the right of the “Notifications” tab. Some time after introduction, they swapped the “Notifications” and “Moments” tab, and the meme on Twitter was how the swap broke people’s muscle memory.

                                                                                                                                  I’m sure a heat map would’ve shown that after the swap, the Moments feature suddenly became a lot more popular. What that heat map wouldn’t show was user intent.

                                                                                                                                  1. 1

                                                                                                                                    from what I understand, the idea behind heat maps is not to decide about which feature to kill, but to measure what should be visible by default. The more stuff you add to the screen, the more cluttered and noisy the browser becomes. Heat maps help Mozilla decide if a feature should be moved from the main visible UX to some overflowing menu.

                                                                                                                                    Most things they moved around can be re-arranged by using the customise toolbar feature. In that sense, you do have enough bits to make your browser experience yours to some degree.


                                                                                                                                    The killing of feed icon was not decided with heat maps alone. From what I remember, that feature was seldom used (something they can get from telemetry and heat maps) but also was some legacy bit rot that added friction to maintenance and whatever they wanted to do. Sometimes features that are loved by few are simply in the way of features that will benefit more people, it is sad but it is true for codebases that are as old as Firefox.

                                                                                                                                    Anyway, feed reading is one WebExtension away from any user, and those add-ons usually do a much better job than the original feature ever did.

                                                                                                                                    1. 1

                                                                                                                                      I’m wondering how this whole heatmaps/metrics thing works for people who have customized their UI.

                                                                                                                                      I’d assume that the data gained from e. g. this is useless at best and pollution at worst to Mozilla’s assumption of a perfectly spherical Firefox user.

                                                                                                                                      1. 1

                                                                                                                                        @soc, I expect the browser to know it’s own UI and mark heat maps with context so that clicking on a tab is flagged the same way regardless if tabs are on top or the side. Also, IIRC the majority of Firefox users do not customise their UI. We live in a bubble of devs and power users who do, but that is a small fraction of the user base. Seeing what the larger base is doing is still beneficial.

                                                                                                                                        worst to Mozilla’s assumption of a perfectly spherical Firefox user.

                                                                                                                                        I’m pretty sure they can get meaningful results without assuming everyone is the same ideal user. Heat maps are just a useful way to visualise something, specially when you’re doing a blog post.

                                                                                                                                    2. 1

                                                                                                                                      never understood why so many people left for Chrome,

                                                                                                                                      The speed difference is tangible.

                                                                                                                                      1. 2

                                                                                                                                        I don’t find it that tangible. If I was into speed, I’d be using Safari here which is quite fast. There are lots of different reasons to choose a browser. A lot of people switched to Chrome because of the constant advertising in Google webapps and also because Google has a tendency of breaking compatibility or reducing compatibility and performance with every other browser, thus making Google stuff work better on Chrome.

                                                                                                                                    1. 108

                                                                                                                                      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. 34

                                                                                                                                          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. 21

                                                                                                                                            <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. 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. 7

                                                                                                                                                        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. 21

                                                                                                                                                          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. 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. 4

                                                                                                                                                                                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. 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. 20

                                                                                                                                                                                                              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. 18

                                                                                                                                                                                                                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. 6

                                                                                                                                                                                                                        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. 3

                                                                                                                                                                                                                          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. 3

                                                                                                                                                                                                                            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. 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.

                                                                                                                                                                                                                          1. 3

                                                                                                                                                                                                                            Article does not describe or demonstrate the native code execution.

                                                                                                                                                                                                                            1. 2

                                                                                                                                                                                                                              I still remember when they showed that a type with bad bounds could be constructed, but didn’t introduce soundness problems in DOT, as the type was uninhabited.

                                                                                                                                                                                                                              And then it was promptly shot into pieces as Dotty/Scala happily accepted null in that place. (Link)

                                                                                                                                                                                                                              Good times!

                                                                                                                                                                                                                              1. 20

                                                                                                                                                                                                                                There is at least one reason for Clojure users to choose for their libraries to be distributed with the same terms as Clojure’s core and standard libraries: it removes one of the many barriers towards canonicalizing popular libraries in a language’s standard library. In e.g. the Python ecosystem, the PSFL serves a similar purpose.

                                                                                                                                                                                                                                That said, I’m not sure I understand at least one of the implicit themes in your post: Why are copyleft licenses “restrictive” or “inflexible”? In the past few discussions that we’ve had here, it seems that these imagined restrictions would generally not impede individual people from expressing themselves with Clojure. Indeed, if more of the Clojure ecosystem were copylefted, wouldn’t e.g. Datomic be pressured to become Free Software too, increasing the expressive landscape?

                                                                                                                                                                                                                                To very gently apply some deconstruction of our own, it appears that this blog post asking a community to use permissive non-copyleft licenses is part of a corporation’s Web presence. Similarly, the “Choose a License” page is owned and operated by GitHub, a subsidiary of Microsoft, one of the “software behemoths like Amazon and Apple” mentioned in this post. When you say, “benefits to copyleft which outweigh the costs,” what exactly are the costs?

                                                                                                                                                                                                                                1. 10

                                                                                                                                                                                                                                  The cost (and inflexibility) is that of a one-way street, as indicated by the doodles. :) I see a lot of new developers blindly choosing the EPL without even familiarizing themselves with the terms of the license. That’s a really difficult decision to reverse.

                                                                                                                                                                                                                                  This post isn’t advocating for MIT over copyleft licenses generally. It’s only a discussion about Sensible Defaults. I license quite a lot of my source AGPL-3, where copyleft licenses are appropriate. But I also ensure I get external contributors to sign Contributor Agreements because, in all likelihood, the AGPL-3 won’t be sufficient indefinitely. In 20 years, those projects may require a stricter copyleft license (or a permissive license, but I doubt it).

                                                                                                                                                                                                                                  1. 13

                                                                                                                                                                                                                                    To very gently apply some deconstruction of our own, it appears that this blog post asking a community to use permissive non-copyleft licenses is part of a corporation’s Web presence. Similarly, the “Choose a License” page is owned and operated by GitHub, a subsidiary of Microsoft, one of the “software behemoths like Amazon and Apple” mentioned in this post. When you say, “benefits to copyleft which outweigh the costs,” what exactly are the costs?

                                                                                                                                                                                                                                    Thank you for saying this. I’ve grown weary defending copyleft in recent years. It feels like such a losing battle. There’s so much pro-liberal license propaganda. They’ll convince us that it’s “more free” or whatever, but the truth is that it’s mostly about “more free… labor for us”.

                                                                                                                                                                                                                                    1. 5

                                                                                                                                                                                                                                      The thing is that the concept of “free” isn’t a one-dimensional axis that you can just stick a number on from 0 (not free at all) to 100 (maximum freedom), it’s a complex matrix where moving the slider in one aspect also moves some other sliders up or down.

                                                                                                                                                                                                                                      When people say that “MIT is more free” then they’re right: there are fewer conditions than the GPL. When people say that “GPL protects freedom better” then they’re right too. It’s just a matter of different values and priorities. I wish people could just accept that not everyone has the same priorities and values instead of reaching to the dismissive “propaganda” cudgel.

                                                                                                                                                                                                                                      This is true for a lot of discussions actually, not just license ones (including many political ones). People tend to frame “free” or “better” according to their own preferences and priorities, and sometimes forget that not everyone shares these and then they’re left bewildered how anyone could prefer something else and come to the conclusion that it can’t be anything other than “propaganda”, “stupidity”, etc. But if you spend some understanding people’s worldview then often (though not always) it starts making a lot more sense.

                                                                                                                                                                                                                                      For my own part, I use both permissive and copyleft licenses, depending on what’s the best fit for the project.

                                                                                                                                                                                                                                      1. 8

                                                                                                                                                                                                                                        Then you’re in good company, because I’ve grown weary of arguing the opposite position. In part because it seems like it’s impossible for someone to hold a position against the GPL that isn’t just “propaganda.” Apparently the notion that reasonable people can disagree is no longer relevant.

                                                                                                                                                                                                                                        1. 8

                                                                                                                                                                                                                                          But most of the arguments I hear against strong copyleft licenses like GPL are ‘You’ll prevent people from using it’, where ‘people’ are usually unspecified but presumably corporations whose lawyers blanket ban anything under the *GPL licenses. The undertone is ‘Don’t you want the project to succeed?’, where ‘succeed’ is also presumed to be measured as ‘used by corporations’.

                                                                                                                                                                                                                                          1. 4

                                                                                                                                                                                                                                            But most of the arguments I hear against strong copyleft licenses like GPL are ‘You’ll prevent people from using it’, where ‘people’ are usually unspecified but presumably corporations whose lawyers blanket ban anything under the *GPL licenses

                                                                                                                                                                                                                                            That’s not the only problem. The more constraints in your license, the less compatibility it has. XPDF was GPLv2, so libpoppler (which was based on the codebase) couldn’t be used in Apache or GPLv3-licensed projects at all (and people didn’t want to use it in permissively licensed projects). This held back PDF support in the entire open source ecosystem for a long time.

                                                                                                                                                                                                                                            Most corporations don’t have any problem using GPL’d code, it’s only distributing GPL’d code that they object to. The GPL didn’t stop Google from running a massively modified version of Linux on millions of servers without contributing their changes back, GPLv3 did prevent Apple from contributing changes back to GCC and is the reason that GCC’s Objective-C support is now largely useless.

                                                                                                                                                                                                                                            The undertone is ‘Don’t you want the project to succeed?’, where ‘succeed’ is also presumed to be measured as ‘used by corporations’.

                                                                                                                                                                                                                                            I want people to contribute to things that I use. That’s how I measure success from open sourcing: do I get a better program / library for my uses than I would have if I hadn’t released it?

                                                                                                                                                                                                                                            1. 4

                                                                                                                                                                                                                                              This held back PDF support in the entire open source ecosystem for a long time.

                                                                                                                                                                                                                                              Correction, it held back PDF support in the permissive license ecosystem.

                                                                                                                                                                                                                                              Most corporations don’t have any problem using GPL’d code,

                                                                                                                                                                                                                                              Not in my experience. Lawyers typically clamp down pretty hard on anything GPL that’s not Linux. E.g. pm2 (the JavaScript service runner).

                                                                                                                                                                                                                                            2. 4

                                                                                                                                                                                                                                              Thankfully, I don’t need to repeat myself endlessly: https://github.com/BurntSushi/notes/blob/master/2020-10-29_licensing-and-copyleft.md

                                                                                                                                                                                                                                              How about we just stop saying that opponents to copyleft are nothing more than transparent corporate shills or idiots who can’t seem to see through propaganda? That’s the point. And the reason why I said this was specifically in response to a supporter of copyleft saying that they are weary of advocacy. Well, yeah, join the club. Maybe if more people see that we have abdicated the notion that reasonable people can disagree, then maybe, just maybe, we might all stop assuming bad faith everywhere.

                                                                                                                                                                                                                                              1. 4

                                                                                                                                                                                                                                                Thank you for sharing this post. It is a well-written summary of a common position, and I will do my best to respect it rather than insulting it.

                                                                                                                                                                                                                                                I worry that you’re not seeing the pragmatic effects of incremental improvements and reforms. The position you’ve detailed is similar to many positions held around the time that the phrase “Free Software” started to become philosophically meaningful; think of copyleft as a pre-existing response to your position, not just part of your own current-day context.

                                                                                                                                                                                                                                                Let us imagine four states, which I’ll call Disneystan, Crementalia, Pirate’s Coast, and Imagineland. Each state has a copyright regime comparable to those in the USA, EU, etc. composed of corporations which exploit a shared creative commons. In each state, cultural forces cause activists to explore different routes to progress:

                                                                                                                                                                                                                                                • In Disneystan, activists appeal to the largest corporations to be better citizens. The corporations reply by contributing small amounts to token charity efforts.
                                                                                                                                                                                                                                                • In Crementalia, activists use copyleft techniques to secure part of the shared creative commons against exploitation. The corporations reply by contributing small amounts to token projects in the commons.
                                                                                                                                                                                                                                                • In Pirate’s Coast, activists set up decentralized repositories to host the commons, and republish corporate content without permission. The corporations reply by suing and jailing activists.
                                                                                                                                                                                                                                                • In Imagineland, activists somehow establish democratic control of copyright law, and enact dramatic reform (14yr terms, end working-for-hire, etc.) Corporations reply by hiring private armies and blackballing anybody who publishes proprietary information.

                                                                                                                                                                                                                                                Then, the question is whether or not you’d like to enjoy a pragmatic effect of a robust shared creative commons – of software, in our case – which is secured against corporate attempts to exploit it. Particularly, if you were a contributor to such a commons, you’d like to consider whether you are secured against exploitation!

                                                                                                                                                                                                                                                Finally, since the goal of maximizing the usage of a chunk of your code is utilitarian, we can find the problems with utilitarianism within your position. For example, the repugnant conclusion to your position is that your goal shouldn’t be to write bold new high-level end-user applications which push the concept of human-computer interaction, but to replace as many low-level loops in the operating system as possible, so that the maximum number of people are technically running code which you contributed.

                                                                                                                                                                                                                                                Similarly, the freedom monsters for your position are those who live forever, always make advantageous trades, acquire rights to software you depend upon, and eventually have control over what kinds of software you produce because they have control over the software which empowers you. Who could that be?

                                                                                                                                                                                                                                                1. 2

                                                                                                                                                                                                                                                  I thank you for not explicitly calling me dumb I guess, but I kind of think you did, just with a flare of sophistication. But I’m fine moving past it. It might just be your style.

                                                                                                                                                                                                                                                  In any case, I think the point you’re missing here is that I’m ideologically opposed to the ownership of ideas. We can dive down that rabbit hole, but I think it will take us to familiar places and neither will benefit much from it. (I can’t remember precisely what your socio-political views are, but I think we are on very opposite ends of that spectrum.) And crucially, there is a point that just because I find something unethical, that doesn’t mean I want to enact laws to forbid it. This is particularly relevant to when you said

                                                                                                                                                                                                                                                  Then, the question is whether or not you’d like to enjoy a pragmatic effect of a robust shared creative commons – of software, in our case – which is secured against corporate attempts to exploit it.

                                                                                                                                                                                                                                                  This is really written in such a way as to be impossible to disagree with. It’s like saying, “Well, don’t you want good stuff to happen and bad stuff to not happen?” Totally! Yes! Sign me up!

                                                                                                                                                                                                                                                  The devil is in the details. How is it “secured”? What are the means through which you accomplish the banning of bad things and the proliferation of good things? And what does exploit mean? I’ve heard some people say that people who release software under permissive licenses are being exploited by corporations. Certainly, corporations use my code without giving anything back to me or even to the commons necessarily. Am I being exploited by that? Are others? I don’t feel exploited. Can I be exploited if I say, with full knowledge and study of the situation, that I am not? What does it mean for someone else to tell me I’m being exploited? Do I even have the agency to disagree with it?

                                                                                                                                                                                                                                                  The position you’ve detailed is similar to many positions held around the time that the phrase “Free Software” started to become philosophically meaningful; think of copyleft as a pre-existing response to your position, not just part of your own current-day context.

                                                                                                                                                                                                                                                  Yes, I think this is what I was getting at when I said that my views opposing copyright actually tend to align with principled copyleft supporters. I tried to address that in my blog post, but it seems like you’re just kind of repeating that notion to me here? Either way, changing my perspective on copyleft to a pre-existing response and not just a part of my own current-day context doesn’t reveal any new insights for me personally. But maybe I’m missing something.

                                                                                                                                                                                                                                                  Finally, since the goal of maximizing the usage of a chunk of your code is utilitarian, we can find the problems with utilitarianism within your position.

                                                                                                                                                                                                                                                  I did not say maximizing the usage of a chunk of my code was ethical though. And if you so insisted, it seems like a pretty easy thing to rebuttal: my language was just imprecise. A charitable interpretation of what I said is that of the code I write, I would like as many people to use it as possible. There is certainly some feedback loop here, e.g., sometimes I pick projects based on what I perceive is a need for them. But I don’t pick projects based exclusively on how widely they will be used. Like, there are other things to consider here, such as… not doing malicious things in my code?

                                                                                                                                                                                                                                                  To be honest, your characterization of my position seems kind of ridiculous. And in particular, here is what I said, emphasis added:

                                                                                                                                                                                                                                                  Namely, when I publish source code, one of my main goals is for as many people as possible to use it, regardless of whether it’s other individuals or giant corporations.

                                                                                                                                                                                                                                                  While I didn’t go into all of the details, I did explicitly call out that the goal I listed is not necessarily my only goal. And thus, you cannot really conclude rigorously that I suffer from a repugnant conclusion.

                                                                                                                                                                                                                                                  Similarly, the freedom monsters for your position are those who live forever, always make advantageous trades, acquire rights to software you depend upon, and eventually have control over what kinds of software you produce because they have control over the software which empowers you. Who could that be?

                                                                                                                                                                                                                                                  You can’t acquire rights to software without a regime of intellectual property, to which I am opposed, because there would be no rights to software.

                                                                                                                                                                                                                                                2. 1

                                                                                                                                                                                                                                                  I read your note on licensing. Long story short, I understand your goals but don’t share them. I said what I said in good faith, based on my actual experiences, not to imply that people who disagree are shills or propagandists. And people are weary of permissive license advocacy because that’s the world we live on, with a cyclical story of people rushing to use MIT or Apache or whatever and then getting their lunch eaten by AWS (among other ill effects). Advocacy in the reverse direction is by far a tiny fraction of that.

                                                                                                                                                                                                                                                  1. 1

                                                                                                                                                                                                                                                    I see a lot more advocacy of copyleft than I do permissive licenses.

                                                                                                                                                                                                                                                    I suppose it’s not surprising that we notice the type of advocacy that we disagree with more than the advocacy we agree with.

                                                                                                                                                                                                                                                    Long story short, I understand your goals but don’t share them. I said what I said in good faith, based on my actual experiences, not to imply that people who disagree are shills or propagandists.

                                                                                                                                                                                                                                                    But I wasn’t just responding to what you said specifically. I was responding to this comment, and your reply to me suggested you disagreed with me and agreed with that comment I was replying to. And then you kind of went on to say, paraphrasing, “permissive license arguments are just pro-corporation arguments in disguise.” By characterizing people you disagree with this way, you remove the opportunity for reasonable people to disagree between copyleft and copyfree. Like, why not say, “I think there is a lot of propaganda out there about permissive licenses, but there are also plenty of legitimate arguments in its favor as well.”

                                                                                                                                                                                                                                                    1. 1

                                                                                                                                                                                                                                                      And then you kind of went on to say, paraphrasing, “permissive license arguments are just pro-corporation arguments in disguise.”

                                                                                                                                                                                                                                                      Well, they kind of are, aren’t they? What’s the big difference between the permissive copyleft and the strict copyleft licenses in terms of who can easily use the software? When you say ‘I want as many people to use my software as possible’, who couldn’t use it if it was GPLd?

                                                                                                                                                                                                                                                      1. 1

                                                                                                                                                                                                                                                        People who oppose copyleft. For example, I don’t use any copyleft Rust libraries in any of my projects. I’m not a corporation and I have ideological opposition to copyleft.

                                                                                                                                                                                                                                                        Moreover, corporations aren’t the root cause. They are just a convenient scapegoat. The root cause is IP itself and the incentive structure in promotes.

                                                                                                                                                                                                                                                        1. 1

                                                                                                                                                                                                                                                          People who oppose copyleft

                                                                                                                                                                                                                                                          That applies to both permissive copyleft and restrictive copyleft licenses, so it’s not really an answer to my question.

                                                                                                                                                                                                                                                          The root cause is IP itself and the incentive structure in promotes.

                                                                                                                                                                                                                                                          I’m not convinced ‘no IP’ is the solution, where people who have the power just release obfuscated software and wash their hands saying, ‘Well, you’re free to reverse engineer it’. That effectively locks out more than 99% of people from accessing the code.

                                                                                                                                                                                                                                                          1. 0

                                                                                                                                                                                                                                                            That applies to both permissive copyleft and restrictive copyleft licenses, so it’s not really an answer to my question.

                                                                                                                                                                                                                                                            When did this conversation change to distinguishing between “permissive” and “restrictive” copyleft? I’m talking about copyleft in general.

                                                                                                                                                                                                                                                            I’m not convinced ‘no IP’ is the solution, where people who have the power just release obfuscated software and wash their hands saying, ‘Well, you’re free to reverse engineer it’. That effectively locks out more than 99% of people from accessing the code.

                                                                                                                                                                                                                                                            I addressed this in my link. We’re just re-treading ground now. I acknowledge this possibility. “No IP” isn’t a panacea that solves every problem. This is orthogonal from identifying IP as the root cause for why corporations oppose copyleft.

                                                                                                                                                                                                                                                            1. 1

                                                                                                                                                                                                                                                              When did this conversation change to distinguishing between “permissive” and “restrictive” copyleft?

                                                                                                                                                                                                                                                              It never stopped being about that difference. The OP is about that, and my question is about that:

                                                                                                                                                                                                                                                              And then you kind of went on to say, paraphrasing, “permissive license arguments are just pro-corporation arguments in disguise.”

                                                                                                                                                                                                                                                              Well, they kind of are, aren’t they? What’s the big difference between the permissive copyleft and the strict copyleft licenses in terms of who can easily use the software? When you say ‘I want as many people to use my software as possible’, who couldn’t use it if it was GPLd?

                                                                                                                                                                                                                                                              1. 1

                                                                                                                                                                                                                                                                This is where I entered the conversation, and it’s where you responded to me. Emphasis mine:

                                                                                                                                                                                                                                                                To very gently apply some deconstruction of our own, it appears that this blog post asking a community to use permissive non-copyleft licenses is part of a corporation’s Web presence. Similarly, the “Choose a License” page is owned and operated by GitHub, a subsidiary of Microsoft, one of the “software behemoths like Amazon and Apple” mentioned in this post. When you say, “benefits to copyleft which outweigh the costs,” what exactly are the costs?

                                                                                                                                                                                                                                                                Thank you for saying this. I’ve grown weary defending copyleft in recent years. It feels like such a losing battle. There’s so much pro-liberal license propaganda. They’ll convince us that it’s “more free” or whatever, but the truth is that it’s mostly about “more free… labor for us”.

                                                                                                                                                                                                                                                                This isn’t about “permissive copyleft” vs “strict copyleft” here. I don’t know how this conversation got so confused. I, and the people I was responded to, were talking about permissive vs copyleft. On top of that, the note I linked makes this context very clear: I am talking about permissive or “copyfree” licenses vs copyleft. I am not making a distinction between permissive copyleft and strict copyleft. The OP might, but that’s not what this sub-thread is about.

                                                                                                                                                                                                                                                                I suggest we stop the conversation here. All we’re doing is having meta-discussion now. The original point has been lost. The original point is that, hey, yeah, you’re weary from defending copyleft and I’m weary from the implication that I’m a corporate shill. Maybe reasonable people can disagree. That’s it.

                                                                                                                                                                                                                                          2. 2

                                                                                                                                                                                                                                            Indeed, if more of the Clojure ecosystem were copylefted, wouldn’t e.g. Datomic be pressured to become Free Software too, increasing the expressive landscape?

                                                                                                                                                                                                                                            Or decreasing it by not existing at all because its authors wouldn’t bother doing it if the ecosystem tries to force them into something?

                                                                                                                                                                                                                                            It’s probably a moot point regarding Datomic specifically, as its authors being the authors of the language itself can do whatever the hell they want. What I’m trying to say is that one downside of copyleft licenses is that they can force creators out of communities without those communities having a slightest idea about that happening.

                                                                                                                                                                                                                                            1. 5

                                                                                                                                                                                                                                              Do you have specific examples in mind? The ecosystems that spring to my mind, like Linux and its device drivers, don’t seem to have a decreased palette of supported platforms compared to similar proprietary ecosystems. Contrapositively, Oracle is still in business despite an entire community of relational-database technologists who collectively shun them and exclusively use Free Software. On the gripping hand, at least one ecosystem, OpenWRT, sprang from a situation where a corporation used Free Software and was forced to contribute back to the community.

                                                                                                                                                                                                                                            2. 1

                                                                                                                                                                                                                                              A while ago I changed the license of some of my projects from MPL to Apache/MIT “to better fit the ecosystem” based on some “friendly pressure”.

                                                                                                                                                                                                                                              I regret it and wouldn’t do it again; I now established that for me MPL is as far as I’m willing to go to the “right” in terms of licenses, and those who don’t like that can write their own code.

                                                                                                                                                                                                                                              1. 2

                                                                                                                                                                                                                                                I regret it and wouldn’t do it again

                                                                                                                                                                                                                                                Can you share what made you regret it?

                                                                                                                                                                                                                                                1. 2

                                                                                                                                                                                                                                                  Giving other people’s entitlement more weight than my own preferences.

                                                                                                                                                                                                                                                  (I use GitHub’s “temporary interaction limits” to reduce the interaction with that community for various reasons now.)

                                                                                                                                                                                                                                                2. 2

                                                                                                                                                                                                                                                  Could you elaborate on what in MPL specifically works better for you? (I’m not terribly familiar with MPL, sorry.)

                                                                                                                                                                                                                                                  1. 5

                                                                                                                                                                                                                                                    MPL code can be used by code under pretty much any other license; you only need to provide the source for files under the MPL (including changes you made to these files), which I think is reasonable and incredibly fair.

                                                                                                                                                                                                                                                    1. 1

                                                                                                                                                                                                                                                      And if they modify the MPL’d code? Do they have to also provide the modification back?

                                                                                                                                                                                                                                                3. 0

                                                                                                                                                                                                                                                  it removes one of the many barriers towards canonicalizing popular libraries in a language’s standard library.

                                                                                                                                                                                                                                                  While this is a somewhat reasonable point, in practice this hasn’t happened. Au contraire, Clojure is known for instead of using external libraries and contributions just reinventing the wheel. One of such examples is Schema vs Spec or in smaller scale e.g. the tuple proposal.

                                                                                                                                                                                                                                                  I think when merging in a popular FOSS library, relicensing is part of the effort but probably not all that daunting of a task. With the rise of decent package managers having things in the standard library is also of less importance, given Node’s minimal standard library and the bad example of Python’s massive dead stdlib which is full of duplicates which can’t be removed nor fixed for compatibility reasons.

                                                                                                                                                                                                                                                1. 1

                                                                                                                                                                                                                                                  There was a similar article a while ago, discussing how to build a binary that bootstraps itself in a way that does not require hard-coding the paths to other libraries during compilation, using various linker and execve tricks instead.

                                                                                                                                                                                                                                                  I think this would be a great companion to this article, but I’m completely unable to find this article again, as every keyword I’m using either ends up with Cosmopolitan or StackOverflow 101 questions.

                                                                                                                                                                                                                                                  1. 1
                                                                                                                                                                                                                                                    1. 1

                                                                                                                                                                                                                                                      APE is Cosmopolitan. It’s the same thing.

                                                                                                                                                                                                                                                      1. 1

                                                                                                                                                                                                                                                        Yeah, I see that now…

                                                                                                                                                                                                                                                  1. 3

                                                                                                                                                                                                                                                    The only time you need to consider a client-server setup is:

                                                                                                                                                                                                                                                    Where you have multiple physical machines accessing the same database server over a network. In this setup you have a shared database between multiple clients.

                                                                                                                                                                                                                                                    So…. an enormous percentage of mature production applications?

                                                                                                                                                                                                                                                    1. 8

                                                                                                                                                                                                                                                      Which is a tiny percentage of all database deployments.

                                                                                                                                                                                                                                                      1. 1

                                                                                                                                                                                                                                                        I think saying “this tool, which is unfit for most production usages, is the only tool you need in most cases” is quite disingenuous at best.

                                                                                                                                                                                                                                                        1. 2

                                                                                                                                                                                                                                                          The average person is using 30-40 SQLite databases somewhere between waking up and leaving their house.

                                                                                                                                                                                                                                                          It’s good to know when not to use SQLite, but denying that SQLite runs this planet is rejecting reality.

                                                                                                                                                                                                                                                    1. 4

                                                                                                                                                                                                                                                      APK definitely has been nice to use. It’s lightning fast, and just kinda “does what I mean”. On the other hand, I’ve had a lot of troubles with APT. Having errors with packages being kept back and me not knowing why, strange errors, and a lot of having to do apt install --fix-broken. But then again, there are also a lot more package on APT so it might not be a fair comparison, I tend to use APK in less risky situations (more on the server side). Always interesting to read about these things tho!

                                                                                                                                                                                                                                                      1. 7

                                                                                                                                                                                                                                                        I get irrationally angry every time apt tells me “you have held broken packages”. If the machine was sentient, I would yell back, “no, you have held broken packages! I haven’t touched your repositories! You messed up here, apt, not me!”

                                                                                                                                                                                                                                                        1. 1

                                                                                                                                                                                                                                                          I feel that every kinfd of software should have a “no, I didn’t screw up, you screwed up” mode.

                                                                                                                                                                                                                                                          1. 1

                                                                                                                                                                                                                                                            other than admitting guilt, what else would that mode do? would you really trust the thing that screwed you up to unscrew up the situation?

                                                                                                                                                                                                                                                            1. 3

                                                                                                                                                                                                                                                              would you really trust the thing that screwed you up to unscrew up the situation?

                                                                                                                                                                                                                                                              I mean, with humans who can proactively admit their mistake, that’s usually exactly what I do. Typically works fine.

                                                                                                                                                                                                                                                              Somewhat less so with machines though.

                                                                                                                                                                                                                                                              1. 1

                                                                                                                                                                                                                                                                They are talking about software (so, machines), not humans.

                                                                                                                                                                                                                                                              2. 1

                                                                                                                                                                                                                                                                I’d expect it to provide some kind of detailed trace that lists the assumptions that were made and explains how it ended up in the error case, such that I can mark the faulty assumption and let the application create an error report for me that I can submit to a bug tracker if I want to.

                                                                                                                                                                                                                                                        1. 6

                                                                                                                                                                                                                                                          I don’t think Swift is ever going to be a real competitor as an app language on non-Apple platforms, given those platforms all have well-developed existing ecosystems for applications (.NET, Java/Kotlin, etc).

                                                                                                                                                                                                                                                          (But I don’t know what I don’t know. I’m talking as almost a complete outsider here.)

                                                                                                                                                                                                                                                          That leaves Swift as a really nice systems/server language in the same spaces as Go or Rust (which I realize have overlapping but very different spaces; I put Swift somewhere between the two on that continuum).

                                                                                                                                                                                                                                                          I’d really like to use Swift as a systems language on Linux but it just doesn’t seem ready for prime time there. The biggest problem for me is the lack of C interop the other way: using C from Swift is trivial, but using a Swift library from C is not officially supported.

                                                                                                                                                                                                                                                          (Go suffers from this problem too, but in a different way.)

                                                                                                                                                                                                                                                          Writing a “universal” library (callable from other languages easily) basically requires that it be written in C, C++, or Rust. Zig has good support for this, but the language is pre-1.0. D I think can do it but it seems moribund (correct me if I’m wrong).

                                                                                                                                                                                                                                                          Anyway, long story short, I want to see Swift as a viable competitor to Rust in the stdlib range of Rust’s use cases, but I don’t think it’s gonna happen. I just think that would be a place where Swift could thrive.

                                                                                                                                                                                                                                                          I asked a question here on lobste.rs a few weeks ago to see if anyone was using Swift on Linux, and all but one of the answers, sadly, was no. I would love to hear of people using Swift on Linux.)

                                                                                                                                                                                                                                                          1. 3

                                                                                                                                                                                                                                                            I think that’s a fair treatment. As I understand it, server work is the current expansion goal, and (waves hands) all this concurrency work is on that critical path. Systems programming features, like a memory ownership model, come later. It remains primarily an application-level language and there’s a long way to go. I’m optimistic, but it will take time.

                                                                                                                                                                                                                                                            1. 2

                                                                                                                                                                                                                                                              Definitely. I am excited about Actor proposal accepted and maybe implement process-based executor and supervisors for Actor. That would be very interesting!

                                                                                                                                                                                                                                                            2. 3

                                                                                                                                                                                                                                                              To be honest, I think it’s equally likely that Java will make a break-through in the Go/Rust space as Swift being successful there.

                                                                                                                                                                                                                                                              1. 1

                                                                                                                                                                                                                                                                Even if you’re interested and want to try to use it on anything other than a mac, it ends up being far from trivial. Apple apparently do internal CI builds on one release of Ubuntu so it basically works on Linux. But you’re not going to find packages; building from source is non-trivial and if you’re on something slightly unusual you can forget it.

                                                                                                                                                                                                                                                                At first glance, the language seems to have syntax rather like Rust and some nice features. But it seems every feature they ever considered got included. It was in production use early so had no period where things that didn’t work could be thrown out again. With Rust by contrast, there’s not much left of the language as it was when I first read up about it and played with it because lots of things got thrown out again. It’s reached a stable basis now but didn’t for some time.

                                                                                                                                                                                                                                                                1. 3

                                                                                                                                                                                                                                                                  I’d temper that a little; Swift has thrown out some features like currying syntax and basically renamed all functions in 3.0. The early years saw a lot of churn on the way to source and binary stability. And before that there were years of development before Apple announced the project at all. (I would guess that Rust was public very early in life.) The additions for SwiftUI go overboard if you ask some of us, but that’s all version 5.

                                                                                                                                                                                                                                                                  I’d say Swift is maturing on Apple platforms but is barely past experimental elsewhere. Its feature set probably looks broad for how incompletely deployed it is.

                                                                                                                                                                                                                                                              1. 4

                                                                                                                                                                                                                                                                Added features (because adding features improves a language, you know!):

                                                                                                                                                                                                                                                                • Support for multiple varargs in methods: Taking the expected route of requiring named parameters, Kinda nice.
                                                                                                                                                                                                                                                                • Extend implicit member syntax: More like a bug fix. Sure, why not.
                                                                                                                                                                                                                                                                • Result builders: Similar purpose as type-safe builders in Kotlin, derived differently. Not sure the complexity is worth it.