• 4 Posts
  • 54 Comments
Joined 1 year ago
cake
Cake day: June 15th, 2023

help-circle
  • I’m not the biggest distrohopper but I have tried a few, both on my laptop and desktop. I still keep windows around on a dual-boot but I’m basically only using it for the odd game or two and also onenote (obsidian + excalidraw comes close but nothing really has a seamless transition between pen and typing text like OneNote)

    Early 2018 and before:

    Windows only

    2018-19:

    • Ubuntu 18.04 (desktop),
    • Ubuntu 18.04/18.10/19.04 (laptop)

    2019-2022:

    • Manjaro w/ KDE (desktop),
    • Arch Linux w/ GNOME (laptop)

    2022-2023:

    • NixOS (laptop, for literally a day because it didn’t have a package I needed to make my laptop work correctly)
    • EndeavourOS (kde on laptop, qtile on desktop)

    2024:

    • No changes to the desktop setup,
    • NixOS w/ KDE and also a half-functioning hyprland setup on the laptop now that the package got added.

    Future?

    Maybe if I can get my NixOS config to a point where I’m happy with it I’ll switch my desktop setup to that as well, in theory it should be pretty painless since i’m already using a flake setup split across multiple modules. I do really like that I can experiment with my setup without the risk of actually breaking anything since NixOS is semi-immutable.

    If I don’t stick with NixOS I’ve also been thinking about trying fedora, opensuse, or an immutable distro, or otherwise just moving my laptop back to either Arch or EndeavourOS since that’s what I’m familiar with.



  • If you’re worried about using the terminal you could always install one of the frontends for pacman like the one Manjaro uses. Manjaro might be a pain if you’re using AUR packages (really depends on what packages you use, some niche ones like specific game modloaders or the professional JetBrains IDEs are only on the AUR) because Manjaro’s repos are delayed by around 2 weeks, but the AUR isn’t delayed at all. Depending on the packages you’re using that could break updates sometimes.

    Depending on how familiar with programming you are you could also try NixOS which has an absurd number of packages in their official repo but NixOS’s config files can be kind of a pain sometimes.

    Edit:

    It’s also worth noting that you could start off with Manjaro and then jump over to something like EndeavourOS/Arch once you get more familiarized with using the terminal down the line. That way you wouldn’t have to relearn commands/setups when you switch, since they’re ultimately all arch-based and have the same underlying structure.


  • Software optimization is mostly not a language-level problem. I’ll be dailying my 3-year-old OnePlus 9 Pro until it starts missing out on security updates, but it will probably still be “usable” long after that. Support/updates aside, my 6-year-old galaxy s9 can still run most normal apps. Hell, I got the most recent lineageOS running on a pixel 2 XL from the year before that and it straight up felt fast as long as I wasn’t playing some super intensive game or something. This isn’t an android vs. iOS problem, it’s a “developers of [insert flashy new app here] either not bothering to put effort in to optimize their code or being forced to push out a minimum viable product ASAP” problem.

    Edit: fixed my hyphen use


  • Another big thing that doesn’t get covered by big O analysis is the potential for parallelization and multi threading, because the difference created by multi threading only amounts to one of those dropped coefficients.

    And yet, especially for the workloads being run on a server with 32-128 cores, being able to run algorithms in parallel will make a huge difference to performance.




  • Not really sure how archinstall factors in since it wasn’t around yet when I first installed, but I love EndeavourOS. I’ve installed arch before, but I really can’t be bothered if I’m just going to end up installing all of the same packages the GUI could give me in less time anyway. Yeah, EndeavourOS is just arch with some small extra packages and a GUI installer, but that’s exactly why I like it.


  • That’s partially my point. You can never be 100% safe, but there’s a lot you can do to increase your safety besides just relying on intuition (edit: because intuition is usually the weakest link, see social engineering/phishing tactics). Anti viruses (when they aren’t just bloatware) are part of that.

    Your second point about not meaningfully defending against backdoors and vulnerabilities is kind of against the point. You can totally defend against backdoors by not giving apps admin privileges, limiting network access, etc. so that damage can be limited even if an exploit happens. Then, if some backdoor or exploit is discovered, it’s only as dangerous as the permissions you give that app.




  • I don’t actually think eclipse is completely terrible (just saw the opportunity for a meme). My main problem with it is that unlike intelliJ, the UI buttons don’t scale with the font size, making it pretty unusable on my HiDPI laptop.

    For now I’ll just stick with IntelliJ/idea IDEs (I have access to an education license for ultimate) and then if/when Idea ruins it I’ll probably just try to integrate my Java workflow into either VS Code or an nvim setup










  • As a dev who works on both Java and C# code, modern Java (17+) and C# feel almost exactly the same (not sure if Java has extension methods though).

    Bonus points for using Kotlin instead tho. I dislike both Java and C# just because they both allow any object to be null and that’s usually a headache whenever a null exception shows up.

    The only thing I like better about C# is the Fixture library for testing. I haven’t found any mature libraries like it for Java yet.