Aussie living in the San Francisco Bay Area.
Coding since 1998.
.NET Foundation member. C# fan
https://d.sb/
Mastodon: @dan@d.sb

  • 6 Posts
  • 700 Comments
Joined 1 year ago
cake
Cake day: June 14th, 2023

help-circle
  • ECC (and other methods) write the corrected value back to memory

    That was my understanding (it corrects the error and writes the good value back to RAM), but now I’m not so sure! I imagine it must do that, otherwise a second bit flip would actually corrupt the RAM, and the RAM manufacturer would want to reduce that risk.

    Regular ECC adds an extra parity bit for each byte. For each byte of memory, it can correct an error in one bit, and detect but not correct an error in two bits, so they wouldn’t want a one bit error to linger for longer than it needs to.


  • A better use of your time is to improve documentation. Developers generally hate documentation so it’s often in need of improvement. Rewrite confusing sentences. Add tutorials that are missing. Things like that. You don’t necessarily have to be a good developer or even understand the code of the project; you just have to have some knowledge of the project as an end user.




  • dan@upvote.autolinuxmemes@lemmy.worldNew Debit Card
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    11 days ago

    The transition to contactless (where you tap your card or phone instead of inserting the card) took so long in the USA though. It only really became popular during COVID and with Apple Pay. Home Depot finally enabled contactless payments recently. In Australia, we were using contactless payment 15 years ago!

    US banking is behind in a few other ways too. Apps like Venmo and Zelle just don’t exist in some other countries since you can easily do an instant transfer through your bank to anyone else for free. Some US banks still use SMS for two factor auth, which is insecure.





  • dan@upvote.autolinuxmemes@lemmy.worldI'm doing my part!
    link
    fedilink
    arrow-up
    11
    ·
    edit-2
    13 days ago

    I switched back to Linux on the desktop earlier in the year. I hadn’t used it on a desktop/laptop since 2008 so I was pleasantly surprised how much better things are these days (except suspending a laptop which seems to still be kinda broken). I’m glad we don’t have to deal with AMD proprietary drivers (fglrx) any more.

    Something that wasn’t immediately obvious to me, coming from the BIOS era, was that if you want to install multiple Linux distros, you just need a single EFI partition and they can all use it.

    I also share my /home partition between Debian testing and Fedora, but that might be risky. I’m planning to remove Debian soon anyways. I love it on servers (and have used it for over 20 years for that purpose) and it’s what I was trying out initially, but on a desktop, Fedora has newer packages and a better out of the box experience. I’m also forced to use Fedora at work (I can choose Windows 11, MacOS, or Fedora) so I may as well use it on my personal computers too.


  • dan@upvote.autolinuxmemes@lemmy.worldI'm doing my part!
    link
    fedilink
    arrow-up
    4
    ·
    edit-2
    13 days ago

    In theory, compatibility on Fedora-based distros may be slightly better since they have newer Linux kernels, meaning all the drivers are newer and you get bug fixes sooner. On the other hand, you also get all the new bugs sooner :)

    Not sure about Ubuntu, but the AMD GPU firmware that ships with Debian can become very outdated, and you need to manually download newer firmware to get the bug fixes. Until July 2024, the version of AMD firmware in Debian (even in testing and unstable) was over a year old, from June 2023.


  • dan@upvote.autolinuxmemes@lemmy.world32GB Ram and Linux
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    13 days ago

    You absolutely need swap on a low RAM system. It’s the only way the system will actually be usable. You’ll hit OOMs (out of memory errors) that take down the whole GUI if you turn off swap on a system with only 2GB RAM. You can only really turn off swap if you have a very large amount of RAM, and even then, it’s safer to keep it enabled and set swappiness to 0 instead.


  • you can disable swap.

    Be careful with disabling swap if you don’t have a very large amount of RAM, as many apps rely on memory overcommitment and a large virtual address space, which can behave erratically without swap.

    You’d be better off keeping swap enabled and instead setting vm.swappiness = 0 in sysctl.conf.

    Swappiness is a value between 0 and 100, where 0 means to never swap unless absolutely necessary (only if you completely run out of RAM), and 100 means all programs and data will be swapped nearly instantly. Think of it like a target for the percentage of RAM to keep available. The default is usually 40 which is fine for a low-RAM system, but swaps way too often for a system with more RAM.




  • For DNS challenges, I personally prefer using acme-dns. It’s a separate DNS server that only serves ACME DNS challenges. I felt a bit uneasy using an access token for my actual DNS host since it grants full read/write access to every record. acme-dns reduces the attack surface.

    Let’s Encrypt follows CNAMEs and supports IPv6-only DNS servers, so you could just run acme-dns on a spare IPv6 address (assuming your internet provider has a static IPv6 range, or you have a VPS with IPv6).