• 5 Posts
  • 764 Comments
Joined 11 months ago
cake
Cake day: July 31st, 2023

help-circle



  • To offer a differing opinion, why is null helpful at all?

    If you have data that may be empty, it’s better to explicitly represent that possibility with an Optional<T> generic type. This makes the API more clear, and if implicit null isn’t allowed by the language, prevents someone from passing null where a value is expected.

    Or if it’s uninitialized, the data can be stored as Partial<T>, where all the fields are Optional<U>. If the type system was nominal, it would ensure that the uninitialized or partially-initialized type can’t be accidentally used where T is expected since Partial<T> != T. When the object is finally ready, have a function to convert it from Partial<T> into T.



  • It seems pretty obvious to me at this point that the DNC would rather lose than have an actual progressive win.

    It’s not in their interests to let a progressive win. Just like their counterpart, the DNC takes a shit ton of bribery donations from corporations lobbyists. Bringing in a progressive who would reform the system or push back against pro-corporate policies is biting the hands that feed them.



  • pivot_root@lemmy.worldtoLemmy Shitpost@lemmy.worldStay Mad, Tankies
    link
    fedilink
    arrow-up
    11
    arrow-down
    4
    ·
    edit-2
    23 hours ago

    The system is set up in a way that the only viable options are between two evils, unfortunately. Under a FPTP system where the only good options are minority parties that won’t win a single seat in their districts, you’re left with the choice of voting for the lesser evil, or voting for your morals but increasing the risk of the greater evil winning.

    It’s a no-win situation.













  • pivot_root@lemmy.worldtoLinux@lemmy.mlSSH as a sudo replacement
    link
    fedilink
    arrow-up
    5
    arrow-down
    2
    ·
    7 days ago

    The problem is that they’re trying to frame it as a better replacement for sudo when it’s really not.

    In some respects, it’s safer by not using a setuid binary. In other respects, it massively increases the surface area by relying on the correctness of three separate daemons: systemd, dbus, and polkitd. If any one of those components are misconfigured, you risk an unauthorized user gaining root privileges.

    With sudo, the main concern is the sudo process being exploited through memory safety bugs since it runs at root automatically.

    Don’t get me wrong, sudo has a lot of stupid decisions and problems. There’s a ton of code in sudo for features that almost nobody uses, and there’s bound to be bugs in there somewhere. It needs to be replaced with something simpler, but run0 is not that.