1. 3

    I had no idea dired had an editable mode! That’s a game-changer for me.

    1. 3

      Had a similar game-changer moment last week when I learned there are modes to make the grep results buffer editable:

      https://github.com/mhayashi1120/Emacs-wgrep

      (And similar modes exist for things like helm-ag, etc)

      1. 2

        Yeah, I’ve been using those for a while. Never fails to impress colleagues :-)

    1. 12

      More posts like this please. Good focus, short but good analysis / reasoning for why Postgres doesn’t get it right by default, and practical advice on what to do about it. Bravo!

      1. 4

        I’m not sure I follow what you’re talking about–the only way to see a user score is to click through to their profile or look on the users page.

        Do you mean something else?

        1. 2

          Your own score is in the top right beside your username.

          1. 5

            Indeed. I would have no problem if it were removed from there. Who really needs that feature?

            1. 3

              It could have motivational value for someone. On my end, I mostly just try to help people with stuff they might not know about. I avoid most topics and comment styles that get popularity votes. That means my score is significant indicator of impact. A large number in the first year meant high impact. Or that I spent way too much time on these sites versus other activities that could be more beneficial. We’ll just pretend that option isn’t a factor for now. :)

              So, that’s at least what I thought as I observed it over time. However, anyone contributing a lot probably doesn’t need to see the score on front page, though, since we’re the type of people to do that anyway. If we’re curious, it’s always in profile a few clicks away. Conclusion: it doesn’t need to be visible even for those of us that use it to assess impact over time. Plus, anyone consistently doing stuff here others appreciate will usually get individual comments or private messages saying so. Eventually.

              1. 2

                Need? No. But I sometimes use it to estimate the response to one of my comments in “the waiting period”. I think it’s usually a distraction though :-)

          1. 7

            I also agree with major version belonging in the name. For version 4 and 5 of SBJson I renamed all classes, enums, and identifiers so that you can install version 3.x.x, 4.x.x and 5.x.x in the same app without conflicts. I did this because I wanted to ease the upgrade path for people. If they use SBJson in different parts of their app (which is likely, in big apps) this allows them to upgrade parts of their app at a time, rather than be forced to upgrade all uses in one go. More importantly though: it also allows people to upgrade their own usage in their app, even as dependencies they rely on have not yet upgraded their usage of the library.

            1. 4

              The Apache Commons Java libraries practise your method and I think it’s fantastic for precisely the reasons you mention. Guava does not and that last sentence of yours is a huge ticket in Hadoop.

              1. 2

                That sounds more like a workaround to avoid the issues of runtimes not being able to handle versions and the lack of reasonable migration tooling.

                1. 2

                  I disagree somewhat. Renaming was simple to do, and is simple to understand & deal with for users and machines alike. There’s no special case migration tooling or runtime support required at all. One could argue that requiring a runtime that is able to handle versions of libraries and requiring migration tooling is a workaround for poor versioning on behalf of library authors. However, I’ll admit renaming has its problems too. It would make back porting fixes across major versions much more annoying, but luckily my project is mature and small enough that it has not been a problem.

              1. 9

                The only difference in readability is that the Java version has a lot more parentheses.

                It’s not often I’ve seen the “Ye gads, the parenthesis are everywhere” card used in favour of Lisp :-)

                1. 3

                  $WORK: Putting final touches on decommissioning our old hosts after migrating our flagship product to AWS. Wrote (internal) road map for adopting AWS automation (Sceptre & CloudFormation) to an extent where we can drop write access through the console to avoid fat finger errors when updating config variables etc. Look forward to start executing on that soon!

                  At home I’m playing Minecraft with my son, running 3 times a week, and moving forward with home renovation projects. (Having oil tank from old central heating system emptied & removed this week.) Also, after owning various guitars for over 25 years I finally started lessons a few weeks (months?) ago and enjoying it immensely. Kicking myself for not starting sooner, as my skill and enjoyment is going up at record speed.

                  1. 2

                    Meeting up with my colleagues from all over Europe and the Americas in Lisbon, Portugal! My first time here, but we already have a full program so I don’t expect to be able to see many sights. Still, really looking forward to meet up in person again. (Very few of us—none in the tech team—share an office normally.)

                    1. 14

                      What’s most notable here to me is his use of Finnish to aid in text-to-speech.

                      English (specifically when taken as a writing system for encoding spoken words) is notoriously inconsistent, (or as some academics phrase it, “orthographically defective”) which is a mere annoyance to sighted folk but a huge problem to people reliant on text-to-speech. This fellow works around that flaw by at first treating English writing as if it’s Finnish, using the Finnish text-to-speech engine (which is far superior to that of English due to Finnish orthography being quite sensible to begin with) and then converts the “raw” letters he hears into English words in his head, which is the error-prone part where software does a rotten job.

                      Commercial text-to-speech engines would be much more effective for power users if they created an encoding for English written words which got rid of the ambiguity and pushed it to the user, but the market can’t support such a thing (it needs to be intuitive and usable without any training) so in absence of such a scheme, Finnish does the job instead. Brilliant hack.

                      1. 3

                        To be fair, I don’t think that’s why he’s using a Finnish speech synthesiser. From the article:

                        Since I need to read both Finnish and English regularly I’m reading English with a Finnish speech synthesizer. Back in the old days screen readers weren’t smart enough to switch between languages automatically, so this was what I got used to.

                        My understanding is that he would use an English speech synthesiser if he started now, as programs are better at switching to the correct synthesiser for the current language now. However, I gather that learning to interpret words at that speed is a skill that takes some practice (it’s certainly just gobbledygook to me) and he sees no reason to change since his existing setup works for him.

                        (Edit: fixed typo.)

                        1. 1

                          Right; I don’t think it was his original reason, but I think it’s the reason he’s still using it even after the original reason no longer holds; because this way is actually more effective even tho it’s a pain to learn.

                      1. 5

                        Now we can essentially treat all state in the computer like a github repo, with the ability to fork the state of the entire system. I think this would be huge. People would exchange useful workspaces online much as they do with Docker images. People could tweak their workflows add useful scripts embedded into the workspaces. The possibilities really are amazing.

                        This must be satire, right?

                        Relational filesystems do not have a compelling usecase–I doubt that 30+ years of standard practice is just due to sheer ignorance. Forcing everything into a “message bus” is no wiser than, say, requiring every application to talk to each other and the kernel via UDP and msgpack/json/protobuf/xml. Arbitrary docking of windows to weird places doesn’t actually matter beyond spiffy tech demos. Having a copy-paste buffer larger than one item has not been historically shown to be useful.

                        This whole article is a laundry list of bad, silly, or debunked ideas.

                        1. 5

                          I agree that the stuff you quoted sounds like satire. And the arbitrary docking of windows is where I stopped reading the article. However, the copy-paste buffer larger than one item is, IMO, incredibly useful. It is something I have in Emacs and it annoyed me so much not to have it in the OS that it’s one of the few things I’ve felt the need to pay for.

                          1. 2

                            Get yourself a clipboard manager.

                            Security disclaimer: Makes copy&pasting passwords more insecure.

                            1. 1

                              Oh, I have one; in fact I have three, as it took me a while to find one I liked. (I could have been more explicit, but I didn’t want my comment to sound like a product ad: I’m not affiliated.) You’re right about cutting & paste of passwords, but the manager I use (CopyClip 2) has an Exception lists so you can stop it from recording anything from a list of applications of your choice. (Keychain, for example.)

                          2. 4

                            That may be the case, but surely in 20 years there will be a better desktop. Or will we be using OS X 10.42 and Windows 42?

                            Now that we have phones, desktop users are indeed a minority. But in 20 years, people will still need to create graphics, video, 3D content, audio, do machine learning, and yes unfortunately they will need to run C++ compilers and IDEs too :)

                            So if anyone thinks his ideas are stupid, then I would like know what you think will happen.

                            I think some of the details are wrong, but the gist seems to be that software is data-centric and composable. I get that companies want to lock up your data behind their applications, but if we can dream about universal basic income, let’s also dream about open data formats :)

                            1. 2

                              Well said. :)

                              I do expect that what’s actually going to happen is that the majority of the tasks you mention will be done on locked-down operating systems. They do provide better UX, for the things they can do, as long as you aren’t somebody who wants to look under the hood.

                              But by all means we should be discussing ways to keep it from going that way. Part of that is talking about what we even like about non-locked-down platforms… I’ve seen some convincing arguments and some unconvincing ones.

                            2. 3

                              I doubt that 30+ years of standard practice is just due to sheer ignorance.

                              I’m surprised you didn’t mention marketing forces as opposed to just technical design or sheer ignorance. Windows filesystem was designed for whatever reason they had. Monopolistic practices are why it and its successor stuck around. Apple’s filesystem was admittedly a piece of crap by modern standards that they replaced or are replacing. The UNIX stuff seem to be whatever gets popular in a major distribution, proprietary or open. Backwards compatibility with common ways of doing stuff also factors in. So, marketing and legal concerns (esp patent/copyright suits) seem to be main cause of what’s been standard practice.

                              Meanwhile, other OS’s like OpenVMS (RMS), BeOS, and AS/400 did filesystems differently with successful use by lots of companies. Not to mention all the distributed or object filesystems in academia with better properties than traditional ones or sometimes corporate uptake. Then, there’s the capability-based systems with their security advantages. Generally, something didn’t have the necessary ecosystem, didn’t act monopolistic, wasn’t backwards compatible, or was just one isolated work no big player was integrating. Many seemed technically superior to the competition at the time, though, better meeting users’ needs. Esp the three on top with successful field use.

                            1. 4

                              Really hard to beat Latex/Tex for mathematical typesetting.

                              1. 6

                                Sure. But Pages.app supports LaTeX and MathML now. Further, Org mode also supports Embedded LaTeX fragments directly, and Pandoc supports Markdown with embedded LaTeX math fragments. I think the author is on to something.

                                1. 3

                                  It’s really hard to beat LaTeX if you need to produce glossaries and multiple indices.

                                1. 2

                                  If you want a great “starter pack” for Emacs, I’ve looked at a bunch, and Prelude is by far my favorite one.

                                  Emacs Redux is also a great blog where you can learn and pick up neat tricks.

                                  1. 7

                                    I would avoid heavy starter kits; they add quite a lot and customize Emacs significantly, and it can be more work to undo the choices they made than to add the configurations that you need.

                                    Rather, I encourage people to scour for emacs.d repositories on github: many are very well commented, and you can easily start grabbing things that interest you.

                                    1. 2

                                      I dunno. I agree with the sentiment, but some of the default Emacs settings are really quite off-putting, and could give beginners a poor first impression. (Littering your disk with backup files & the shitty way buffer names for files with identical names are uniqified comes to mind) so I think it could make sense to use starter kits when you start out and then ditch it and grab just the bits you need / want from the kit. Of course I’m biased, because it’s what I did :-)

                                      For what it’s worth, I used the “better defaults” package.

                                      1. 1

                                        That’s the neat thing about Prelude, unlike other kits it’s not heavy at all.

                                    1. 5

                                      Yay another Emacs user!

                                      Although I really like his empathy, I – personally – do not think that org-mode is that great in the long run. It lead my way to Emacs itself, but I was never really able to set up a system that I would stick with. There is a lot of documentation for it out there (printing this page will result in a 96 page document) but configuring it to your every need is a big task. Maybe it’s the fault of the editor because it allows you to turn pretty much every knob there is and org-mode offers just too many.

                                      Still, org-mode does attract quite a lot of users which will then stick with the editor so that’s a point in favor of it.

                                      1. 13

                                        Like shanemhansen I too used Org mode just as a “better markdown” for a while, but started getting into Org mode a bit more by watching Rainer’s Youtube Org-mode tutorials. I am now at a level where I have capture template for “weekly reviews”, and even have a separate capture template for new invoices… that I process into PDF via LaTeX. I still refer to the manual quite often, it has to be said. I used Org Babel to write executable runbooks, and I maintain my blog as an Org publishing project. I… may need an intervention.

                                        1. 4

                                          Actually sections of my teams playbooks were executable org mode things that I exported to confluence markdown. Design docs are usually in org mode (with inline graphviz/dot file images). It’s really awesome.

                                          I started blogging using org mode. I was exporting org to markdown for hugo, but then the author of this article (Chase Adams) added native org support to hugo. Markdown is just a tad too simple for me, but org mode is perfect for lightweight structured docs with some code samples.

                                          I’ve started doing presentations in org mode using a reveal.js plugin.

                                          and I haven’t even gotten into capture templates or time tracking.

                                          1. [Comment removed by author]

                                            1. 2

                                              There are things I haven’t done, such as Jira and Confluence integration

                                              I’ve come to love the shell a hell of a lot. I implemented a Jira CLI thing for my own use, which has EDITOR support, and if I were to have an editor-compatible “confluence” thing, it’d be an EDITOR-compatible thing. What I mean to say is, I miss Acme. There’s a few things that really annoy me about it, but its integration with the system is just fantastic. I think one of the key parts is the plumber; you can do really awesome stuff with that thing. Thing on your screen looks like a Jira ticket number? Right-click, and you got a Jira ticket details. And then I had special formatting for my Jira thing that would output shell commands that I could just execute from Acme by highlighting them. Glorious.

                                          2. 5

                                            I disagree. The fact that org mode is configurable doesn’t mean you need to configure it. I haven’t configured org mode at all.

                                            Maybe this is a bad analogy but to me it’s a bit like C++. You can use it as a “better markdown” and you can keep using more features until you’re using it to produce reproducible scientific papers or do devops.

                                            This is what most of my org mode files look like

                                            * Title
                                            ** Subtitle
                                            **** TODO task
                                            - some
                                            - stuff
                                            

                                            I’ve never felt the need to configure it.

                                            1. 4

                                              I’ve been trying org-mode on and off for the three years I’ve been using Emacs (switched from vim). I haven’t managed to stick to it for longer than a couple months, it truly is too powerful, it’s overwhelming for me.

                                              I read several articles about how great Emacs is (which is true, of course!) and the comments will always have mentions to Org, but I haven’t really seen many good long-form articles about their org workflow. If anyone in this thread would share theirs, I’d be super grateful ;)

                                              1. 3

                                                One thing I’ve been wondering is: how do people make CI builds work in a monorepo? Do you rebuild everything on every checkin, or do you detect that a subproject hasn’t changed, and thus is not rebuilt? In the latter case, how does that then give you (what I assume is) the main benefit of monorepos: simplified dependency management, because you just use the dependency with the same revision.

                                                1. 2

                                                  What I’ve done in the past is build “everything,” with build caches and aggressive dependency markings. If you’re at the scale where having a monorepo is genuinely a pain, the it’s time to get a sane build system (literally out-of-the-box Gradle works fine if you just have Java/Kotlin, for example, but something like Bazel/Pants/etc. works great for more generic workloads), at which point the builds that don’t need to happen will be no-ops, and you never need to worry about forgetting to rebuild/upgrade something.

                                                  For me, this is really coming down to trade-offs. Configuring something like Bazel or Pants (or even potentially Gradle at the scale we’re talking) does take some effort. The advantage, to me, is that you either will end up doing this anyway with multirepos (at which point, you might as well have a monorepo where you can monitor all the changes anyway), or you handle all the upgrades piecemeal and bespoke, at which point it’s gonna be really tricky to ensure you’ve actually upgraded everything. In other words, we’re trading human steps for automation: if you’re at a size where you “need” multirepos, you’re also at a scale where automating all of this will be a huge win, which in turn, IMHO, negates needing multirepos.

                                                  1. 2

                                                    The chromium project uses the analyze functionality of gn (initially implemented in gyp) to determine which test binaries are affected by a change and only build/run those tests. Since this relies on the gyp/gn dependency graph, various checks and whitelists are added to cover edge cases. This, combined with the task-deduplication abilities of Swarming heavily reduce the load of ‘building everything’ in a monorepo. For Swarming, test binaries are compiled in a deterministic way so the same code produces the same SHA, if a SHA already ran and succeeded you don’t need to run it again.

                                                    1. 1

                                                      We use Teamcity, and it has a way to make triggers only work for a regex of directories. So, only commits to X subproject trigger builds of X.

                                                    1. 10

                                                      I’ve read many people say that dvorak was fine for the vim movement keys.

                                                      And as for the keycaps, I’m not sure I see the problem, why not just use a blank keyboard and switch at will?

                                                      1. 5

                                                        Although I am in theory capable of typing without looking at the keys, in practice I do a lot of key stabbing as well. And a lot of one handed typing as well. I’ve practiced this some in the dark, and it’s no fun. Definitely not interested in a blank keyboard.

                                                        Anyway, same experience as the author. Learned dvorak because there were people who didn’t know dvorak, used it for a while, then found I had trouble using a qwerty keyboard. Now I just use qwerty full time, but go back and practice dvorak for a week or so at a time to maintain the skill in case I ever have a compelling reason to switch.

                                                        I like dvorak for English, but find it substantially more annoying for code. And it’s a disaster for passwords. I usually set up hotkeys so I can quickly change on the fly depending on what and how much I’m typing.

                                                        1. 2

                                                          I love Dvorak for code! Having -_ and =+ much closer is so convenient.

                                                          1. 1

                                                            More than { [ ] }?

                                                            1. 2

                                                              For sure, think about where it’s now positioned. Typing …) {… is so easy when ) and { are side by side. And for code that doesn’t use egyptian braces, )<enter>{ is easier for me too. When I hit enter with my pinky, and follow up with { with my middle finger, that’s natural. But trying to squeeze my middle finger into the QWERTY location for { while my pinky is still on enter totally sucks.

                                                              Meanwhile -_=+ are all typed in line with other words (i.e. variable names). And - and _ are frequently part of filenames and variables, so it’s great that they’re closest to the letter keys.

                                                          2. 2

                                                            I like dvorak for English, but find it substantially more annoying for code.

                                                            Exactly! If I were a novelist I would probably just continue using Dvorak.

                                                            1. 2

                                                              in practice I do a lot of key stabbing as well

                                                              I recently bought a laptop with a Swiss(?) keyboard layout. (It really is a monstrosity with up to five characters on one key). I thought I wouldn’t need to look at the keys at all and I could just use my preferred keymap, but I’ve been caught ought a few times. I’m just about used to it now, though.

                                                            2. 4

                                                              When I am typing commands into a production machine I feel like it is only responsible of me to use a properly labelled keyboard.

                                                              This is really important when you’re on your last ssh password/smartcard PIN attempt, because you can go slow and look at what you’re doing.

                                                              1. 5

                                                                I got a blank keyboard, and I must admit that I still look at it from time to time. like for numbers, or b/v, u/i… I only do so when I start thinking “OMG this is a password, don’t get it wrong!”

                                                                Having a blank keyboard doesn’t stop you from looking at your hands. It only disappoint you when you do.

                                                                1. 5

                                                                  As a happy Dvorak user I’d have to say there are better fixes to that problem. Copy it from your password manager? (You use one, right?) Type it into somewhere else, and cut and paste? Or use the keyboard viewer? (Ok that one is macOS specific, perhaps.)

                                                                  Specifically re: “typing commands into prod machines” I don’t buy the argument. Commands generally don’t take effect until you hit ENTER and until then you’ve got all the time you need to review what you’ve typed in. Some programs do prompt for yes/no without waiting for Enter but it’s not like Dvorak or Qwerty’s y or n keys have a common location in either layout, so I don’t really see that as an issue either.

                                                                  1. 2

                                                                    Yes, the “production machines” argument is a strange one. I’d imagine it would only be an issue on a Windows system (if you’re logging in via ssh it’s immaterial) and then it would be fairly obvious quite quickly that the keyboard map is wrong. And if the keyboard map is wrong in the Dvorak vs QWERTY sense you’d quickly realise you’re typing gibberish. Or so I’d think?

                                                                    Ignoring the whole issue of “you shouldn’t be logging in to a production machine to make changes”…

                                                                  2. 1

                                                                    In this case, I find the homing keys, reorient myself, and type whatever I need to type. (Or just use a password manager & paste). Haven’t mistyped a password in years, and I’m using Dvorak with blanks.

                                                                    Homing keys are there for a reason.

                                                                    Labels are only necessary when you don’t touch type. If you do, they serve no useful purpose.

                                                                  3. 2

                                                                    I’ve read many people say that dvorak was fine for the vim movement keys.

                                                                    Dvorak is fine for Vim movement keys, but not as nearly as nice as Qwerty.

                                                                    And as for the keycaps, I’m not sure I see the problem, why not just use a blank keyboard and switch at will?

                                                                    The problem is, when I’m entering a password or bash command sometimes I want to slow down and actually look at the keyboard while I’m typing. In sensitive production settings raw speed isn’t nearly as valuable as accuracy. A blank keyboard would not solve this problem :)

                                                                    1. 6

                                                                      Dvorak is fine for Vim movement keys, but not as nearly as nice as Qwerty.

                                                                      They actually work better with Dvorak for me, because the grouping feels more logical than on qwerty to me.

                                                                      1. 1

                                                                        Likewise: vertical and horizontal movement keys separated onto different hands rather than all on the one (and interspersed) works much better for me.

                                                                      2. 2

                                                                        I hate vim movement in QWERTY. I think it’s because I’m left handed, and Dvorak puts up/down on my left pointer and middle finger. For me, it’s really hard to manipulate all four directions with my right hand quickly.

                                                                        1. 1

                                                                          Would it make sense to use AOEU for motion then (or HTNS for right handed people)? I guess doing so may open a whole can of remapping worms though?

                                                                          That won’t help with apps that don’t support remapping but which support vi-style motion though (as they’ll expect you to hit HJKL)…

                                                                      1. 8

                                                                        Not since 2015.

                                                                      1. 1

                                                                        I’ve got no exposure to Kotlin, but I nodded along to and agreed with every entry in the list of “Scala [mis]features I won’t miss” at the bottom of this article.

                                                                        1. 1

                                                                          What did you end up using instead of Scala?

                                                                          1. 1

                                                                            I left the Scala role 2 years ago for reasons unrelated to the language. (I moved across the country and they wouldn’t agree to let me work remotely.) I now mostly wrangle infrastructure and coding isn’t my main concern. That said the language I’m most excited by is Clojure, although I haven’t used it in anger. I don’t enjoy the process as much, but I’ve had more practical benefit from writing Emacs Lisp (ox-jira.el & ob-applescript.el) than Clojure.

                                                                        1. 26

                                                                          There is no evidence that this keylogger has been intentionally implemented.

                                                                          Oh, that’s alright then. I’m sure we all have accidentally implemented a keylogger in the throes of writing an audio driver. It must happen all the time. Nothing to worry about.

                                                                          1. 8

                                                                            Actually, I see this. They were having an issue reading the media keys on the keyboard. So they started capturing all keyboard events to a logfile for debugging purposes. It was one of those, “let me throw this in to test, and debug the problem,” and the dev forgot they did it and then committed the code.

                                                                            Nobody did a detailed code review, and voila…

                                                                            1. 1

                                                                              Wait why is the audio driver involved here? Shouldn’t this be the keyboard driver and some other mechanism change audio settings driver-agnostic?

                                                                              1. 5

                                                                                Yes obviously. But this actually has a rich history on Windows, e.g. also graphics drivers, wireless drivers. They don’t just install the 300 kB driver and firmware, no they include a 300MB (back in the day, must be larger now…) crap package that replaces how you configure your graphics card, display, or wireless driver with a fugly “80s futuristic design” control panel.

                                                                              2. 1

                                                                                I don’t want to program with that guy.

                                                                              3. 2

                                                                                Well I have seen instances of programmers implementing home/root directory deleter while they were trying to make something else so this doesn’t seem entirely implausible.

                                                                              1. 3

                                                                                A correction to the Google Translation listed above, it shoud be “crashed” not “crispy”:

                                                                                This crashed screen at Peppes’Pizza shows a log of all their guests, with descriptions.

                                                                                1. 10

                                                                                  Another potential experiment that I noticed in use on YC News: you’re not able to downvote comments replying to yours (maybe also grandchild comments, I didn’t check). I could see that being useful for keeping things cool.

                                                                                  I was also dismayed to see downvoting on comments where someone admitted a mistake. That should be encouraged rather than taken as a justification to pile on someone, and I’m glad it was corrected.

                                                                                  A similar YC pet peeve is downvotes on a well-intentioned and non-fake-authoritative commenter who could not have known they were wrong based on the story and then-current discussion. I see them flood in after someone posts a correction.

                                                                                  I don’t have ideas for tempering these latter two behaviors, but it’s regularly in my thoughts.

                                                                                  1. 4

                                                                                    In my experience, most downvotes in a big thread happen from lurkers, not the people involved in the back-and-forth.

                                                                                    1. 2

                                                                                      “Another potential experiment that I noticed in use on YC News: you’re not able to downvote comments replying to yours (maybe also grandchild comments, I didn’t check).”

                                                                                      I like this feature. People arguing with each other are likely to downvote on reflex. The HN model essentially lets rest of audience peer review for reply downvotes. It seems to work fine on technical threads so long as nothing too divisive is said. If that happens, the effect is the same regardless: people throw votes back and forth in mass with audiencd mostly ignoring the flamewar.

                                                                                      1. 2

                                                                                        I’ll often explain my disagreement with someone and get a single downvote. I’d be quite surprised if it were anyone but the person I replied to.

                                                                                        1. 3

                                                                                          I wouldn’t assume that. I’ve seen people reply to me, and get one downvote, and I know it’s not me. Inevitably get accused, though. I downvote very rarely. I think I’ve been accused of malicious downvoting more times than I’ve downvoted anybody for any reason. I’ve never seen a thread improved by assumptions about voting patterns. Just pretend it’s cosmic rays.

                                                                                          1. 1

                                                                                            “Just pretend it’s cosmic rays.”

                                                                                            New paper proposal for Black Hat: “Vote flipping for fun and proft. Or why not to store votes as a single bit.”

                                                                                            1. 1

                                                                                              Interesting. This is a strong argument for disallowing downvotes on responses to you though. The commenter could then know it was not you that voted it down, and it could help keep conversations civil. (Or at least stop accusations like these.)

                                                                                              1. 2

                                                                                                You’d think that, but on sites that implement the rule like HN, it just means the accusation adjusts to incorporate sock puppets into the plot. In the end, I find it’s a useful signal that somebody would rather argue about downvotes than the topic. Tells me when to take a break.

                                                                                                1. 1

                                                                                                  You’re thinking in the right direction but not this example. Cosmic rays are one of the most ignored causes of problems in existence. The admins will look for everything but cosmic rays if they already used ECC RAM (checklist item) in one or most systems. It’s why the DNS “bitsquatting” attack was discovered decades after the known, mitigatable effects of bitflips on servers. ;)