• 0 Posts
  • 153 Comments
Joined 1 year ago
cake
Cake day: June 21st, 2023

help-circle


  • Two thoughts come to mind for me:

    1. I think people should feel free to use any language however they want for their own needs and projects, but it’s also important to understand what exactly “unsound” and “undefined behavior” mean if you’re going to dabble with them. If it’s a risk you’re willing to take, go for it, but don’t be surprised if things break in ways that make no sense at all. Realistically a compiler won’t delete your root directory if you trigger UB or anything, but subtle bugs can creep in and change behaviors in ways that still run but which make unrelated code break in difficult to debug ways.
    2. The borrow checker is one of Rust’s biggest features, so looking for ways around it feels a bit counterproductive. Feature-wise, Rust has a lot of cool constructs around traits and enums and such, but the language and its libraries are built around the assumption that the guarantees the compiler enforces in safe code will always be true. These guarantees extend beyond the borrow checker to things like string representation and thread safety as well. As an alternative, some other languages (like C++, which you mentioned, or maybe even Zig) might be better suited for this approach to “dirty-but-works” development, and especially with C++, there are some excellent tools and libraries available for game development.













  • Anytime anyone mentions integrating an HTTP client into Rust’s std, all it takes is one good Python anecdote to shut that discussion right down.

    Having the standard library be stable and not try to add a bunch of support for changing standards is a long-term benefit to the language. Having “de-facto standard libs” with crates like url, http, etc ends up being better because they can evolve independently from the standard library, at the pace their respective domains evolve.

    Although, I suppose an argument could be made that url is unlikely to really evolve anymore.


  • Birdshot would do less harm for sure, but that doesn’t seem to be what the person in the article used:

    When this didn’t work, he went inside the home to retrieve his 9mm gun from a safe, came back out, and shot the drone, which was about 75 feet in the air at the time.

    Having been skeet shooting, that wouldn’t be nearly as bad to be hit by, but firing that off in a random neighborhood still has the potential to damage random people’s property and is horrifically irresponsible.

    Anyway, I was trying to emphasize that in no world is it acceptable to be firing live rounds in the sky, drone or not. I don’t see how shooting a gun into the sky in a neighborhood is worthy of anything less than felony, given the potential damage.


  • Discharging a firearm into the sky isn’t it. I don’t know if I’d classify this as being as bad as shooting at a passenger plane, but the gun probably won’t hit a plane 30k ft in the sky anyway, and the missed bullets/pellets (when you inevitably miss the plane or drone) will almost certainly kill someone if they fall on their head. I’d be disappointed if there wasn’t a felony charge for doing that.

    Whether the drones should be allowed is another question of course, but the potential collateral here can’t just be brushed off.


  • Some thoughts on the comments on Discord:

    I can understand most of the arguments against Discord, and there are some problematic communies on it of course, but I’m not sure I understand how using Discord over an alternative puts someone more at risk of exposure to those communities. People are free to join and leave servers at will, so is the issue that these servers built around FOSS projects have toxic communities? If so, how would being on any other platform solve this?

    Speaking from experience, just about all the servers I’m in have some kind of “no politics” rule, a very inclusive “be nice” rule, and a pronoun selector. Maybe it’s just the servers I join, but hate speech gets people banned pretty quickly.

    Anyway, there are plenty of arguments that can be made about discoverability, lack of control, privacy, and the non-FOSS nature of the platform to justify its presence on that list.