• 3 Posts
  • 93 Comments
Joined 1 year ago
cake
Cake day: June 26th, 2023

help-circle

  • For your bullet points:

    • Yeah, GNOME can be flakey with extensions. Almost no regular users will install extensions though. Windows also has tons of bugs and issues that users just ignore because it’s the “default”
    • Regular users won’t care about desktop scaling. I’ve seen people using the blurriest, weirdest aspect ratios on Windows because they liked it that way
    • Bluetooth sucks on all hardware and with all software, to various degrees.
    • Syncing files is trivial with Syncthing
    • MacOS keeps breaking my coworker’s setups with every update.

    GPU issues can be hard, but that’s not really Linux’s fault. There’s a reason this image exists of Linus giving nvidia the middle finger:

    That being said, it’s getting better. As of this year, nvidia has started putting some real effort into making things work with wayland.

    EDIT: I’ve found nirvana with NixOS, speaking of GPU drivers. I just add a few lines to /etc/nixos/configuration.nix and it goes off and ensures that the nvidia drivers are present. I also run lots of CUDA stuff on top of that and it all works about as seamlessly as possible.


  • For a direct replacement, you might want to consider enums, for something like

    enum Strategy {
        Foo,
        Bar,
    }
    

    That’s going to be a lot more ergonomic than shuffling trait objects around, you can do stuff like:

    fn execute(strategy: Strategy) {
        match strategy {
            Strategy::Foo => { ... }
            Strategy::Bar => { ... }
    }
    

    If you have known set of strategy that isn’t extensible, enums are good. If you want the ability for third party code to add new strategies, the boxed trait object approach works. Consider also the simplest approach of just having functions like this:

    fn execute_foo() { ... }
    fn execute_bar() { ... }
    

    Sometimes, Rust encourages not trying to be too clever, like having get vs get_mut and not trying to abstract over the mutability.


  • Unfortunately there isn’t one easy source that I’ve found. This is based on reading the stuff you linked to, as well as discourse/matrix discussions linked to from those sources. I compare it mentally to Guido van Rossum as BDFL of Python (though not any longer). He did a much better job of communicating expectations, like here

    It made some people unhappy that there was no Python 2.8, but everybody knew what was happening. The core Python team also wasn’t surprised by that announcement, unlike with stuff like Anduril or flakes for the nix devs.

    There was also a failure to communicate with stuff like the PR that would switch to Meson. The PR author should have known if Eelco broadly agreed with it before opening it. If there was a process that the PR author just ignored, the PR should have been closed with “Follow this process and try again”. That process can be as simple as “See if Eelco likes it”, since he was BDFL, but the process needs to be very clear to everyone.



  • My take on it is that the creator of Nix was very good technically but was not a good BDFL, and that was the root of the problem. He didn’t do a good job of politicking, stepped down, and now Nix is going through a bit of interregnum. I don’t think it’s likely to fail overall though, nixpkgs is too valuable of a resource to just get abandoned. I expect the board seats will be filled by people that know how to politick, and things will continue on after that.

    Lessons learned is being a BDFL is hard. IMO Eelco Dolstra failed because he had opinions about things like Anduril sponsorship and flakes, and didn’t just declare “This is the way things are going to be, take it or leave it”. People got really pissed off because there wasn’t a clear message or transparency, which resulted in lots of guessing.










  • You don’t need a level 2 charger at home. You don’t need gas stations equivalents. EV companies won’t make infrastructure, because we’ve already built tons of infrastructure for EVs and it’s called the electric grid. Everywhere has electricity. I was recently in a very remote area for vacation in my EV, and just plugged my car into a regular outlet to charge it up. To get there, I stopped for lunch and plugged my car in at a supercharger while I ate.

    Target is putting in superchargers at lots of their locations around me. Other places are or will follow suit. If you can’t charge at home, you’ll simply stop by the store/mall/whatever, do your normal shopping, and have your car charge in the meantime. Or you’ll charge at work, or any number of other places.

    EVs aren’t hard, they just require a mindset shift. People worry about this and that, but it’s because they haven’t actually tried it and have given too much weight to FUD spread about EVs.



  • I charge my car off of a regular outlet outside in a very cold climate, and charging like that will actually likely make the battery last quite a while. The only way to find out for sure is to wait, but it has been 4 years and the battery hasn’t lost any capacity. My car also has a 320 km range, so even in your scenario, if you charged 50km away and came home, you’d still have 270km of range.

    I think you may have given too much weight to FUD about EVs from companies that would like to see them fail. I’ve seen a lot of concerns posted online that just don’t practically matter, once you actually try it. There’s also some really nice minor things about owning an EV, like not having to breathe in toxic fumes when walking around the car. Especially nice if you have kids that are right at the level of the tailpipe.

    It is also fine to wait a bit, of course. In my area chargers are springing up in lots of places, and I think we’re not far off from a tipping point away from ICE cars, which will spread even to rural areas pretty quickly when gas stations start becoming unprofitable.




  • It doesn’t have to be a random person claiming that the first image is fake. You could get your private keys leaked, and then the attacker waits until you’re on vacation in a remote area without wifi/cell, and then they publish an image and say “oh, i got wifi for a bit and published this”. You then get back from vacation, see the fake image and claim that you didn’t have any wifi/cell service the whole time and couldn’t have published an image. Why should people trust you? Switch out vacation for “war zone” if you’d like for a relevant example. Right now many people in Gaza or Ukraine don’t exactly have reliable ways to use the internet, and that’s exactly the sort of situation where you’d want to be able to verify images.

    Alternatively as I put in another comment, if it’s got the ability to publish stuff straight from the camera, it’s got the ability to be hacked and publish a fake image, straight from the camera.

    Publishing things on the blockchain adds nothing here. The tech isn’t telling anyone anything useful, because the map is not the territory.

    These are not implausible scenarios. They wouldn’t happen every day because they’re valuable attack vectors, but they’re 100% possible and would be saved to be used at the right time, like when it really matters, which is the worst possible time to incorrectly trust something.