Just some Internet guy

He/him/them 🏳️‍🌈

  • 0 Posts
  • 27 Comments
Joined 2 years ago
cake
Cake day: June 25th, 2023

help-circle


  • The idea that GPT has a mind and wants to self-preserve is insane. It’s still just text prediction, and all the literature it’s trained on is written by humans with a sense of self preservation, of course it’ll show patterns of talking about self preservation.

    It has no idea what self preservation is, even then it only knows it’s an AI because we told it it is. It doesn’t even run continuously anyway, it literally shuts down after every reply and its context fed back in for the next query.

    I’m tired of this particular kind of AI clickbait, it needlessly scares people.


  • I don’t think you can, and I think it makes sense: it would be weird for the compiler to unexpectedly generate hidden variables for you.

    For all the compiler knows, the temporary variable could hold a file handle, a database transaction, a Mutex, or other side effects in their Drop implementation that would make when it’s dropped matter. Or it could just be a very large struct you might not expect to keep around until the end of the function (or even, the end of the program if that’s a main loop).

    So you should be aware of it, and thus you need the temporary variable like you did even if you just immediately shadow it. But at least you know you’re holding on to it until the end of the function.


  • We’ve been using vector rendering for decades, this isn’t new at all. This just makes it better because supposedly now it can be offloaded to the GPU.

    From the OS’s perspective it doesn’t care: it hands a rectangle to the application to render into along with some metadata like what scaling to render as. Then the application does what it needs to do to get the pixels in there.

    This would be handled entirely in Qt, in this case, but any competing toolkit can also implement something similar and all.


  • No but it does show how much capitalism relies on the absolute exploitation of the labor market and the double-standards from the US in that regard. Free market good but only when US companies are the ones fucking everyone over.

    • US companies buying cheap stuff from China and marking it up 500%: good, American values
    • China cuts the middleman and sells the same product for the same price they would sell it to the reseller: noooooo we can’t compete with that, China bad, it’s so unfair! Waaaaaaa

    At least the EU doesn’t constantly brag about muh freedom and how the free market is the best thing ever and you’re a commie if you don’t agree that capitalism is the best.



  • Using VirtualBox is also how you get the impression virtual machines are slow and heavy. It served us well but it’s essentially obsolete at this point.

    The virtio devices and drivers are much better overall and optimized for performance. VirtualBox is optimized to be user friendly and run most operating systems easily. It’s compatible but to do so, it relies a lot on emulating existing hardware. Virtio devices often rely on either shared memory for zero copy, or at least DMA and exposes higher level APIs. No point encoding and decoding SATA commands when you can just move raw data in and out of the VM.

    We also have hardware with native VM support, so multiple VMs can talk directly to the network without going through the host at all. VirtualBox can’t make use of those either, as it requires IOMMU and the same stuff that powers VFIO.

    KVM + QEMU is where it’s at. There’s also cloud-hypervisor which is supposed to be even better for cloud use cases.


  • It’s VMs. The overhead is not nearly as bad as you think it is, especially with the highly tuned cloud hypervisors. I’ve seen dual EPYC monsters running 300+ VMs. Server CPUs are basically designed for that kind of workload these days.

    Virtualization tech is really, really good. On my desktop, I have a VM that runs Windows+SteamOS with a passed through GPU, game on it and everything. You wouldn’t know it’s a VM. The overhead is so low that I just let it run in the background most of the time. When it’s idling it basically just occupies RAM. You can’t really feel the VM on the host either, everything is as responsive as usual. As long as there’s enough resources for everyone, you can barely tell it’s a VM or not.

    Modern CPUs have extensions to handle it at the processor level, and most operating systems have good paravirtualized devices, so there’s not a whole lot of overhead left other than the guest kernel and processes.




  • It all depends on how “finished” the project is, and how much it has to track a moving ecosystem.

    There’s a lot of crates that you can probably write once and be done with it. Like, a unit converter that’s not been updated since the first version of Rust is probably still just fine to use. A meter and a feet won’t change length anytime soon.

    Even a GTK app that’s not been updated in 5 years that might not be a problem at all as long as it compiles. Windows is full of apps that were written 30 years ago and are still shipped basically unchanged. The calculator and notepad were two examples until Windows 10/11.

    Another example: an FTP library or client. It’s basically a dead protocol at this point, so even if it’s not been updated in years, it’s likely fine and there’s not much to improve on.

    It really depends on what it does and how much the rest of the world around it is changing and how complete the code is already.


  • I have a dedicated server, so they can’t possibly overprovision that. Just load up the OS over IPMI and I manage the VMs and all. Been using them before AWS was a thing and couldn’t be bothered, I like having all the control I can. I have a nice /29 of clean IPs with it that I’ve owned for 8 years as well.

    OVH’s IPv6 is total ass though. Don’t even try, it’s essentially unusable especially if you want to use more than like 8 single IPs of your /56. The routers crap themselves and forget about the rest because it’s not a routed prefix, it sees it as if you have a single box claiming 8 IPs on itself.

    I’m not sure I would use their cloud offerings. Renting old baremetal from them for cheap is much more price effective, especially if you can snag it on sale. And it also reduces waste by stopping those old boxes from being trashed and putting them to good use.


  • Or better, unmetered. OVH might be a bit of a mess in many areas, but my server is unmetered. Doesn’t matter if a VM starts mining crypto or if I get DDoS’d or someome just wants to waste my bandwidth. Network can be pegged 24/7 for all I care, same price in the end.

    Hosting companies know they can make a lot of money with on demand pricing like that, and they love it because for the most part you can’t do anything about it. If this was a company and not an individual, and the CEO didn’t have pity, I’m sure they’d have tried their best to extract that 5k, maybe even 20k or whatever the sales representative thinks they can get out of you. It’s crazy how the discounts become plentiful when it’s obvious there’s no way you can pay it all.


  • I think they fear someone will make a browser that makes native apps less desirable.

    Google could wrap all the iOS widget, expose them to WASM and basically let people bypass the AppStore entirely and install everything as Chrome “apps”.

    Safari conveniently lacks a lot of the features that would compete with native apps in features, like refusing to implement WebPush until very recently.

    They don’t want web apps to even have a chance to compete with their AppStore. With Safari being the only allowed browser, they could make sure the browser is always less desirable than downloading the app.


  • Firefox is just a browser and has nothing to do with PWAs that require OS support.

    It does. PWAs are browser installed apps. On Android, they show up as independent icons with the Firefox logo on it:

    Lemmy icon as a Firefox PWA

    Those behave like independent apps, they have their own icon, their own entry in the app switcher, they’re full screen with no browser UI elements. Just a full screen web page. This has been possible for a long time on iOS too with Safari.

    It has nothing to do with sideloading. PWAs were a way to make web apps feel as close as possible to real apps as possible. Things like https://vger.app feels almost like native apps.

    Apple’s decided they’d rather get rid of it than let third party browsers be able to do that, as they can’t control how much those apps can do. Chrome can just make WASM really good and make native apps less necessary, and make the AppStore tax more avoidable, and they won’t let that happen.

    And Firefox does indeed also kinda suck in the PWA department, and have kind of soft-abandonned them, and they’re buggy. On Chrome, a good PWA can feel as good as native.




  • Code is not a human/lawyer readable policy, so if you access any sort of user data (and being a Discord bot that people interact with, you do), you’ll likely need one. At least for Discord’s legal purposes when you register the bot, I would assume.

    Play Store also requires one even if it’s open-source. They just blanket require one even if it literally says “this app is a wallpaper and it doesn’t even have internet access nor collect any data”.

    Big companies just can’t understand or picture that some apps are well behaved and don’t scrape every bit of data they can get their hands on.


  • Nope. I tried as a stopgap solution and it’s basically unusable. Literally unusable: sometimes after opening it from a deeplink from Google, the app can’t launch even after a force stop. It goes to a splash screen and calls itself “Popular” instead of Reddit, and the splash icon is some random community or user icon, and then crashes to home screen. No clearing cache gets you out of it, gotta clear data and sign in again. Not to mention, the horrible lag and slughishness.

    They can’t fix theirs so instead of competing fairly, they shut down the API so you have no other option.