• 6 Posts
  • 36 Comments
Joined 2 years ago
cake
Cake day: March 28th, 2025

help-circle



  • I’m sorry, but since we’re being pedantic, this is not a proof. It’s full of assumptions, some of which are wrong.

    5% is clearly better than 100%

    Never denied it. 0% is even better. What matters is where it’s used. If it’s used for FFI, that’s understandable. Any other use should be scrutinized more. And that’s the issue. The claim of Zig’s creator is that the devs of Bun are not reliable. And to me at least, his arguments make sense.

    it’s usual for Rust projects to use at least some unsafe

    Doesn’t seem like it. This article claims that only about 20% of Rust crates use unsafe at all. Even among those, the vast majority use it for FFI, which is kinda unavoidable.

    but somehow 5% isn’t

    Again, no one claimed that. But we need more than “better than 100%” when it’s a JS runtime. And the "better"ness isn’t necessarily linear. So, even though it might be technically “better”, it might not be by much. At that point, what even is the point of the rewrite?

    Again, I’m not claiming that it’s actually badly written. I’m only claiming that your arguments are not adequate, and that Bun is not a reliable company, so take whatever they claim with a grain of salt.




  • Fair enough. I’m not a professional programmer, so I guess I won’t understand your frustration with long term maintenance of Go code. I do agree that it can be unnecessarily verbose. Writing something as simple as an http server takes a long time. Also, the dependency management sucks. It can’t seem to decide if it wants to be declarative or not.

    I do like that it’s dead simple though, and that the standard library has most of the basic stuff. I’ve mostly replaced the need for Python with Go, for small CLI apps. Nowadays, I only use Python when I have to use some specific library, mostly for mathematical computing.



  • I don’t think there’s an std-way of doing it, but the Rust ecosystem has this thing where people usually settle around one library. In this case, it is tokio. Afaik, most async stuff is done using tokio. What little async I’ve used, it’s been using tokio or some library like actix-web that uses tokio under the hood.

    Also, side note, I never understood the idea of why golang is ugly. I think it’s fine, except for maybe the repeated if err != nil guards. Those are ugly. I wish it used additive types for error handling.












  • Thanks for your feedback.

    You just need an Immich API key, and run it from any machine from where you can reach your Immich instance. It does everything using the Immich API, so only a key with the proper permissions is needed. (I’ll add what the minimum required permissions are in the README.)

    Also, if you want to do it for many users, you don’t need them to run it on individual machines/accounts. You can create multiple config files, each with that user’s key, and pass it to the script via the --config flag.

    If running it for multiple users is a thing that people are interested in, I can add a way to supply an array of options in the config file, each belonging to one user.




  • I would highly recommend the Framework 13. I’ve had it for a bit more than a year now. The only problem I’ve faced was that the WiFi card was a bit unstable in EndeavourOS. But that was fixed by replacing wpa_supplicant with iwd. (I hear that it was only an issue for the AMD version, and that it’s fixed now.) Battery life is fine for me. I limit charging at 70%, and that usually lasts me the whole day.

    I love how Linux friendly it is. On my last laptop (an HP), it was pretty much impossible to upgrade the BIOS from inside Linux. Now it’s trivial. There’s also good support available when you face issues. (Both from Framework, and community members.) The hardware is pretty nice. I actually like how it’s MacBook-like, because it just looks nice in most settings. It’s portable too, I really hope they don’t make it bulkier like some folks here seem to demand.