Hiker, software engineer (primarily C++, Java, and Python), Minecraft modder, hunter (of the Hunt Showdown variety), biker, adoptive Akronite, and general doer of assorted things.

  • 1 Post
  • 18 Comments
Joined 2 years ago
cake
Cake day: August 10th, 2023

help-circle
  • But they are not the default option. And your new job may not use them.

    Who cares if it’s the default? If it’s the best tool, use it.

    It’s silly to have a reason for “going Rust” be the build system, especially in the context of something as new as a WASM context where basically any project is going to be green field or green field adjacent.

    Exceptions is a non standard exit point. And by “non standard” I’m not talking about the language but about its surprise appearance not specified in the prototype. Calling double foo(); you don’t know if you should try/catch it, against which exceptions, is it an internal function that may throw 10 level deep ?

    And that’s a feature not a bug; it gets incredibly tedious to unwrap or forward manually at every level.

    By contrast fn foo() -> Result<f64, Error> in rRst tell you the function may fail. You can inspect the error type if you want to handle it. But the true power of Result in Rust (and Option) is that you have a lot of ergonomic ways to handle the bad case and you are forced to plan for it so you cannot use a bad value thinking it’s good:

    You can do this in C++ https://en.cppreference.com/w/cpp/utility/expected (and as I said, if you feel so inclined, turn off exceptions entirely); it’s just not the “usual” way of doing things.



    1. It’s statically compiled and isn’t dependent on system binaries and won’t break if there if the system has the wrong version like C/C++, allowing you to distribute it as a single binary without any other installation steps

    You can do that with C++ too.

    1. Still produces fairly small binaries unlike languages like Java or C# (because of the VM)

    I mean, the jars are actually pretty small; but also I really don’t get the storage argument. I mean we live in a world where people happily download a 600 MB discord client.

    1. Is a modern language with a good build system (It’s like night and day compared to CMake)

    Meson exists … as do others.

    1. And I just like how the language works (errors as values etc.)

    Fair enough; though why? What’s wrong with exceptions?

    I work in a code base where I can’t use exceptions because certain customers can’t use exceptions, and I regularly wish I could because errors as values is so tedious.




  • I’m in my own house, notice the @social.packetlosss.gg; our “houses” are just talking and that continued conversation is subject to ruud’s and I’s discretion. The way federation works, really nobody “owns” the content, there’s just an agreement on what the primary copy is. There’s no support for this in the software currently, but you could conceptually change which server is the primary copy at any time. The protocol and to some extent the content on it exist in an intangible space.

    IMO all Reddit did was strengthen their legal argument; they arguably already had the right to make a “book of reddit poems.” They just wanted to stack the deck on their side. Arguably you have the right to make a book of poems on Reddit.



  • The law is largely down to who argues better in court. There is precedent for reduced rights in public spaces. e.g. if you go into the town square and talk to someone and it’s caught on the camera of the mother a park bench away that’s recording her child … that’s not an illegal recording and she has the copyright on said recording. You have no legal right to ask the mother to delete the recording or delete your audio from the recording, even in a two party consent space because you have no right to privacy in a public setting like that.

    Similarly, when you post on Lemmy … it’s kind of good faith that if you delete something it actually gets deleted from the platform across all instances and that it’s not just visibility deleted but deleted from the databases under the hood.

    You do “own your content” but it’s pretty meaningless ownership.


  • Yeah but there is a FOSS nature about it. At least ANYONE can do whatever they want with the comments and posts I make public instead of just whichever company pays reddit for API access.

    I mean… True; it’s just I wouldn’t characterize Lemmy as superior on privacy. Ideally we’d figure out a way to fix that, but I’m not sure we can really.

    And reddit has some legal jargon about co-owning the copyright to whatever you post over there but lemmy doesn’t so you technically have more protection here to your own intellectual property.

    This I’m not so sure about. You aren’t handing over ownership rights when you sign up for most (any?) instance, but your ownership right is effectively null and void.

    IANAL but arguably in a US court (at least) since Lemmy is effectively a true public place, you effectively lose the right to tell other people what they can do with your interactions.

    And privacy is a whole different can of worms as I don’t think ruud is harvesting telemetry to sell to advertisers and whatnot.

    That part is arguably true. It is harder to tie this data back to a particular user for the purposes of selling to advertisers.










  • Not really AFAIK. It’s a hard thing to create because … how do you stop people from just saying they have max levels and joining any other server with max levels (?)

    You can do the private server thing but the federation of them is where things get messy because different operators could set different rates of gain on different materials and have different standards on what’s considered cheating.

    If you don’t have that shared state… Arguably any game where you can host your own servers can be a federated mmo.